Вычислить сумму ряда для всех 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.
- Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д