Вычислить произведение ряда - Free Pascal (591)
Формулировка задачи:
помогите пожалуйста составить программу с использованием всех операторов цикла. (В одной программе решить задачу тремя способами)
Ввести действительное х и вычислить:
(x-1)(x-3)(x-7)...(x-63)/(x-2)(x-4)(x-8)...(x-64)
Решение задачи: «Вычислить произведение ряда»
textual
Листинг программы
uses crt; var x,y:real; i,p:integer; begin clrscr; write('x='); readln(x); p:=1; y:=1; for i:=1 to 6 do begin p:=p*2; if x=p then begin write('y не определено, деление на 0'); readln; exit end; y:=y*(x-p-1)/(x-p); end; writeln('for=',y:0:2); p:=1; y:=1; i:=1; while p<64 do begin p:=p*2; if x=p then begin write('y не определено, деление на 0'); readln; exit end; y:=y*(x-p-1)/(x-p); end; writeln('while=',y:0:2); p:=1; y:=1; i:=1; repeat p:=p*2; if x=p then begin write('y не определено, деление на 0'); readln; exit end; y:=y*(x-p-1)/(x-p); until p=64; writeln('repeat=',y:0:2); readln end.
Объяснение кода листинга программы
- Ввод значения переменной
x
с помощью функцииreadln()
. - Инициализация переменных
p
иy
со значениями 1. - Использование цикла
for
для вычисления значения переменнойy
в диапазоне от 1 до 6 (не включая 6). - Внутри цикла проверка на деление на ноль при равенстве
x
иp
. - Вычисление значения переменной
y
с помощью формулыy = y * (x - p - 1) / (x - p)
. - Использование цикла
while
для вычисления значения переменнойy
в диапазоне от 1 до 64 (не включая 64). - Внутри цикла проверка на деление на ноль при равенстве
x
иp
. - Вычисление значения переменной
y
с помощью формулыy = y * (x - p - 1) / (x - p)
. - Использование цикла
repeat...until
для вычисления значения переменнойy
в диапазоне от 1 до 64 (не включая 64). - Внутри цикла проверка на деление на ноль при равенстве
x
иp
. - Вычисление значения переменной
y
с помощью формулыy = y * (x - p - 1) / (x - p)
. - Вывод значения переменной
y
с помощью функцииwriteln()
. - Ввод значения от пользователя с помощью функции
readln()
. - Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д