function summdel(x:integer):integer; //результат - сумма делителей х var k,sum:integer; begin sum:=0; for k := 1 to x div 2 + 1 do if x mod k = 0 then sum:= sum+k; summdel:=sum; end;
begin writeln('Введите границы a,b '); readln(a,b); maxsumm := 1; max := 1; for i := a to b do begin if summdel(i) > maxsumm then begin maxsumm:= summdel(i); max := i; end; end; writeLn('Максимальная сумма делителей - ', maxsumm, ' число - ',max) end.
ОК, всё это циклы. 1) Цикл for (цикл с счётчиком), при этом при каждом шаге цикла счётчик увеличивается на 1. Пример: for a:=1 to 10 do //Цикл будет выполнен 10 раз 2) Цикл for (цикл с счётчиком), при этом при каждом шаге цикла счётчик уменьшается на 1. Пример: for a:=10 to 1 do //Цикл будет выполнен 10 раз 3)Цикл с постусолвием. Если условие не выполняется, выполняется цикл. Его особенность заключается в том, что цикл выполнится хотя бы один раз вне зависимости от условия. Пример: k:=0; repeat inc(k); until k<9 //10 раз 4)Цикл с предусловием. Пока условие выполняется, выполняется и цикл. Пример: k:=0; while k<>10 do inc(k); //10 раз
var a,b, I, maxsumm, max : integer;
function summdel(x:integer):integer; //результат - сумма делителей х
var k,sum:integer;
begin
sum:=0;
for k := 1 to x div 2 + 1 do
if x mod k = 0 then sum:= sum+k;
summdel:=sum;
end;
begin
writeln('Введите границы a,b ');
readln(a,b);
maxsumm := 1;
max := 1;
for i := a to b do
begin
if summdel(i) > maxsumm then
begin maxsumm:= summdel(i);
max := i;
end;
end;
writeLn('Максимальная сумма делителей - ', maxsumm, ' число - ',max)
end.
1) Цикл for (цикл с счётчиком), при этом при каждом шаге цикла счётчик увеличивается на 1. Пример:
for a:=1 to 10 do //Цикл будет выполнен 10 раз
2) Цикл for (цикл с счётчиком), при этом при каждом шаге цикла счётчик уменьшается на 1. Пример:
for a:=10 to 1 do //Цикл будет выполнен 10 раз
3)Цикл с постусолвием. Если условие не выполняется, выполняется цикл. Его особенность заключается в том, что цикл выполнится хотя бы один раз вне зависимости от условия. Пример:
k:=0;
repeat
inc(k);
until k<9 //10 раз
4)Цикл с предусловием. Пока условие выполняется, выполняется и цикл.
Пример:
k:=0;
while k<>10 do
inc(k); //10 раз