Написать программу которая вычисляет наибольший общий делитель двух целых чисел паскаль

Вопрос по информатике:

Написать программу, которая вычисляет наибольший общий делитель двух целых чисел
Паскаль

Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?

Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок — бесплатно!

  • bookmark_border
  • 23.03.2018 16:30
  • Информатика
  • remove_red_eye 2180
  • thumb_up 7
Ответы и объяснения 1

retheak696

Var a, b: integer;
begin
Writeln(‘Введите два числа’);
Readln(a, b);
repeat
if a > b then a := a Mod b else
b := b Mod a;
until (a = 0) Or (b = 0);
writeln(‘НОД = ‘, a + b);
end.

  • 24.03.2018 13:35
  • thumb_up 37
Знаете ответ? Поделитесь им!

Как написать хороший ответ?

Чтобы добавить хороший ответ необходимо:

  • Отвечать достоверно на те вопросы, на которые знаете правильный ответ;
  • Писать подробно, чтобы ответ был исчерпывающий и не побуждал на дополнительные вопросы к нему;
  • Писать без грамматических, орфографических и пунктуационных ошибок.

Этого делать не стоит:

Практикум Pascal. Урок 7: Задача № 12. Наибольший общий делитель

  • Копировать ответы со сторонних ресурсов. Хорошо ценятся уникальные и личные объяснения;
  • Отвечать не по сути: «Подумай сам(а)», «Легкотня», «Не знаю» и так далее;
  • Использовать мат — это неуважительно по отношению к пользователям;
  • Писать в ВЕРХНЕМ РЕГИСТРЕ.
Есть сомнения?

Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.

Трудности с домашними заданиями? Не стесняйтесь попросить о помощи — смело задавайте вопросы!

Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.

Читайте также:
Как остановить программу стирки на стиральной машинке бош

Источник: online-otvet.ru

Написать программу, которая вычисляет наибольший общий делитель двух целых чисел Паскаль

Получи верный ответ на вопрос «Написать программу, которая вычисляет наибольший общий делитель двух целых чисел Паскаль . » по предмету Информатика, используя встроенную систему поиска. Наша обширная база готовых ответов поможет тебе получить необходимые сведения!

Новые вопросы по информатике
Напиши обратные действия. Снять — Открыть — Прилететь —
Перевести число 2-чной системы счисления в 10-чную: 1110000/2, 10001101/2
Какими знаками можно обозначить на письме звонкий и глухой удары в барабан?

1) В поезде 17 вагонов, 10-17-купейные, остальные-плацкарт. Ввести № вагона. напечатать вид. 2) Ввести 2 числа. Напечатать их частное или сообщить, что на 0 делить нельзя

Товар стоит a руб. b коп. За него заплатили c руб. d коп. Сколько сдачи требуется получить? программа паскаль

Pascal ABC#6.1 Пишем программу для нахождения наибольшего общего делителя для двух чисел

Главная » Информатика » Написать программу, которая вычисляет наибольший общий делитель двух целых чисел Паскаль

Источник: 4i5.ru

Найти наибольший общий делитель двух натуральных чисел

Формулировка. Даны два натуральных числа. Найти их наибольший общий делитель.

Примечание: наибольшим общим делителем (сокращенно пишут НОД) двух натуральных чисел m и n называется наибольший из их общих делителей. Обозначение: НОД(m, n).

Примечание 2: общим делителем двух натуральных чисел называется натуральное число, на которое натуральное число, которое является делителем обоих этих чисел.

Например, найдем НОД(12, 8):

Выпишем все делители числа 12: 1, 2, 3, 4, 6, 12;

Выпишем все делители числа 8: 1, 2, 4, 8;

Выпишем все общие делители чисел 12 и 8: 1, 2, 4. Из них наибольшее число – 4. Это и есть НОД чисел 12 и 8.

Читайте также:
Программа браузер Internet Explorer является

Решение. Конечно, при решении мы не будем выписывать делители и выбирать нужный. В принципе, ее можно было бы решить как задачу 15, начав цикл с наименьшего из двух заданных чисел (так как оно тоже может быть НОД, например, НОД(12, 4) = 4). Но мы воспользуемся так называемым алгоритмом Евклида нахождения НОД, который выведен с помощью математических методов. В самом простейшем случае для заданных чисел m и n он выглядит так:

1) Если m неравно n, перейти к шагу 2, в противном случае вывести m и закончить алгоритм;

2) Если m > n, заменить m на m – n, в противном случае заменить n на n – m;

Как видим, в шаге 2 большее из двух текущих чисел заменяется разностью большего и меньшего.

Приведем пример для чисел 12 и 8:

  1. Так как 12 > 8, заменим 12 на 12 – 8 = 4;
  2. Так как 8 > 4, заменим 8 на 8 – 4 = 4;
  3. 4 = 4, конец.

Не проводя каких-либо рассуждений над алгоритмом и не доказывая его корректности, переведем его описание в более близкую для языка Pascal форму:

Алгоритм на естественном языке:

1) Ввод m и n;

2) Запуск цикла с предусловием m n. В цикле:

3) Вывод m:

Код:

  1. program GreatestCommonDiv;
  2. var
  3. m, n: word;
  4. begin
  5. readln(m, n);
  6. while m <> n do begin
  7. if m > n then begin
  8. m := m — n
  9. end
  10. else begin
  11. n := n — m
  12. end
  13. end;
  14. writeln(m)
  15. end.

Источник: pascalzadachi.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru