Программа для нахождения НОК в Паскале. Объясните, пожалуйста строчки, помечанные цифрами. Заранее спасибо. var n,m:in...

Программа для нахождения НОК в Паскале. Объясните, пожалуйста строчки, помечанные цифрами. Заранее спасибо. var n,m:integer; i,k:integer; delitsya:boolean; 1. begin write('Vvedite N: '); readln(n); write('Vvedite M: '); readln(m); if (m<>0) and (n<>0) then begin k:=n*m; 2 i:=k; 3 while i>0 do 4 begin if (i mod n=0) and (i mod m=0) then 5 k:=i; 6 i:=i-1; 7 end; writeln('NOK ',m,' i ',n,' raven ',k) end else writeln('Na nol delit nelzya'); readln; end.
Гость
Ответ(ы) на вопрос:
Гость
delitsya:boolean; -  видимо переменная delitsya  типа boolean (значение 0 или 1) k:=n*m;  -  присваиваем переменной k значение произведения n*m i:=k;  - присваиваем переменной i значение переменной k  while i>0 do  - цикл, который будет выполняться пока значение i>0 if (i mod n=0) and (i mod m=0) then  - если остатки отделения i mod n и i mod m равны нулю, то выполняется 2 строчки ниже с присвоением k значения i и уменьшением i на 1 Ощущение, что программа написана криво, она вообще работает? 
Не нашли ответ?
Ответить на вопрос
Похожие вопросы