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

Генератор исключений не работает, не знаю - почему...

25.02.2016, 01:24. Показов 456. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вообщем такая проблема, написал код по поиску корней квадратного уравнения, но генератор исключений не работает не могу понять почему
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
#include <iostream>
#include <cmath>
using namespace std;
 
int main() 
{
double a,b,c,d,znam=2*a;
double x_1, x_2, x_3;
 
cin>>a;
cin>>b;
cin>>c;
 
d = pow(b,2) - 4*a*c;
 
if(d>0)
 {
    x_1 = (-b+sqrt(d))/znam;
    x_2 = (-b-sqrt(d))/znam;
    cout<<"Первый корень"<<x_1<<endl;
    cout<<"Второй корень"<<x_2<<endl;
 }
if(d==0)
  {
        x_3 = -b/znam;
        cout<<"Первый корень"<<x_3<<endl;
  }
try
{
if(znam==0 || d<0)
 {
    throw 999;
 }
cout<<a+b+c<<endl;
}
catch(int i)
 {
    cout<<"Ошибка №"<<i<<" "<<"знаменатель равен 0 или d меньше 0"<<endl;
 }
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.02.2016, 01:24
Ответы с готовыми решениями:

Решил сделать миникалькулятор, но программка не работает, я не знаю почему...
я начал изучать c++ сделал программу &quot;hello world&quot; и решил попробовать сделать мини калькулятор но ...

Структура С++ нужна допомога, не знаю почему программа не работает, пожалуйста
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string&gt; #include...

Не знаю почему не работает
Здравствуйте. Может ли кто нибудь сказать почему не работает unset. В общем мне нужно, чтобы после...

Почему не работает генератор таблицы простых чисел?
Раньше всё работало, а переписал код - сразу начало борохлить вот код: package das; public...

3
Вездепух
Эксперт CЭксперт С++
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
25.02.2016, 02:29 2
Цитата Сообщение от ProFrog111 Посмотреть сообщение
генератор исключений не работает
Что такое "не работает"?

Отдельно возникает вопрос, что вот это такое

C++
1
double a,b,c,d,znam=2*a;
О каком '2*a' может идти речь, если 'a' еще вообще ничем не инициализирована??? Вас компилятор физиономией не ткнул в это дело?
1
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
25.02.2016, 08:37 3
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
О каком '2*a' может идти речь
Всё просто. Если в a мусор, то тут получается в 2 раза больше мусора
Хотя, формально, конечно, здесь UB.
ProFrog111, перенеси вычисление znam, как минимум, после ввода a.
Дополнительно хочу сказать, что не рекомендуется использовать встроенные типы в качестве объектов исключения. Для этих целей правильнее предусмотреть свой класс, который можно унаследовать от std::exception.
1
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 128
25.02.2016, 22:40  [ТС] 4
Увы, но не ткнул

Добавлено через 44 минуты
А как именно это реализовать т.к. я делаю по книге Бьярне Страуструпа 2011 года, и стараюсь реализовывать тем способами что изложены в главе, возможно то о чем вы говорите изложено, но я не могу найти

Добавлено через 27 минут
В принципе код работает но когда ошибок не должно быть вместе с корнями компилятор выводит и 34 строку, а этого как я понял не должно быть или так и должно быть?

Добавлено через 1 час 53 минуты
Извиняюсь исправил)
0
25.02.2016, 22:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2016, 22:40
Помогаю со студенческими работами здесь

Не могу понять, почему программа работает неправильно( Знаю, что где-то ошибки, но не могу найти
{Ввести последовательность натуральных чисел Aj j=1...n (n&lt;=1000). Упорядочить последовательность...

Почему не происходит обработка исключений?
Программа запускается как из Delphi так и без него. Код простой. Сообщение - Возникло исключение...

Почему выскакивает исключение если есть обработка исключений?
Почему выскакивает исключение если есть обработка исключений? как такое может быть?

Знаю почему не индексирует...
То в Яндексе мне ответили, что не индексируют, потому что сайт не работает, хотя он прекрасно...


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

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

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