0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 10
1

Вычисление корней квадратного уравнения используя классы и методы

27.02.2018, 09:57. Показов 1148. Ответов 4
Метки нет (Все метки)

Всем привет.И сразу к сути.Нужно написать программу для вычисления корней квадратного уравнения вида ax^2+bx+c=0.
Коэффициенты a,b и 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
51
52
53
54
55
56
57
58
59
#include<iostream>
#include<math.h>
using namespace std;
//Объявление класса SimpleClass:
class VCCYClass{
public:
//Целочисленные поля класса:
int a;
int b;
int c;
double powb2(double b,double 2);//cразу укажем степень числа
int x1;
int x2;
//Метод для вычисления x1:
int x1(){
int x1=-b+(sqrt(powb2)/2*a;
return x1;
}
//Метод для вычисления x2:
int x2(){
int x2=-b-sqrt(pow)/2*a;
return x2;
}
 
 
//Метод для отображения значений полей:
void show(){
cout<<"a = "<<a<<endl;
cout<<"b = "<<b<<endl;
cout<<"c = "<<c<<endl;
cout<<"x1 = "<<x1<<endl;
cout<<"x2 = "<<x2<<endl;
cout<<"ot = "<<ot<<endl;
}
//Метод для умножения полей на число:
void mult(int k){
b*=k;
a*=k;
}
};
int main(){
//Создание объектов MyObj1 и MyObj2 класса SimpleClass:
VCCYClass MyObj1,MyObj2;
//Полям объектов присваиваются значения:
MyObj1.a=1;
MyObj1.b=2;
MyObj2.a=8;
MyObj2.b=9;
//Сумма полей для разных объектов:
cout<<"x1 = "<<MyObj1.x1()<<endl;
cout<<"x2="<<MyObj2.x2()<<endl;
//Умножение полей объектов на число:
MyObj1.mult(3);
MyObj2.mult(2);
//Отображение значений полей объектов:
MyObj1.show();
MyObj2.show();
return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2018, 09:57
Ответы с готовыми решениями:

Вычисление корней квадратного уравнения
1) Пишем функцию, которая переворачивает строку (массив типа char). Используйте цикл for, который...

Вычисление корней квадратного уравнения
Напишите пожалуйста подпрограмму для обчисления корней квадратного уравнения. Если можно с...

Вычисление корней квадратного уравнения
Язык С++, заранее благодарю :), желательно 98 версия Написать программу вычисления корней...

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

4
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
27.02.2018, 10:32 2
Сделай конструктор. Убери одинаковые имена и формулу запиши как положено.
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 10
27.02.2018, 14:42  [ТС] 3
Так ,ну вот вроде так,только еще формулу не записал как положено,сейчас пытаюсь вспомнить..
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
 //квадратное уравнение вида ax^2+bx+c=0
#include<iostream>
#include<math.h>
using namespace std;
//Объявление класса CYClass:
class CYClass{
public:
//Целочисленные поля класса:
int x1;
int x2;
int a;
int b;
int c;
//Метод для вычисления суммы полей:
int discriminant(){
int d=sqrt(b-4*a*c)/2*a;
return d;
}
//Метод для отображения значений полей:
void show(){
cout<<"a = "<<a<<endl;
cout<<"b = "<<b<<endl;
cout<<"c = "<<c<<endl;
}
//Метод для умножения полей на число:
void mult(int d){
x1=-b+sqrt(d)/2*a;
x2=-b-sqrt(d)/2*a;
}
};
int main(){
//Создание объектов MyObj1 и MyObj2 класса SimpleClass:
CYClass MyObj1,MyObj2;
//Полям объектов присваиваются значения:
MyObj1.a=1;
MyObj1.b=3;
MyObj1.c=-4;
MyObj2.a=1;
MyObj2.b=3;
MyObj2.c=-4;
//Сумма полей для разных объектов:
cout<<"X1="<<MyObj1.discriminant()<<endl;
cout<<"X2="<<MyObj2.discriminant()<<endl;
//Умножение полей объектов на число:
MyObj1.mult();
MyObj2.mult();
//Отображение значений полей объектов:
MyObj1.show();
MyObj2.show();
return 0;
}
Добавлено через 35 минут
Мне конструктор не надо ,тут классы и методы только.
0
Модератор
Эксперт С++
12088 / 9763 / 5906
Регистрация: 18.12.2011
Сообщений: 26,213
27.02.2018, 14:55 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
//квадратное уравнение вида ax^2+bx+c=0
#include<iostream>
#include<math.h>
using namespace std;
//
class SquareRoot{
private:
    double a,b,c,x1,x2;
    bool IsSolved;
public:
    SquareRoot(double a0=0,double b0=0,double c0=0):a(a0),b(b0),c(c0)
    {
        double d=discriminant();
        IsSolved = (d>=0);
        if(IsSolved)
        {
             x1=(-b+sqrt(d))/(2.*a);
             x2=(-b-sqrt(d))/(2.*a);
        }else
            x1=x2=0;
    }
        double discriminant(){
        return b*b-4.0*a*c;
    }
    void show(){
        cout<<a<<"*x^2+"<<b<<"*x+"<<c<<"=0"<<endl;
        switch(NumbersOfRoots())
        {
        case 0:
            cout<<"No roots"<<endl;break;
        case 1:
            cout<<"x1="<<x1<<endl;break;
        case 2:
            cout<<"x1="<<x1<<endl;
            cout<<"x2="<<x2<<endl;
        }
    }
    double Getx1()
    {
        return x1;
    }
    double Getx2()
    {
        return x2;
    }
    int NumbersOfRoots()
    {
        if (!IsSolved)return 0;
        if(x1==x2)return 1;
        return 2;
    }
};
int main(){
    //Создание объектов
    SquareRoot MyObj1(1.,3.,-4);
    //Вывод уравнения
    MyObj1.show();
    return 0;
}
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
27.02.2018, 14:55 5
double вместо int.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.02.2018, 14:55
Помогаю со студенческими работами здесь

Вычисление корней квадратного уравнения
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { system(&quot;cls&quot;);...

Аналитическое вычисление корней квадратного уравнения
Разработать программу для аналитического вычисления корней квадратного уравнения ax^2+bx+c=0 при...

Вычисление вещественных корней квадратного уравнения
Надо решить несколько задач, вот они: 1) Составить блок-схему алгоритма и программу вычисления...

Вычисление корней квадратного уравнения
Приветик всем...) Я тут совсем недавно,вот помощь оч нужна, не могу зачеты получить! Помогите,чем...

Вычисление корней квадратного уравнения
Ну то есть, вот например есть программа, которая вычисляет корни квадратного уравнения: Program...

Вычисление корней квадратного уравнения
написать на Pascal программу вычисления корней квадратного уравнения На фото что программа должна...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru