Сумма дробей - Pascal ABC

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

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

Задано вещественное число X. Напишите программу, которая находит такое максимальное число N, что а также минимальное число M, что Погрешность при вычислениях не должна превосходить ε = 10-6. X (1 < X ≤ 13). Выведите два натуральных числа N и M.

Решение задачи: «Сумма дробей»

textual
Листинг программы
var x: real;
    i: integer;
begin
  repeat
    write('1 < X <= 13;  X = ');
    readln(x)
  until (1 < x) and (x <= 13);
  i := 0;
  while x > 0 do
    begin
      inc(i);
      x := x - 1 / i
    end;
  write('N = ', i - 1, ', M = ');
  if x = 0 then inc(i);
  writeln(i);
  readln
end.

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

  1. Переменная x объявлена как real, что означает, что она может хранить десятичные числа.
  2. Переменная i объявлена как integer, что означает, что она может хранить целые числа.
  3. В цикле repeat-until выполняется чтение значения переменной x с помощью функции readln.
  4. Затем значение переменной x сравнивается с диапазоном от 1 до 13 с помощью операторов AND и сравнения меньше (<).
  5. Если условие истинно, то цикл повторяется.
  6. Переменная i инициализируется значением 0.
  7. Затем начинается цикл while, который выполняется до тех пор, пока значение переменной x больше 0.
  8. Внутри цикла переменная i инкрементируется (увеличивается на 1).
  9. Значение переменной x уменьшается на 1/i.
  10. После выхода из цикла while выводится значение переменной i.
  11. Выводится также значение переменной N и M, если значение переменной x равно 0.
  12. Выводится значение переменной i с помощью функции write.
  13. Выполняется чтение с помощью функции readln.

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


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

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

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