IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Суммирование рядов функций
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 2
Пол: Женский
Реальное имя: Валерия

Репутация: -  0  +


Ребят,помогите,прошу!
Вот постановка задачи:
Требуется разработать программу, позволяющую выполнять расчёт значений для некоторого набора функций в заданной точке с заданной погрешностью за счёт разложения этих функций в ряд Тейлора.
В дальнейшем под точностью понимается модуль разницы эталонного значения функции, полученного с помощью встроенной функции Pascal, и подсчитанной вами суммы. Под погрешностью понимается модуль разницы двух последних элементов ряда.

Программа должна работать в двух режимах:
Однократный расчет функции в заданной точке.
Серийный эксперимент.

При работе в режиме 1 пользователь должен иметь возможность:
выбрать функцию,
задать точку x, в которой необходимо вычислить значение,
задать точность вычисления (от 0.000001 и больше)
задать число элементов ряда для выполнения расчета (от 1 до 100).

Расчет значения выбранной функции выполняется либо до достижения заданной точности, либо до исчерпания введенного числа слагаемых. По результатам расчета программа должна вывести следующую информацию:
эталонное значение (полученное с использованием встроенных математических функций Pascal),
вычисленную оценку значения функции,
разницу между оценкой и эталонным значением,
количество слагаемых, которое было вычислено.

При работе в режиме 2 пользователь должен иметь возможность:
выбрать функцию,
задать точку x, в которой необходимо вычислить значение,
задать максимальное число элементов ряда для выполнения расчета (NMax - от 1 до 100).
По результатам расчета программа должна вывести следующую информацию:
эталонное значение (полученное с использованием встроенных математических функций Pascal),
таблицу из NMax строк со следующими столбцами: число слагаемых слагаемых, вычисленную оценку значения функции, разницу между оценкой и эталонным значением.
Технические требования:
В программе должны быть использованы процедуры и/или функции.
В программе должен быть использован процедурный тип данных.
В программе должны быть использованы модули.
Каждый студент должен реализовать расчет функций sin(x), cos(x), exp(x) и одной уникальной функции из списка ниже.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 1)
сообщение
Сообщение #2





Группа: Пользователи
Сообщений: 2
Пол: Женский
Реальное имя: Валерия

Репутация: -  0  +


 
Program Lab2;
uses Crt,My_lib2;
var
SumSin:real;
SumCos:real;
SumLog:real;
SumExpon:real;
x,eps:real;
count,b,numberfunc,countmax,i:integer;


procedure Casefunc();
begin
case numberfunc of
1: begin
while (x<0) do
x:=x+2*pi;
while (x>=2*pi) do
x:=x-2*pi;
Sum1(a0sin,qsin,x,countmax,eps,sumsin,count);
write ('|',sin(x)10.gif6,' |');
write(sumsin:12:6,' |');
end;
2: begin
while (x<0) do
x:=x+2*pi;
while (x>=2*pi) do
x:=x-2*pi;
Sum1(a0cos,qcos,x,countmax,eps,sumcos,count);
write ('|',cos(x)10.gif6,' |');
write(sumcos:12:6,' |');
end;
3: begin
Sum1(a0expon,qExpon,x,countmax,eps,sumexpon,count);
write ('|',exp(x)10.gif6,' |');
write(sumexpon:12:6,' |');
end;
4: begin
Sum1(a0log,qlog,x,countmax,eps,sumlog,count);
write ('|',ln(x)10.gif6,' |');
write (sumlog:12:6,' |');
end;
end;
end;

procedure Casefunc2();
begin
case numberfunc of
1: begin
while (x<0) do
x:=x+2*pi;
while (x>=2*pi) do
x:=x-2*pi;
Sum1(a0sin,qsin,x,i,eps,sumsin,count);
write('|',sumsin:6:4,' |');
end;
2: begin
while (x<0) do
x:=x+2*pi;
while (x>=2*pi) do
x:=x-2*pi;
Sum1(a0cos,qcos,x,i,eps,sumcos,count);
write('|',sumcos:6:4,' |');
end;
3: begin
Sum1(a0expon,qExpon,x,i,eps,sumexpon,count);
write('|',sumexpon:6:4,' |');
end;
4: begin
Sum1(a0log,qlog,x,i,eps,sumlog,count);
write('|',sumlog:6:4,' |');
end;
end;
end;
begin

writeln ('Выберите режим');
writeln(' 1.Однократный расчет функции в заданной точке.');
writeln(' 2.Серийный эксперимент');
readln(b);
if b=1 then
begin
repeat
numberfunc:=Viborfunc();
writeln ('Введите x');
readln(x);
writeln('Введите точность');
readln(eps);
writeln('Введите максимальное число слагаемых');
readln(countmax);



вот что у меня есть
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 13.09.2025 4:11
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name