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

обработать исключительные ситуации - C++

Восстановить пароль Регистрация
 
Usain
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 33
21.12.2013, 14:13     обработать исключительные ситуации #1
Функция вычисляет корень квадратного уравнения ax2+bx+c=0
Нужно обработать исключительные ситуации
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2013, 14:13     обработать исключительные ситуации
Посмотрите здесь:

Исключительные ситуации C++
исключительные ситуации C++
Исключительные ситуации C++
C++ исключительные ситуации
Исключительные ситуации C++
C++ Исключительные ситуации
C++ Исключительные ситуации
C++ Исключительные ситуации!

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
21.12.2013, 14:23     обработать исключительные ситуации #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
31
32
33
34
35
36
try{
int main()
{
double a, b, c;
cout << "a = ";
cin >> a;
cout << "b = ";
cin >> b;
cout << "c = ";
cin >> c;
if(a == 0)
{
cout << "a == 0";
throw "a == 0, уравнение не является квадратным\n";
}
D = b*b-4*a*c;
if(D == 0)
cout << "x1=x2=" << (-b/(2*a)) << endl;
else if(D > 0)
{
cout << "x1 = " << (-b + sqrt(D)) / (2 * a) << endl;
cout << "x2 = " << (-b - sqrt(D)) / (2 * a) << endl;
}
//комплексные корни, i - шки допишешь к выводу сам
else 
{
cout << "x1 = " << (-b + sqrt(D * (-1))) / (2 * a) << endl;
cout << "x1 = " << (-b - sqrt(D * (-1))) / (2 * a) << endl;
}
}
catch(char * msg)
{
cout << msg << endl;
}
return 0;
}
Usain
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 33
21.12.2013, 14:25  [ТС]     обработать исключительные ситуации #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
#include <iostream>
#include <cmath>
void KvUravneniye (double, double, double);
using namespace std;
int main()
{
    setlocale(0,"");
    
    double a,b,c;
    cin >>a >>b >>c;    
 
KvUravneniye(a,b,c);
return 0;
}
 
void KvUravneniye (double a, double b, double c) 
{
     double X,X1,X2,D;
if(a==0) 
 {      
     if(b==0)     
     {          
         if(c==0) cout << "бесконечное количество решений";         
         else cout <<"нет корней";     
     }     else     
     { 
         X= - c / b;     cout << X;     
     } 
 } 
  else 
  {
       D=pow(b,2)-4*a*c;     
  if (D<0) cout <<"нет корней"; 
       else     
        {     
    X1=(-b+sqrt(D))/(2*a);
      X2=(-b-sqrt(D))/(2*a);
    if (X1==X2) 
    cout << X1; 
    else 
    cout << X1 << X2; 
        }
    }
}
Yandex
Объявления
21.12.2013, 14:25     обработать исключительные ситуации
Ответ Создать тему
Опции темы

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