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

как написать класс квадратное уравнение??? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запись структуры в бинарный файл http://www.cyberforum.ru/cpp-beginners/thread175761.html
Здравствуйте! У меня есть вот такая структура, представляющая собой словарь map<wstring, wstring>. Считыванием из большого текстового файла словаря я ее заполняю: wifstream infile;...
C++ char* -> LPCWSTR Всем доброго времени суток. Пытаюсь перевести char* строчку (строка текста переменной длины). Собственно код: char* LastChar; LPWSTR result; //... http://www.cyberforum.ru/cpp-beginners/thread175760.html
Неработает программа переписывания текста C++
Здраствуйте, помогите пожалуйсто я тут создал небольшую программу которая должна переписывать текст из одного фаила в другой а она переписывает только одну строку, почему? #include <stdio.h>...
Цикл for C++
обьясните пожалуйста что означает for(;n--; и ) , а именно использование символа ; ?
C++ Запуск объектного кода. http://www.cyberforum.ru/cpp-beginners/thread175708.html
Как реализовать запуск объектного кода (из внешнего файла) на Си (MinGW) из программы, не делая из него разделяемую библиотеку?
C++ Найти сумму элементов в тех строках матрицы, которые содержат хотя бы один отрицательный элемент дана целочисленная прямоугольная матрица. найти сумму элементов в тех строках,которые содержат хотя бы один отрицательный элемент. найти номера строк и столбцов всех седловых точек матрицы (матрица... подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3049 / 1694 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
13.10.2010, 12:44
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
//////////////////////////////////////////////////////////////////////////////////////
//  как написать класс квадратное уравнение???
//////////////////////////////////////////////////////////////////////////////////////
#include <iostream>
#include <complex>
#include <cmath>
//////////////////////////////////////////////////////////////////////////////////////
typedef  double                T_coef;
typedef  std::complex<T_coef>  T_root;
//////////////////////////////////////////////////////////////////////////////////////
class T_quadr_eq
{
public:
    T_quadr_eq
        (
            T_coef  A = 1,   
            T_coef  B = 0, 
            T_coef  C = 0
        ):a(A), b(B), c(C)
    {}
    //--------------------------------------------------------------------------------
    void  input()
    {
        std::cout << "Введите коэффициенты квадратного уравнения: "
                  << std::endl;
        do
        {
            std::cout << "a = ";
            std::cin >> a;        
        }while(a == 0);
 
        std::cout << "b = ";
        std::cin >> b;
 
        std::cout << "c = ";
        std::cin >> c;
    }
    //--------------------------------------------------------------------------------
    void  print_data()
    {
        std::cout << "Квадратное уравнение ";
        print();
        std::cout << ":"
                  << std::endl
                  << "дискриминант: "
                  << D().real()
                  << std::endl
                  << "корни:"
                  << std::endl
                  << "\tX1 = "
                  << root_left()
                  << std::endl
                  << "\tX2 = "
                  << root_right()
                  << std::endl
                  << std::endl
                  << std::endl
                  << std::endl
                  << std::endl
                  << std::endl;
    }
    //--------------------------------------------------------------------------------
    T_root  D()
    {
        return b * b - 4 * a * c;
    }
    //--------------------------------------------------------------------------------
    T_root  root_left()
    {
        return (-b - sqrt(D())) / (2.0 * a);
    }
    //--------------------------------------------------------------------------------
    T_root  root_right()
    {
        return (-b + sqrt(D())) / (2.0 * a);
    }
    //--------------------------------------------------------------------------------
    void print()
    {        
        if(abs(a) == 1)
        {
            std::cout << (a > 0 ? "" : "-");
        }
        else
        {
            std::cout << a;
        }
        std::cout << "x^2";
 
        if(b)
        {
            std::cout << (b > 0 ? " + " : " - ");
            if(abs(b) != 1)            
            {
                std::cout << abs(b);             
            }
            std::cout << "x";
        }
 
        if(c)
        {
            std::cout << (c > 0 ? " + " : " - ")
                      << abs(c);
        }                  
                  
        std::cout << " = 0";
    }
private:
    T_coef  a;
    T_coef  b;
    T_coef  c;
};
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
 
    T_quadr_eq  P(2.345e-15, 3.1415, 1.123e10);
    P.print_data();
 
    for(;;)
    {
        T_quadr_eq  Q;
        Q.input();
        Q.print_data();
    }
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru