Pascal ABC/Написать функцию принимающую значение True, если буквы строки упорядочены по алфавиту
10-11 класс
|
function Test(word:string): boolean
program D1KPxx8;
uses crt;
var
s,b:string;
c:boolean;
i,k,n:integer;
begin
c:=false;
s:='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя';
read(b);
k:=0;
repeat
inc(k);
begin
if s[k]=b[1] then
begin
break;
end;
end;
until k>length(s);
n:=length(b);
for i:=1 to n do
begin
if s[k]=b[i] then
begin
c:=true;
end
else c:=false;
inc(k);
end;
write(c);
if c=true then
halt
else
if c=false then
halt;
writeln('false');
end.
Функцию обязательно?!
так вроде сделал))) правда с велосипедами и без функции)))
обязательно функцию
Другие вопросы из категории
X(2) - то же для массива Q;
X(3) - то же для массива P.
Вычисление суммы элементов массива, значения которыхлежит в интервале [2;4], оформить в виде подпрограммы.
PascalABC
Вот такие задачи нам задают.Прошу помощи.Заранее спасибо =)
Дана строка, содержащая слова, разделенные одним пробелом. Напечатать все слова, отличные от последнего слова.
F(x)={x^3-3x8 если х<=1
{1/(x^3-3x8) если х>1
формул языка Pascal сделать так, чтобы случайные числа выпадали в интервале (a;b)
Читайте также
2. написать программу, вычисляющую значение функции (y=f(x))
y=x-2, если x>0,
y=0, если x=0,
y=x*x, если x<0
отрицательных элементов окажется больше, чем во втором, и значение FALSE в противном случае. Использовать такую процедуру для массивов: R = (0; 0.005; -0.02; -87.5; 50) W = (45; 721.5; 8.63; -76.97; 3)
C.Р.О.Ч.Н.О.
100. Назовите все отличия функций от процедур?
а) функция передает в точку вызова скалярное значение, а процедура - нет
б) имя процедуры может состоять из трех символов, а функция - нет
в) процедура имеет структуру, повторяющую структуру программы, а в функции отсутствует блок описания переменных
г) имя функции может входить в выражении как операнд
101. С помощью каких параметров происходит передача данных из главной программы в подпрограмму?
а) фактических
б) формальных
в) неформальных
г) подпрограммных
102. Выберите неправильную форму записи оператора цикла
а) WHILE I<5 DO I:=I+1
б) WHILE I<5 DO BEGIN I:=I+1; WRITELN(I); END
в) WHILE I<5 TO BEGIN I:=I+1; WRITELN(I); END
103. Какое выражение обеспечивает генерирование случайных чисел в диапазоне [4,10[
а) 4+RANDOM(6)
б) 6+RANDOM(4)
в) RANDOM(4,6)
104. что означает FV в команде read(FV, x1, x2,..., xn) в Паскале ?
а) формат ввода
б) переменную, связанную с файлом, откуда берется информация
в) фиксированную величину
г) первую переменную величину для ввода информации
105. Каким окажется результат выполнения следующего фрагмента кода X:= 5; Y:= X+1; Writeln('Х=',X, Y=',Y);?
а) X=6 Y=5
б) X=5 Y=5
в) X=5 Y=6
106. Какое значение примет переменная Х после выполнения команды X:=SQR(4)/2*2?
а) 4
б) 2
в) 16
107. Каким окажется результат выполнения следующего фрагмента кода: X:= 5; Y:= 8; Т:= Х; X:=Y; Y:= T; Writeln('Х=', X, Y=',Y);?
а) X=5 Y=8
б) X=8 Y=5
в) X=5 Y=5
108. Логическое выражение
(N Mod 10 Mod 2) Or (N Div 10 Mod 10 Mod 2 = 0) Or (N Div 100 Mod 2 = 0)
должно принимать значение TRUE тогда и только тогда, когда истинно высказывание
а) в трёхзначном натуральном числе все цифры чётные
б) в трёхзначном натуральном числе одна чётная цифра
в) в трёхзначном натуральном числе две чётных цифры
г) в трёхзначном натуральном числе хотя бы одна чётная цифра
109. Цикл в фрагменте программы P := 4; Repeat P := P * 0.1 Until P < 0.0001; будет исполнен?
а) 0 раз
б) 1 раз
в) 4 раза
г) 5 раз
110. Значение R после выполнения операции логического присваивания
R := Not (A Or B Or (X > 2) And (Y < 0))
при A = False, B = False, X = 3, Y = 2 будет равно
а) -1
б) False
в) True
г) 0
111. Значения переменных a и b после выполнения следующих действий
a := 15 Div (16 Mod 7); b := 34 Mod a * 5 - 29 Mod 5 * 2;
будут равны
а) a = 1, b = 160
б) a = 1, b = 4
в) a = 7, b = 25
г) a = 7, b = 22
112. Во фрагмент алгоритма, печатающий все двузначные числа, в записи которых есть цифра N или сумма цифр которых равна самим числам, нужно вписать логическое выражение
а) (P1 = N) Or (P2 = N) And (S = K)
б) (P1 = N) Or (P2 = N) Or (S = K)
в) (P1 = N) And (P2 = N) Or (S = K)
г) ((P1 = N) Or (P2 = N)) And (S = K)
113. Тело цикла в программе a := 1; b := 1; While a + b < 8 Do begin a := a + 1; b := b + 2 end;
выполнится?
а) 1 раз
б) 2 раза
в) 3 раза
г) бесконечное число раз
114. Задана строка St (см Фрагмент алгоритма)
а) определяет количество цифр в строке
б) подсчитывает количество нулей в строке
в) определяет сумму номеров позиций в строке, где стоят цифры
г) подсчитывает сумму цифр в строке;
115. Задан двумерный массив X[1..n, 1..m]. Процедура
а) к элементам столбцов в первой половине матрицы прибавляет элементы первого столбца соответствующей строки
б) добавляет к матрице еще M столбцов с элементами, равными соответствующим элементам первого столбца
в) к элементам четных столбцов прибавляет элементы первого столбца соответствующей строки
г) к элементам четных строк прибавляет элементы первой строки соответствующего столбца;
116. Задан двумерный массив X[1..n, 1..m]. Функция возвращает значение
а) True, если все элементы массива ненулевые
б) True, если в массиве есть элемент, равный нулю
в) False, если в массиве есть элемент, равный нулю
г) Not t;
117. Значение R после выполнения операции логического присваивания
R := Not (A Or B Or (X > 2) And (Y < 0))
при A = False, B = False, X = 3, Y = 2 будет равно
а) 1
б) False
в) True
г) 0
118. В каком фрагменте программы подсчитывается сумма элементов квадратной матрицы, расположенных выше главной диагонали?
а) For i:= 1 to n do
For j:= 1 to n do
If i<=j then
S:=s+a[I,j];
б) For i:= 1 to n do
For j:= i+1 to n do
S:=s+a[I,j];
в) For i:= 1 to n do
For j:= 1 to n do
If i>j then
S:=s+a[I,j];
среди чисел a,b,c есть хотя бы 1 пара взаимно противоположных чисел