Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/48: Рейтинг темы: голосов - 48, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 08.10.2010
Сообщений: 3
1

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

13.10.2010, 09:43. Показов 9424. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <complex>
#include <math>
 
using namespace std;
class kvadr{
      float a, b, c;
public:
       kvadr(float a1,float b1=0.0, float c1=0.0):a(a1), b(b1), c(c1){}
       void korny(x1, x2){x1}
       void print(){a*x^2+b*x+c=0}
       float D(){return }
       
 
void main()
{
     kvadr A(1,-4,4);
     A.menu()
}
вот это преподаватель подсказал, а как полностью незнаю!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.10.2010, 09:43
Ответы с готовыми решениями:

Описать класс, представляющий квадратное уравнение вида
Описать класс, представляющий квадратное уравнение вида . Описать метод, вычисляющий решение этого...

Проверка для нахождения корней в квадратном уравнении(класс квадратное уравнение)
Часть кода для нахождение корней квадратного уравнения.Нужно сделать проверку...

нужно написать функцию, которая будет считать квадратное уравнение, данные с клавиатуры ввожу
#include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; using std::cout; using std::endl;...

Создать производные классы линейное уравнение и квадратное уравнение, в которых данная функция переопределена
Создать абстрактный базовый класс уравнение с виртуальной функцией - корни уравнения. Создать...

4
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
13.10.2010, 10:26 2
По мне так классы подобного рода( и назначения)
должны содержать перегрузку оператора вызова функции и больше ни чего.
1
125 / 65 / 9
Регистрация: 19.04.2010
Сообщений: 196
13.10.2010, 10:30 3
Уравнение имеет вид a*x^2+b*x+c
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
//заголовочный файл Ur.h
class Ur
{
public:
   Ur();
   Ur(float a, float b, float c);
 
   float calc(float x);  //вычисляет значение в точке x
 
   void setA(float a);
   void setB(float b);
   void setC(float c);
   float a() const;
   float b() const;
   float c() const;
 
   void set(float a, float b, float c);
private:
   float _a, _b, _c;
}
 
//Исходник Ur.cpp
Ur::Ur() : _a(0), _b(0), _c(0) {};
 
Ur::Ur(float a, float b, float c) : _a(a), _b(b), c(_c) {};
 
void Ur::setA(float a) {_a = a;};
void Ur::setB(float b) {_b = b;};
void Ur::setC(float c) {_c = c;};
float Ur::a() const {return _a;};
float Ur::b() const {return _b;};
float Ur::c() const {return _c;};
 
void Ur::set(float a, float b, float c) {_a = a; _b = b; _c = c;};
 
float Ur::calc(float x) {return _a*x*x+_b*x+c;};
 
 
//main.c
 
#include <iostream>
#include "Ur.h"
 
int main(int argc, char* argv[])
{
   Ur ur1;
   float v;
 
   return 0;
}
Дальше думаю можно разобраться.
Только не смешивайте данные и вывод на экран.
1
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
13.10.2010, 12:44 4
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
0 / 0 / 0
Регистрация: 08.10.2010
Сообщений: 3
13.10.2010, 14:42  [ТС] 5
большое спасибо за внимание!!!попытаюсь разобраться
0
13.10.2010, 14:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.10.2010, 14:42
Помогаю со студенческими работами здесь

Класс “Квадратное уравнение”
Помогите, пожалуйста, сделать, кто знает. Реализовать класс “Квадратное уравнение”. Методами...

Класс наследник: квадратное уравнение
помогите,пожалуйста,не могу понять почему иксы не складываются using System; using...

Разработать класс «Квадратное уравнение»
Разработать класс «Квадратное уравнение». Методы: задание коэффициентов (старший должен быть...

Описать класс представляющий квадратное уравнение
Описать класс представляющий квадратное уравнение вида: ax² + bx + c=0. Описать метод,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru