12>10,но 12<12 неверно, значит
n:=12-1
что равно 11
1шаг алгоритма.
а) <span>записывается исходная цепочка символов, после нее записывается исходная цепочка символов в обратном порядке
КОМ+МОК = КОММОК
б) </span><span>затем записывается буква, следующая в русском алфавите за той буквой, которая в исходной цепочке стояла на последнем месте
(за буквой М в русском алфавите следует буква Н)
КОММОК+Н = </span>КОММОКН<span>
2 шаг алгоритма.
</span>а) записывается исходная цепочка символов, после нее записывается исходная цепочка символов в обратном порядке
КОММОКН+НКОММОК = КОММОКННКОММОК
б) затем записывается буква, следующая в русском алфавите за той буквой, которая в исходной цепочке стояла на последнем месте
(за буквой Н в русском алфавите следует буква О)
КОММОКННКОММОК+О = КОММОКННКОММОКО
Ответ: количество букв О в полученной последовательности = 5
Var n:integer;
begin
write('n = ');
readln(n);
writeln('цифры числа:');
writeln(n div 10);
writeln(n mod 10);
end.
Пример:
n = 38
цифры числа:
3
8
\%SystemRoot\%/system32/rundll32 user32, SwapMouseButton >default
PascalABC.NET
-----------------------------
var
a: array[1..10000] of integer;
kz,maxp,n,i,j: integer;
begin
i:=0;
maxp:=integer.MinValue;
writeln ('Готов к приему чисел');
repeat
i:=i+1;
readln (a[i]);
until a[i]=0;
n:=i-1;
readln (kz);
for i:=1 to n-1 do
for j:=2 to n do
if maxp<(a[i]*a[j]) then maxp:=(a[i]*a[j]);
writeln ('Получено ',n,' чисел');
writeln;
writeln ('Полученное контрольное значение: ',kz);
writeln;
writeln ('Вычисленное контрольное значение: ',maxp);
writeln;
if kz=maxp
then writeln ('Контроль пройден')
else writeln ('Контроль не пройден');
end.
--------------------------------------
Результаты:
1)
Готов к приему чисел
1 2 3 4 5 0 20
Получено 5 чисел
Полученное контрольное значение: 20
Вычисленное контрольное значение: 20
Контроль пройден
2)
Готов к приему чисел
1 2 3 4 5 6 0 20
Получено 6 чисел
Полученное контрольное значение: 20
Вычисленное контрольное значение: 30
Контроль не пройден