Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
фисюк
6 / 2 / 0
Регистрация: 10.12.2011
Сообщений: 97
#1

программа сделана через указатели, переделать через ссылки. - C++

12.03.2012, 20:12. Просмотров 464. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <cmath>
 
using namespace std;
 
void calculation(double e,double x,double *sum,int *n)
{
    int i;
    double delta=100.0, fn, fn1=1.0, f=1.0;
    *sum=0.0;
    for (i=1; delta>e && i<10000; i++) 
    {    
        f=f*i;
        fn=pow(-1.0,i)*pow(x,2*i)/f;
        delta=abs(fn-fn1);
        if(delta>e) *sum+=fn1;
//      cout<<i<<"   "<<fn1<<"    "<<delta<<endl;
        fn1=fn;
    }
    *n=i-1;
}
 
int main()
{
    double x1,x2,step,e;
    cout<<"Input start X: ";
    cin>>x1;
    cout<<"Input final X: ";
    cin>>x2;
    cout<<"Input step: ";
    cin>>step;
    cout<<"Input 'absolute error': ";
    cin>>e;
    cout<<
           "_________________________________________________________________"<<endl
        <<"|        X        |         f(x)          |             n        |"<<endl
        <<"------------- ----------------------------------------------------"<<endl;
double sum, *sum1=&sum, x;
int n, *n1=&n;
for (x=x1;x<=x2;x+=step)
   {
    calculation(e,x,sum1,n1);
    cout<<"|"<<setw(9)<<x<<setw(9)<<"|"<<setw(12)<<sum<<setw(12)<<"|"<<setw(12)<<n<<setw(12)<<"|"<<endl;
    cout<<"----------------------------------------------------------------"<<endl;
   }
  return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2012, 20:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос программа сделана через указатели, переделать через ссылки. (C++):

Как переделать через указатели? - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { float u,v,n,h,x,y; cout &lt;&lt;&quot;...

переделать программу через указатели - C++
очень нужна ваша помощь #include&lt;math.h&gt; #include&lt;stdio.h&gt; #include &lt;conio.h&gt; void main () {int x,a; float y; ...

Нахождение дискриминанта через указатели и ссылки - C++
Имеется вот такой код #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int menu() { int choose; cout...

Помогите переделать работу с массивом через указатели - C++
помогите оформить через указатели...понимаю,что элементарно....но я трамвай for(j=k; j&lt;=N; j++) { ...

Переделать поиск максимального элемента матрицы через указатели - C++
3)Задана матрица D(4,4). Определить максимальный среди положительных, минимальный среди отрицательных и поменять их местами #include...

Нужно переделать проекты через указатели.Буду очень благодарен) - C++
Переделать всё через указатели. №1 Удалить элементы кратные 7. Добавить после каждого нечетного элемента массива элемент со значением...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Avazart
Эксперт С++
7185 / 5359 / 280
Регистрация: 10.12.2010
Сообщений: 23,650
Записей в блоге: 17
12.03.2012, 20:49 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <cmath>
#include <iostream>
#include <iomanip>
 
using namespace std;
 
#pragma argsused
 
void calculation(double e,double x,double &sum,int &n)
{
        int i;
        double delta=100.0, fn, fn1=1.0, f=1.0;
        sum=0.0;
        for (i=1; delta>e && i<10000; i++)
        {
        f=f*i;
                fn=pow(-1.0,i)*pow(x,2*i)/f;
        delta=abs(fn-fn1);
                if(delta>e) sum+=fn1;
//              cout<<i<<"   "<<fn1<<"    "<<delta<<endl;
                fn1=fn;
        }
        n=i-1;
}
//---------------------------------------------------------------------------
int _tmain(int argc, _TCHAR* argv[])
{
        double x1,x2,step,e;
        cout<<"Input start X: ";
        cin>>x1;
        cout<<"Input final X: ";
    cin>>x2;
        cout<<"Input step: ";
        cin>>step;
        cout<<"Input 'absolute error': ";
        cin>>e;
        cout<<
                   "_________________________________________________________________"<<endl
                <<"|        X        |         f(x)          |             n        |"<<endl
                <<"------------- ----------------------------------------------------"<<endl;
double sum, &sum1= sum, x;
int n, &n1= n;
for (x=x1;x<=x2;x+=step)
   {
        calculation(e,x,sum1,n1);
        cout<<"|"<<setw(9)<<x<<setw(9)<<"|"<<setw(12)<<sum<<setw(12)<<"|"<<setw(12)<<n<<setw(12)<<"|"<<endl;
    cout<<"----------------------------------------------------------------"<<endl;
   }
return 0;
}
Добавлено через 11 минут
Кстати можно было просто
C++
1
calculation(e,x,sum,n);
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2012, 20:49
Привет! Вот еще темы с ответами:

Переделать код программы так, чтобы решалась через указатели и функцию - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; void main() { char st; int i; printf(&quot;\nEnter the string&quot;); printf(&quot;-&gt;&quot;); ...

Программа с лексемами через указатели - C++
Вопросы в комментариях к коду. Не понятка в 2-х местах кода #include &lt;iostream&gt; #include &lt;cstring&gt; using namespace std; int...

заполнение массива через rand и вывод на экран через указатели - C++
Учитель задал заполнить массивы и случайными числами и вывезти на экран через указатели, через функцию rand выводит как вы понимаете одни...

Через указатели на указатели посчитать сумму двух чисел и записать в третье - C++
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье. 2. Написать примитивный калькулятор, пользуясь только...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru