Вычислить значение выражения - Pascal ABC (13012)
Формулировка задачи:
Ребят, без понятия как делать. Если кто поможет то пожалуйста с пояснениями.
Написать программу вычисления суммы (произведения) конечного ряда. При разработке программы предусмотреть пропуск слагаемых (множителей), равных нулю или бесконечности.
Решение задачи: «Вычислить значение выражения»
textual
Листинг программы
- var i, j, k: integer;
- p, s: extended; //real, double
- begin
- repeat
- write('k in [5..688]; k = '); //5..73 для real и double
- readln(k)
- until (k >= 5) and (k <= 688); //k <= 73 для real и double
- p := 1;
- for j := 4 to k do
- if j <> 4 then
- begin
- s := 0;
- for i := j to k + 2 do
- if (i <> 7) and (i <> 5) then
- s := s + exp(ln(abs(i - 5) / 3)) / abs(i - 7);
- p := p * (j - j * j) * k / (j - 4) * s
- end;
- write('p = ', p);
- readln
- end.
Объяснение кода листинга программы
- Объявляются переменные i, j, k типа integer, а также переменные p и s типа extended (real или double).
- Задается диапазон значений переменной k от 5 до 688.
- Выводится сообщение с просьбой ввести значение k.
- Задается начальное значение переменной p равное 1.
- Задается диапазон значений переменной j от 4 до k.
- В цикле for происходит проверка условия j <> 4.
- Если условие выполняется, то переменная s инициализируется значением 0.
- В цикле for происходит проверка условия i <> 7 и i <> 5.
- Если оба условия выполняются, то вычисляется значение выражения exp(ln(abs(i - 5) / 3)) / abs(i - 7) и добавляется к переменной s.
- Значение выражения p вычисляется как произведение (j - j j) k / (j - 4) * s.
- Выводится сообщение с просьбой ввести значение k.
- Программа завершается после ввода значения k и чтения строки
readln
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д