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

Правильно ли я написал программу? Из книжки Павловская Щупак - C++

Восстановить пароль Регистрация
 
gulllak
44 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 66
05.12.2012, 18:51     Правильно ли я написал программу? Из книжки Павловская Щупак #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
50
51
52
53
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
 
int main ()
{
    setlocale(0, "Rus");
    double Xn, Xk, dX, a, b, c, F;
    bool whole;
    cout<<"Введите Xn="; cin>>Xn;
    cout<<"Введите Xk="; cin>>Xk;
    cout<<"Введите dX="; cin>>dX;
    cout<<"Введите a="; cin>>a;
    cout<<"Введите b="; cin>>b;
    cout<<"Введите c="; cin>>c;
    cout<<"--------------------"<<endl;
    cout<<"|    X     |    F  |"<<endl;;
    cout<<"--------------------"<<endl;
    whole = (((static_cast<int>(a) | static_cast<int>(b)) & (static_cast<int>(a) | static_cast<int>(c))) != 0) ?
    false: true;
    for (double x=Xn; x<=Xk; x +=dX)
    {
        bool rupture = false;
        if ((x<5) && (c !=0))
            rupture = true;
        else
            F=-a*pow(x, 2)-2;
 
           if((x>5) && (c==0))
           rupture = true;
        else
            F=(x-a)/x;
 
            if (c==0)
                rupture=true;
        else
            F=(-x)/c;
        cout<<fixed;
        if (rupture)
            cout<< "|"<<setw(6)<<setprecision(1)<<x<<setw(2)<<"|"<<setw(9)<<"Разрыв"<<setw(2)<<"|"<<endl;
        else
            if (whole)
                cout<<"|"<<setw(6)<<setprecision(1)<<x<<setw(2)<<"|"<<setw(9)<<static_cast<int>(F)<<setw(2)<<"|"<<endl;
        else
            cout<<"|"<<setw(6)<<setprecision(1)<<x<<setw(2)<<"|"<<setw(9)<<setprecision(4)<<F<<setw(2)<<"|"<<endl;
    }
        cout << "-------------------"<< endl;
        system("pause");
        return 0;
 
        
}
И еще на могу понять как выполнить проверку вручную

 Комментарий модератора 
Запрещено размещать задания в виде картинок и других файлов с их текстом.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2012, 18:51     Правильно ли я написал программу? Из книжки Павловская Щупак
Посмотрите здесь:

C++ Зачем нужные поразрядные операции. Книга Павловская, Щупак
C++ Написал но не уверен что правильно
Написал прогу, не знаю как объяснить правильно!!! C++
C++ Написал прогу, не знаю как объяснить правильно!!!
Правильно ли я написал? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
XRuZzz
Антикодер
577 / 478 / 23
Регистрация: 15.09.2012
Сообщений: 2,429
05.12.2012, 19:02     Правильно ли я написал программу? Из книжки Павловская Щупак #2
вот видите даже условие задачи подсказывает, что ваш алгоритм нужно оформлять отдельной функцией(в стиле C, или классом в стиле C++)
gulllak
44 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 66
05.12.2012, 19:11  [ТС]     Правильно ли я написал программу? Из книжки Павловская Щупак #3
Цитата Сообщение от XRuZzz Посмотреть сообщение
вот видите даже условие задачи подсказывает, что ваш алгоритм нужно оформлять отдельной функцией(в стиле C, или классом в стиле C++)
Я вас не понял! Программу нужно написать в С++
XRuZzz
Антикодер
577 / 478 / 23
Регистрация: 15.09.2012
Сообщений: 2,429
05.12.2012, 19:29     Правильно ли я написал программу? Из книжки Павловская Щупак #4
ну например
C++
1
2
3
4
5
6
7
8
9
10
double func(double x, double a,double  b,double  c)
{
     double F;
            if ((x<5) && (c !=0))
                  F=-a*pow(x, 2)-2;
            else
                  ruptur = true;
.....
     return F;
}
а в main
C++
1
2
3
4
5
6
double res;
for (double x=Xn; x<=Xk; x +=dX)
{
     res= func(x);
....
}
чтобы внутри функции не было cout, тогда решение становиться более очевидным
Yandex
Объявления
05.12.2012, 19:29     Правильно ли я написал программу? Из книжки Павловская Щупак
Ответ Создать тему
Опции темы

Текущее время: 17:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru