Найти тройку последовательных натуральных чисел - Pascal

Узнай цену своей работы

Формулировка задачи:

Даны натуральные числа N и M. Найти тройку последовательных натуральных чисел на промежутке [1; M], произведение которых равна N. Предусмотреть ответ "последовательность не найдена".

Решение задачи: «Найти тройку последовательных натуральных чисел»

textual
Листинг программы
  1. var n, m, k: integer;
  2. begin
  3.   repeat
  4.     write('n > 0; n = ');
  5.     readln(n)
  6.   until n > 0;
  7.   repeat
  8.     write('m > 0; m = ');
  9.     readln(m)
  10.   until m > 0;
  11.   k := round(exp(ln(n) / 3));
  12.   if (k + 1 > m) or ((k - 1) * k * (k + 1) <> n)
  13.     then write('Последовательность не найдена')
  14.     else write(k - 1, ' * ', k, ' * ', k + 1, ' = ', n);
  15.   readln
  16. end.

Объяснение кода листинга программы

  1. Объявляются три целочисленные переменные n, m и k.
  2. Вводится значение переменной n с помощью цикла repeat...until, при этом выводится приглашение n > 0; n =.
  3. Повторяется ввод m с помощью цикла repeat...until, при этом выводится приглашение m > 0; m =.
  4. Вычисляется значение переменной k как округленное значение от деления логарифма n на 3.
  5. Проверяется условие: если значение k + 1 больше m ИЛИ произведение (k - 1) * k * (k + 1) не равно n, выводится сообщение Последовательность не найдена.
  6. Иначе выводится сообщение, состоящее из значений переменных k - 1, k, k + 1 и n, разделенных звездочками и равно.
  7. Программа ожидает ввода пользователя и завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы