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.
Var a,b:integer; Begin Write('a = ');ReadLn(a); Write('b = ');ReadLn(b); if a mod b = 0 then WriteLn(b,' - делитель ',a) else WriteLn(b,' не является делителем ',a) End.
Вторая программа:
Var a,b:real; Begin WriteLn('a и b - катеты прямоугольного треугольника'); Write('a = ');ReadLn(a); Write('b = ');ReadLn(b); WriteLn('S = ',a*b/2); WriteLn('P = ',Sqrt(a*a+b*b)+a+b); End.
Пример работы программы:
a и b - катеты прямоугольного треугольника a = 3 b = 4 S = 6 P = 12
Примечание: программа не проверяет, существует ли треугольник и является ли он прямоугольным.
Третья программа:
Var a,b,c,D:real; Begin WriteLn('ax^2 +bx +c = 0'); Write('a = ');ReadLn(a); Write('b = ');ReadLn(b); Write('c = ');ReadLn(c); D:=b*b-4*a*c; if D < 0 then Write('Действительных корней нет') else Begin WriteLn('x1 = ',(-b-Sqrt(D))/(2*a)); WriteLn('x2 = ',(-b+Sqrt(D))/(2*a)); End End.
Четвёртая программа:
Var a,b,c:real; Begin Write('Введите три числа: ');ReadLn(a,b,c); a:=Abs(a-c); b:=Abs(b-c); if a < b then WriteLn('Первое число ближе к третьему') else if a > b then WriteLn('Второе число ближе к третьему') else WriteLn('Первое и второе число - одинаково близки к третьему') End.
Пример работы программы:
Введите три числа: 1 2 3 Второе число ближе к третьему
Введите три числа: 1 1 3 Первое и второе число - одинаково близки к третьему
Введите три числа: 2 1 13 Первое число ближе к третьему
1. У квадрата все стороны равны. Сумма всех углов в треугольнике равна 180 градусам.