Пожалуйста Помогите С Решением

  • Автор темы krank
  • Дата начала
Статус
Закрыто для дальнейших ответов.
K

krank

Постановка задачи
Для х, изменяющегося от a до b (интервал [a ; b] целиком лежит внутри интервала, указанного в третьей колонке) с шагом , вычислить функцию y=f(x), используя ее разложение в степенной ряд (вторая колонка) в двух случаях:
а) для заданного количества слагаемых N (величина зависит от свойств степенного ряда, примерное значение N указано в четвёртой колонке);
б) для заданной точности э (близкое к нулю положительное число, например, 0.1, 0.01, 0.001, 0.0001).


я попытался что-то сделать но увы не получилось вот :
#include <iostream>
#include <iomanip>
#include <cmath>
#include <fstream>

using namespace std;

int main()
{
cout <<setlocale(0, "Russian");
cout<<"66666"<<endl;
cout<<endl;

double a, b, eps, x, h,Z;
int N; //число слагаемых
do
{
cout<<"Введите начальное значение уравнения A: ";
cin>>a;
cout<<"Введите конечное значение уравнения B: ";
cin>>b;
}while(a>=:mellow:;

h=(b-a)/10; //вычисление шага
cout<<"Eps от 0.0001 до 0.1"<<endl;

do
{
cout<<"Введите eps: ";
cin>>eps;
}while(eps>0.10000 || eps<0.00010000); //0.0001 < eps < 0.1

do
{
cout<<"Введите кол-во слагаемых N: ";
cin>>N;
}while(N<1);

cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<"x";
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<"Sn";
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<"Se";
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<"S"<<endl;


for (x=a; x<=b; x+=h)
{
double Sn=1;
double a=1;
double h=1;
double log3=log(3);
for (int i=1; i<=N; i++)
{
a=a*(Log3*x)/h;
Sn=Sn+a;
h=h+1;
}
double Se=1;
double a=1;
double h=1;
double log3=log(3);
for (int i=1; i<=N; i++)
{
a=a*(Log3*x)/h;
Se=Se+a;
h=h+1;
}
}while (fabs(a)>eps);
Se*=2;
double S= 3*x;
cout<<setw(20)<<setprecision(6)<<setiosflags(ios::fixed)<<x;
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<Sn;
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<Se;
cout<<setw(10)<<setprecision(6)<<setiosflags(ios::fixed)<<S<<endl;
}
system("pause");
return 0;
}
 

Вложения

  • Безымянный.JPG
    Безымянный.JPG
    5,8 КБ · Просмотры: 581
W

Whatka

воспользуйтесь поиском
похожие темы создавали множество раз(даже на этом форуме на моей памяти не меньше 5)
 
K

krank

да что-то не нашел здесь нечего , в кумире я решил вот теперь в с++ надо сделать , только начал разбирать с++, из-за этого может я кифедреси написал.
вот в кумире образец его переделать в с++:
PHP:
алг 
нач 
вещ c, n, h, S, a, b, к, e, х, Sn, Se
цел N
n:=1
S:=0
вывод "Введите а"
ввод a
вывод "Введите б"
ввод b
если a>b
то к:=a
a:=b
b:=к
все
h:=(b-a)/10
х:=a
нц 
вывод "Введите N"
ввод N
кц при N>0
e:=0.001
вывод "Результат: ", нс
нц пока х<b
Sn:= суммаN ( N, х)
Se:= суммаE (e, х)

S:= 3**х
вывод х, "  ", Sn, "  ", Se, "  ", S, "  ", нс
х:=х+h
кц
кон

алг вещ суммаN( цел N, вещ х)
нач 
вещ Sn, а, h, S, Ln3
h:=1
Sn:=1
а:=1
Ln3:=ln (3)
нц N раз
а :=а*(Ln3*х)/h
Sn:=Sn+а
h:=h+1
кц
знач :=Sn
кон

алг вещ суммаE (вещ e, х)
нач 
вещ а, h, Se, Ln3
h:=1
Se:=1
а:=1
Ln3:=ln (3)
нц 
а :=а*(Ln3*х)/h
Se:=Se+а
h:=h+1
кц при abs (а)<e
знач :=Se
кон
 
W

Whatka

у вас 12 переменыых
я дальше и смотеть не стал

начните с малого
напишите программу для подсчёта суммы ряда для определённого кол0ва слагаемых
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!