Найти НОД чисел. - Turbo Pascal
Формулировка задачи:
Даны два числа ,разделенных пробелом. Найти НОД этих чисел.. Программа должна быть универсальна для любых двух чисел.
Решение задачи: «Найти НОД чисел.»
textual
Листинг программы
uses crt; var a,b,d:integer; s:string; begin clrscr; writeln('Введите 2 целых числа через пробел'); readln(s); val(copy(s,1,pos(' ',s)-1),a,d); if d<>0 then write('Строка введена неверно, повторите') else begin delete(s,1,pos(' ',s)); val(s,b,d); if d<>0 then write('Строка введена неверно, повторите') else begin repeat if abs(a)>abs(b) then a:=a mod b else b:=b mod a; until(a=0)or(b=0); write('Нод=',abs(a+b)); end; end; readln end.
Объяснение кода листинга программы
- В начале кода подключается библиотека crt, которая содержит функции для работы с числами и строками.
- Переменные a, b и d объявлены как целочисленные.
- Строка вводится пользователем и сохраняется в переменной s.
- Функция val используется для преобразования строки в целое число. Если строка не может быть преобразована в число, выводится сообщение об ошибке.
- Если строка была введена неверно, выводится сообщение об ошибке.
- Если строка была введена правильно, вычисляется наибольший общий делитель (НОД) чисел a и b.
- Если a больше b, то a делится на b, иначе b делится на a.
- Цикл повторяется до тех пор, пока одно из чисел не станет равным нулю.
- Когда одно из чисел становится равным нулю, вычисляется НОД.
- Выводится сообщение с результатом.
- Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д