Program zadacha;
var a: array[1..5] of integer;
max,min,i,nmax,nmin: integer;
begin
for i:=1 to 5 do
begin
write ('Ââåäèòå a[',i,']=');
readln (a[i]);
end;
max:=a[1];
min:=a[1];
nmax:=1;
nmin:=1;
for i:=1 to 5 do
begin
if a[i]>max then
begin
max:=a[i];
nmax:=i;
end;
if a[i]<min then
begin
min:=a[i];
nmin:=i;
end;
end;
for i:=1 to 5 do
begin
write (a[i],' ');
end;
writeln;
writeln ('Максимальный элемент равен ',max,', его номер ',nmax);
writeln ('Минимальный элемент равен ',min,', его номер ', nmin);
end.
А)
1-b:=a(b:=5.8)
2-a:=b(a:=5.8)
а:=5.8 b:=5.8
б)
1-b:=a(b:=0)
2-a:=b(a:=0)
а:=0 b:=0
110 (2)
12(8)=1010 (2) Складываем два двоичных числа , получаем ответ:10000(2)=20(8)=16(10)=10(16)
Var a,b,nod,k:integer;
begin
readln(a,b);
k:=0;
while (a<>0)and(b<>0) do
begin
if a>b then a:=a mod b else b:=b mod a;
k:=k+1;
end;
nod:=a+b;
writeln(nod,' ',k);
end.
Пример:
21 14
7 2
Все удачные наборы команд должны включать остановку на отметке 10 футов.
На отметку 1 фут робот может попасть с помощью одной команды A;
на отметку 2 фута - с помощью команд AA и B (всего 2 набора команд);
на отметку 3 фута - с помощью команд AAA, AB, BA и C (4 набора).
Так как за одну команду робот может переместиться на 1, 2 или 3 фута, то для подсчета количества наборов команд, позволяющих роботу попасть на отметки N > 3, можно использовать формулу
K(N) = K(N-1)+K(N-2)+K(N-3).
K(4) = K(3)+K(2)+K(1) = 4+2+1 = 7
K(5) = K(4)+K(3)+K(2) = 7+4+2 = 13
K(6) = K(5)+K(4)+K(3) = 13+7+4 = 24
K(7) = K(6)+K(5)+K(4) = 24+13+7 = 44
K(8) = K(7)+K(6)+K(5) = 44+24+13 = 81
K(9) = K(8)+K(7)+K(6) = 81+44+24 = 149
K(10) = K(9)+K(8)+K(7) = 149+81+44 = 274
Так как вторая часть пути робота также имеет длину 10, то общее количество удачных наборов команд = 274*274 = 75076