program raf105;
var a,b,c:integer;
begin
write('Введите 3 числа: ');
readln(a,b,c);
if (a<b) and (a<c)
then writeln('Произведение 2 наибольших чисел: ',b*c);
if (b<a) and (b<c)
then writeln('Произведение 2 наибольших чисел: ',a*c);
if (c<b) and (c<a)
then writeln('Произведение 2 наибольших чисел: ',b*a);
end.
2.а)program raf105;
var a,i,b:integer;
begin
write('Введите число: ');
readln(a);
for i:=1 to a do
if ((a mod i)=0) and ((i mod 2)<>0)
then b:= b+i;
writeln('Сумма нечётных делителей введённого числа: ',b);
end.
б)program raf105;
var a,a2,i,j,b:integer;
begin
write('Введите меньшее число: ');
readln(a);
write('Введите большее число: ');
readln(a2);
for j:=a to a2 do
begin
for i:=1 to j do
if ((j mod i)=0) and ((i mod 2)<>0)
then b:= b+i;
writeln('Сумма нечётных делителей числа ',j,' равна: ',b);
b:= 0;
end;
end.
Язык программирования PascalABC
Применим этот принцип:
Количество вариантов как попасть в какое-то состояние равно сумме количеств вариантов как попасть в предыдущие состояния.
Например вариантов попасть на первую ступеньку -1, на вторую - 2 и т.д.
var i,n : Integer;
a : array [1..20] of integer;
begin
n:=20;
a[1]:=1; a[2]:=2;
for i:=3 to n do
a[I] := a[i-1] + a[i-2];
writeln(a[n]);
end.
ответ