Вычисления в цикле - Pascal

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

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

нужно вычислить, с помощью цикла: sqrt(2+sqrt(4+sqrt(6....+sqrt(n))))) -- пользователь сам вводит n. sqrt -- знак корня ))) заранее благодарна

Решение задачи: «Вычисления в цикле»

textual
Листинг программы
uses crt;
var n:integer;
    y:real;
begin
clrscr;
repeat
write('Введите четное натуральное число n=');
readln(n);
until(n>=2)and(n mod 2=0);
y:=sqrt(n);
while n>2 do
 begin
  n:=n-2;
  y:=sqrt(y+n);
 end;
write('y=',y:0:3);
readln
end.

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

  1. Используется процедура clrscr для очистки экрана.
  2. Переменная n инициализируется типом integer.
  3. Переменная y инициализируется типом real.
  4. Запускается цикл repeat-until, который будет выполняться до тех пор, пока пользователь не введет число n, большее или равное 2 и кратное 2.
  5. Внутри цикла выводится сообщение с просьбой ввести число n.
  6. Введенное значение числа n считывается в переменную n с помощью процедуры readln.
  7. После выхода из цикла repeat-until, программа переходит к вычислению значения переменной y, которое равно квадратному корню из числа n.
  8. Запускается цикл while, который будет выполняться до тех пор, пока значение переменной n больше 2.
  9. Внутри цикла значение переменной n уменьшается на 2.
  10. Значение переменной y обновляется как квадратный корень из суммы значения переменной y и уменьшенного на 2 значения переменной n.
  11. После выхода из цикла while, выводится сообщение с результатом вычислений, где значение переменной y округляется до трех знаков после запятой.
  12. Программа ожидает нажатия клавиши для завершения работы.

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


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

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

6   голосов , оценка 4 из 5
Похожие ответы