Решите задачу У исполнителя Альфа две команды, которым присвоены номера: 1. прибавь 1 2. умножь на Б (b - неизвестное натуральное число;b> 2) Выполняя первую из них, Альфа увеличивает число на экране на 1, а выполняя Вторую, умножает это число на b. Известно, что программа 111211 переводит число 4 в число 86. Определите значение b.
Program msdos_2;
uses crt;
var
a:array[1..3] of integer; //массив трёх максимальных элементов
r,max,i,j: integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
r:=1;
writeln('Введите ненулевое число');
writeln('(или введите 0 для конца последовательности) ');
{вводим 3 первых элемента}
for i:=1 to 3 do
begin
write('Ввод:');
readln (r);
a[i]:=r;
end;
{сортируем массив из 3-х первых элементов}
for i:=1 to 2 do
begin
max:=a[i];
for j:=i+1 to 3 do
if a[j]>max then
max:=a[j];
a[j]:=a[i];
a[i]:=max;
end;
{Продолжаем ввод и сравниваем текущее число с массивом из 3-х первых}
while r<>0 do
begin
write('Ввод:');
readln (r);
if r>a[1] then
begin
a[3]:=a[2];
a[2]:=a[1];
a[1]:=r;
end
else
if r>a[2] then
begin
a[3]:=a[2];
a[2]:=r;
end
else
if r>a[3] then
a[3]:=r;
end;
{выводим 3 максимальных элемента}
writeln();
writeln('Три наибольших элемента массива:');
for i:=1 to 3 do
writeln(i,'-й: ',a[i]);
end.
Проверено на Паскале АВС:
Program byalodenis;
uses crt;
const n=10;
var
e:array[1..n] of integer;
min,max,i: integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln();
writeln('Элементы массива:');
randomize;
e[1]:=random(100)-50;
write (e[1]:5);
max:=e[1];
min:=e[1];
for i:=2 to n do
begin
e[i]:=random(100)-50;
write (e[i]:5);
if e[i]>max then
max:=e[i];
if e[i]<min then
min:=e[i];
end;
writeln();
writeln('Сумма максимального и минимального элементов равна ',max+min);
end.