Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
ProFrog111
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 123
1

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

25.02.2016, 01:24. Просмотров 208. Ответов 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
#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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
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...

SEH; функция-фильтр необработанных исключений устраняет исключительную ситуацию, но почему-то вызывается постоянно
Ну то есть цель: должна сделать так, чтобы исключительная ситуация больше не возникала и возвратить...

Программа с использованием windows.h не находит файла. Не знаю почему
Программа не находит файла. Не знаю почему. задача: 1.Считывания перечени текстовых файлов из...

Обработка исключений с пмощью структурированной обработки исключений
Есть функция, которая определенным образом работает с файлами,но при работе с файлами &quot;не...

3
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
4777 / 2434 / 679
Регистрация: 18.10.2014
Сообщений: 4,160
25.02.2016, 02:29 2
Цитата Сообщение от ProFrog111 Посмотреть сообщение
генератор исключений не работает
Что такое "не работает"?

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

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

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

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

Добавлено через 1 час 53 минуты
Извиняюсь исправил)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2016, 22:40

Почему выводится в виде таблицы и почему не работает сортировка
почему выводится в виде таблицы? почему не работает сортировка? и как туда можно вставить классы...

Не работает генератор случайных чисел
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; using namespace std; int main(){...

Не работает функция по причине temp'a. Не знаю как исправить
void Mass_Function_Replace(double massive, int n) { double temp; for(int i =0; i &lt; n-1; i++) {...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru