Вычислить сумму ряда для всех n от минимального до заданного - Free Pascal
Формулировка задачи:
Вычислить сумму ряда для всех n от минимального до заданного. Вывести на экран результат вычисления в форме:
<n> - <значение y для данного n>
Решение задачи: «Вычислить сумму ряда для всех n от минимального до заданного»
textual
Листинг программы
uses crt; //модуль для работы с экраном (в данном случае) const nmax=100; //максимальный размер массива, можно поменять var a:array[1..nmax] of real; //массив значений функции n,i,j:integer; //размер и счетчики в циклах x,t,y:real;//вспомогательные переменные при расчетах begin clrscr; //очищаем экран write('x=');//вводим х readln(x); write('n=');//вводим n readln(n); for i:=1 to n do //в цикле от 1 до n begin t:=x; //запоминаем х y:=0; //сумма=0 for j:=1 to i do//возводим х в степень t:=t*x*x; //x^3;x^5;x^7..... y:=y+t/(2*i+1);//вычисляем сумму по формуле x^(2i+1)/(2i+1) //кстати у меня здесь была ошибка, нужно заменить j на i //и убрать это из вложенного цикла y:=2*y;//умножаем сумму на 2 a[i]:=y;//пишем ее в массив end; for i:=1 to n do //вывод элементов массива writeln(a[i]:0:3); readln end.
Объяснение кода листинга программы
- Объявляются переменные: n, i, j - целочисленные счетчики и размер; x, t, y - вспомогательные переменные для расчета; a - массив значений функции.
- С помощью функции readln() вводятся значения переменных x и n.
- Два вложенных цикла: Внешний цикл выполняется от 1 до n. Внутренний цикл выполняет возведение x в степень от 1 до i.
- Внутренний цикл завершается досрочно, когда значение j становится равным i.
- Внутренний цикл вычисляет сумму по формуле x^(2i+1)/(2i+1).
- Сумма умножается на 2.
- Полученное значение записывается в массив a.
- Вложенные циклы завершаются.
- Внутренний цикл выводит значения массива a.
- Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д