Нахождение делителей целого числа на Pascal


Задача: найти делители целого числа на программе Pascal

program vicdiv;
var
x,half,divider,i: integer;
begin
repeat
writeln ('введите число больше нуля: ');
readln (x);
if x<=0 then writeln ('неправильный ввод'); until x>0;
half:=x div 2;
divider:=2;
i:=0;
while divider<=half do begin if x mod divider =0 then begin inc(i); writeln (i, ' делитель равен: ',divider); end; inc(divider); end; if i=0 then writeln ('делителей нет'); writeln ('конец решения') end

Пояснения
1. В программе предусмотрена аномальная ситуация: повторный ввод числа, в случае неправильного ввода при x<=0. 2. Операция x mod divider определяет остаток от деления целого числа x на divider. 3. Обращение к процедуре inc(i) эквивалентно оператору i:=i+1.


Комментарии запрещены.




Статистика