Найти НОД длинного числа - Pascal ABC
Формулировка задачи:
Ребят, в чём дело?
Вот эта программа выводит "da"
И эта программа тоже выводит "da"
Решение задачи: «Найти НОД длинного числа»
textual
Листинг программы
var n,n1:string; f:boolean; k:integer; begin n:='421'; n1:='1211'; if length(n)<>length(n1)then f:=length(n)>length(n1) else begin f:=true; k:=1; while (k<=length(n))and(n[k]=n1[k])do inc(k); if (k<=length(n))then f:=n[k]>n1[k]; end; if f then writeln('da') else writeln('net'); end.
Объяснение кода листинга программы
- Переменные n и n1 объявлены как строки.
- Флаг f и переменная k объявлены как boolean и integer соответственно.
- Значения переменных n и n1 присвоены строковые значения '421' и '1211'.
- В условном операторе if проверяется условие: если длина переменной n отличается от длины переменной n1, то переменная f устанавливается в значение true, иначе в значение false.
- В цикле while происходит сравнение символов в строках n и n1. Если символы совпадают, то переменная k увеличивается на 1. Цикл продолжается до тех пор, пока не будет найден символ, который не совпадает в обеих строках.
- После цикла while переменная f устанавливается в значение true, если была найдена такая последовательность символов, и в значение false в противном случае.
- В зависимости от значения переменной f выводится строка 'da' или 'net'.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д