Перегрузки Функций Плиззззззз

krank

New member
03.01.2013
3
0
#1
Пожалуйста помогите!!!!!!!!!!!!!!!!!! Я здесь пытался что-то сделать но увы((((( черновая работа, если нечего неправильно сделайте плиизззз. правильно.
1. Алгоритм решения задачи сводится к трем циклам, причем два из них вложены в третий. Внешний цикл организует изменение параметра х. Внутренние циклы суммируют слагаемые при фиксированном параметре x (первый цикл  арифметический для заданного n, второй  итерационный для заданной точности ). При организации этих циклов следует обратить внимание на правильный выбор способа вычисления очередного слагаемого zn (в зависимости от его вида) и правильное присвоение начальных значений переменным цикла.
2. Написать программу для решения задачи с использованием функций. В основной программе внутри цикла по переменной x вызываются поочередно функции для вычисления Sn (зависит от параметров x и N), Se (зависит от параметров x и e), и S (зависит от параметра x), а затем на экран выводятся полученные значения.
3. Написать программу для решения задачи с использованием механизма перегрузки функций (все три функции имеют одинаковое имя, но различаются по типу и количеству параметров, о перегрузке можно прочитать в любом из учебников).

C++:
#include <iostream>
#include <iomanip>
#include <cmath>
#include <fstream>


using namespace std;
int main()
{
cout <<setlocale(0, "Russian");
cout<<"5555555"<<endl;
cout<<endl;

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

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 change (int N, double x);
{
double Sn=1;
double a=1;
double h=1;
double log3=log3;
for (int i=1; i<=N; i++)
{
a=a*(log3*x)/h;
Sn=Sn+a;
h=h+1;
return Sn;
}

double change (double x, double eps);
{ 
double Se=1;
double a=1;
double h=1;
double log3=log3;
int value=N;
void print (char Symbol=' ', int value=10);
for (int i=1; i<=value; i++);
int i=1;
do

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

Вложения

  • 7.8 КБ Просмотры: 15
R

rrrFer

#2
Пожалуйста помогите!!!!!!!!!!!!!!!!!! Я здесь пытался что-то сделать но увы((((( черновая работа, если нечего неправильно сделайте плиизззз. правильно.
может быть вы сами определите правильно вы решили или неправильно, и, только если неправильно - таки напишите конкретные вопросы?