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

Необходимо рассчитать выражение, используя ООП по максимуму, применить инкапсуляцию и тд - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ функции getchar() и putchar() http://www.cyberforum.ru/cpp-beginners/thread948361.html
Здравствуйте всем. Такая вот задачка: Есть вот такой код: #include <iostream> #include <conio.h> using namespace std; void main() {
C++ Графическое отображение полинома Доброго времени суток форумчане. Сложилась проблема, встала задача которую я не могу воплотить в жизнь. Задача такова. Разработать программу для графического отображения полинома an*x^n+a(n-1)*x^(n-1)+…+a0, где ai, x – целые числа. Степень n и коэффициенты ai задаются с клавиатуры. График формируется в .txt файле. http://www.cyberforum.ru/cpp-beginners/thread948360.html
Книга Шилдта Г C++
Для чего нужен массив обведённый красным цветом? Либо я что-то упустил либо очепяточка в книге. Склоняюсь к первому варианту , рассудите пожалуйста. #include<iostream> using namespace std; char name ; //Имя служащих char phone; //Телефон служащих
С++11 ide C++
насколько я знаю сейчас трудно найти ide с поддержкой выражений из C++11, хотя, вроде, студия 2012 частично поддерживает.. но не суть, есть ли какие то ide которые позволяют вносить свои регулярные выражения с выделением цвета (например constexpr, nullptr, которых они пока не знают) ?
C++ Первое С++ приложение http://www.cyberforum.ru/cpp-beginners/thread948352.html
Добрый день, господа! Я бы был крайне благодарен, если бы меня профилактически попинали ногами (виртуально, конечно). Это моё первое (не из книжки) приложение на С++, поэтому море грубых, глупых и непростительных ошибок прилагается. Суть - класс и пара функций для получения int значения из OID по SMNP. Используется Winsnmp на Win7, Code::Blocks, gcc. Хедер #ifndef __MAIN_H__
C++ Из одного файла скопировать в другой не удаляя содержимое второго и вывести на экран Помогите пожалуйста с задачей, на вид простенькая, но не знаю что делать из одного файла скопировать в другой не удаляя содержимое второго и вывести на экран подробнее

Показать сообщение отдельно
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
05.09.2013, 00:05     Необходимо рассчитать выражение, используя ООП по максимуму, применить инкапсуляцию и тд
Кликните здесь для просмотра всего текста
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#include <iostream>
#include <fstream>
using namespace std;
 
class TCalc
{
    float a;
    int b;
    int c;
    double d;
    double result;
    
    int f_valid; // флаг валидности
 
    void valid(int c, double d)
    {
        if (c == 5 && d == 0) f_valid = 3;
        else if (c == 5)  f_valid = 1;
        else if (d == 0)   f_valid = 2;
        else f_valid = 5;
    }
 
    void show_err()
    {
        if (f_valid == 5) cout << "Valid!\n";
        if (f_valid == 1) cout << "Invalid c! c = " << c << endl;
        if (f_valid == 2) cout << "Invalid d! d = " << d << endl;
        if (f_valid == 3) cout << "Invalid c end d! c = " << c << ", d = " << d << endl;
     }
    
    void f()
    {
        if (f_valid == 5)
             result = (log10(4 * a - 1) + b / 2) / (d / c - 5);
        else result = 0;
    }
    
public :
    
    TCalc(float a, int b, int c, double d)
    {
        valid(c, d);
        this ->a = a;
        this ->b = b;
        this ->c = c;
        this ->d = d;
        f();
        show_err();
     }
 
    ~TCalc()
    {}
    
    double get_result() 
    { 
        if (f_valid == 5) return result;
        else 
        {
            show_err();
            cout << "result invalid! ";
            return result;
        }
    }
    
    float  get_a()         { return a;       } const
    int    get_b()         { return b;       } const
    int    get_c()         { return c;       } const
    double get_d()         { return d;       } const
    int    get_f_valid()   { return f_valid; } const
 
    void change_a(float  a) { this ->a = a; f();}
    void change_b(int    b) { this ->b = b; f();}
    void change_c(int    c) { this ->c = c; f();}
    void change_d(double d) { this ->d = d; f();}
 
    void show()
    {
        cout << endl;
        show_err();
        cout << "a = "      << a << endl;
        cout << "b = "      << b << endl;
        cout << "c = "      << c << endl;
        cout << "d = "      << d << endl;
        if (f_valid != 5)
            cout << "result invalid! ";
        cout << "result = " << result << endl;
    }
 
};
 
int main ()
{
    setlocale(0, "");
    
    float a;
    int b;
    int c;
    double d;
    
    char ch = 'y';
    do
    {
        cin >> a >> b >> c >> d;
        
        TCalc T(a, b, c, d);
        
        T.show();
        
        T.change_a(6);
        
        T.show();
        cout << endl;
        
        cout << T.get_result() << endl;
 
        double r;
        if (T.get_f_valid() == 5) 
        {
             r = T.get_result();
             cout << "r = " << r << endl;
        }
        
        cout << "\nContinue? (y): ";
        (cin >> ch).get();
    
    } while (ch == 'y');
    
    return 0;
}
 
Текущее время: 09:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru