Var A,d,k,i:longint; Begin WriteLn('Введите четыре числа'); For i:= 1 to 4 do Begin Read(A); Write('Делители числа ',A,': ',A,', '); d:=A div 2+1; While d>0 do Begin if A mod d = 0 then Begin Write(d,', '); k:=k+1; End; d:=d-1; End; Write('кол-во его делителей: ',k); k:=1; WriteLn; End; End.
Пример: Введите четыре числа 987654321 32767 256 13 Делители числа 987654321: 987654321, 329218107, 109739369, 58097313, 19365771, 6455257, 3417489, 1139163, 379721, 2601, 867, 289, 153, 51, 17, 9, 3, 1, кол-во его делителей: 17 Делители числа 32767: 32767, 4681, 1057, 217, 151, 31, 7, 1, кол-во его делителей: 8 Делители числа 256: 256, 128, 64, 32, 16, 8, 4, 2, 1, кол-во его делителей: 9 Делители числа 13: 13, 1, кол-во его делителей: 2
<блок начало> Начало
<блок ввода данных> Ввести А, B </блок>
<блок действия> C:=(A+B)/2 </блок>
<блок дествия> D:=2*A*B</блок>
<блок проверки условия> A<b?</блок>
<если да>
<блок действия> A:=C</блок>
<блок дествия>B:=D</блок>
</если>
<если нет>
<блок действия> B:=C</блок>
<блок дествия>A:=D</блок>
</если>
<блок вывода>Вывести A,B<блок вывода>
<блок конца>Конец </блок>
A,d,k,i:longint;
Begin
WriteLn('Введите четыре числа');
For i:= 1 to 4 do
Begin
Read(A);
Write('Делители числа ',A,': ',A,', ');
d:=A div 2+1;
While d>0 do
Begin
if A mod d = 0 then
Begin
Write(d,', ');
k:=k+1;
End;
d:=d-1;
End;
Write('кол-во его делителей: ',k);
k:=1;
WriteLn;
End;
End.
Пример:
Введите четыре числа
987654321 32767 256 13
Делители числа 987654321: 987654321, 329218107, 109739369, 58097313, 19365771, 6455257, 3417489, 1139163, 379721, 2601, 867, 289, 153, 51, 17, 9, 3, 1, кол-во его делителей: 17
Делители числа 32767: 32767, 4681, 1057, 217, 151, 31, 7, 1, кол-во его делителей: 8
Делители числа 256: 256, 128, 64, 32, 16, 8, 4, 2, 1, кол-во его делителей: 9
Делители числа 13: 13, 1, кол-во его делителей: 2