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

Квадратное уравнение - C++

Восстановить пароль Регистрация
 
Mikle90
1 / 1 / 0
Регистрация: 15.03.2012
Сообщений: 23
15.03.2012, 13:26     Квадратное уравнение #1
Все здраствуйте))Изучаю С++ второй день)решил написать программу для решения корней квадратного уравнения вида A*x^2+b*x+C=0. Все вроде работает, корни находит.Но потом я нашел один баг , когда вводишь A=0,B=0,а 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
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
 double a,b,c,d,x1,x2;
 cout<<"Vvedite A,B,C v yravnenii A*x^2+b*x+C=0\n";
 cin>>a>>b>>c;
 if (a=0,b=0,c!=0)
 {
     cout<<"Hedopustimie znachenia!\n";
 }
 else
 {
      d=b*b-4*a*c;
 if (d>=0)
  {
    x1=(-b+pow(d,0.5))/2*a;
    cout<<x1<<" ";
    x2=(-b-pow(d,0.5))/2*a;
    cout<<x2<<" \n";
  }
  else 
    cout<<"Net korney\n";
  
 return 0;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.03.2012, 13:26     Квадратное уравнение
Посмотрите здесь:

Квадратное уравнение C++
C++ Квадратное уравнение
C++ Квадратное уравнение
Квадратное уравнение C++
Квадратное уравнение C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
15.03.2012, 13:33     Квадратное уравнение #2
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
#include<iostream>
 #include<math.h>
 using namespace std;
 int main()
 {
    double a,b,c,d,x1,x2;
    cout<<"Vvedite A,B,C v yravnenii A*x^2+b*x+C=0\n";
    cin>>a>>b>>c;
    if (a == 0 && b == 0 && c != 0)
    {
        cout<<"Hedopustimie znachenia!\n";
    }
    else
    {
        d=b*b-4*a*c;
        if (d>=0)
        {
            x1=(-b+pow(d,0.5))/2*a;
            cout<<x1<<" ";
            x2=(-b-pow(d,0.5))/2*a;
            cout<<x2<<" \n";
        }
        else 
            cout<<"Net korney\n";
    }
    cin.get();
    cin.get();
 return 0;
 
 }
Mikle90
1 / 1 / 0
Регистрация: 15.03.2012
Сообщений: 23
15.03.2012, 13:37  [ТС]     Квадратное уравнение #3
спасибо!
OlegLvovskyj
9 / 9 / 2
Регистрация: 02.12.2010
Сообщений: 66
15.03.2012, 19:15     Квадратное уравнение #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
#include <stdio.h>
#include <windows.h>
#include <conio.h>
#include <math.h>
double des(int a,int b,int c);
double x1(int a,int b,int c);
double x2(int a,int b,int c);
int main ()
{
    int a,b,c;
    double f1,f2,f3;
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    printf("I?ia?aia aey naiieiio?ie?\n\n");
    printf("Aaaa?ou cia?aiiy ?en?a\n\n");
    printf ("a = "); scanf ("%d",&a);
    printf ("b = "); scanf ("%d",&b);
    printf ("c = "); scanf ("%d",&c);
    
    printf ("%dx %dx %d = 0\n\n",a,b,c);
    f1 = des(a,b,c);
    f2 = x1(a,b,c);
    f3 = x2(a,b,c);
    printf("(D =) Eaaa?aoiee ei??iu c Aene?ei?iaioo = %2.3lf\n\n",f1);
    printf("x1 = %2.3lf\n\n",f2);
    printf("x2 = %2.3lf\n\n",f3);
    printf("Ei?ai? ciaeaaii\n\n");
    getch ();
    return 0;
}
double des(int a,int b,int c)
{
    double cor,D;
    D = (b * b) - (4 * a * c);
    cor = sqrt(D);
    return cor;
}
 
double x1(int a,int b,int c)
{
    double x1,cor;
    cor = des(a,b,c);
    x1 = ((-1 * b) + cor)/ (2 * a);
    return x1; 
}
 
double x2(int a,int b,int c)
{
    double x2,cor;
    
    cor = des(a,b,c);
    x2 = ((-1 * b) - cor)/ (2 * a);
    return x2; 
}
Yandex
Объявления
15.03.2012, 19:15     Квадратное уравнение
Ответ Создать тему
Опции темы

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