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

При вводе в функцию значения, отличного от double, выдать исключение

03.03.2016, 09:49. Показов 706. Ответов 5
Метки нет (Все метки)

помогите написать исключения в теле функции, которая обрабатывает числа типа double, в случаях деления на 0
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
double real(double a, double b)
{
    double x;
    if ((a > b) && (a != 0))
    {
        x = b / a - 9;
    }
    if ((a < b) && (b != 0))
    {
        x = (a + 9) / b;
    }
    if (a == b)
    {
        x = -81 + a;
    }
    return x;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.03.2016, 09:49
Ответы с готовыми решениями:

Как возбуждать исключение при вводе некоректного значения
Например, нужно ввести число, а пользователь вводит строку. Нужно перехватить управление и вывести...

При вводе значения выдать ряд чисел, которым заданное является средне арифметическим
Нужна программа которая при вводе значения (например 22,1) выдает ряд чисел которым заданное...

Почему при вводе в массив числа отличного от 1 и 2 все равно происходит начисление К+1
K=0; for (i=1;i&lt;=4;i++){ cout&lt;&lt;&quot;Vvedite otvet:&quot;; cin&gt;&gt;one; if ((one=1)||(one=2)) K=K+1;...

Выдать ошибку при вводе буквы
Строка состоит ТОЛЬКО из цифр. Следовательно, при вводе буквы необходимо выдать ошибку. Как это...

5
BrainOverflow
126 / 130 / 64
Регистрация: 31.03.2013
Сообщений: 556
03.03.2016, 09:56 2
KaTRiNA13, исключения (MSDN)
0
154 / 141 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
03.03.2016, 09:58 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
try 
    {
        if ((a > b) && (a != 0))
                {
                  x = b / a - 9;
                }
                 if ((a < b) && (b != 0))
                {
                  x = (a + 9) / b;
                }
               if (a == b)
               {
                x = -81 + a;
               }
    }
 
    catch(double error )// сюда передастся число, которое сгенерировал throw 
    {
        cout << "Ошибка №" <<error << " - деление на 0!!!" << endl;
                
    }
return x;
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
03.03.2016, 10:15 4
Безопасный ввод через функцию-шаблон
0
Неэпический
17806 / 10577 / 2042
Регистрация: 27.09.2012
Сообщений: 26,593
Записей в блоге: 1
03.03.2016, 11:14 5
SatanaXIII, там код заточен под определенную реализацию потоков.
нет проверок на переполнение и т.д.,
и в общем случае этот код можно выкинуть за борт.
Так что ни о каком безопасном вводе речи не идет.
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
03.03.2016, 12:22 6
Croessmah, ну как вариант для рассматривания очень даже ничего.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.03.2016, 12:22
Помогаю со студенческими работами здесь

Выдать ошибку при вводе буквы
Как добавить еще одну проверку на символы? int read( int a, int b ) { int choice; do {...

Выдать сообщение при вводе точки в TextBox
Подскажите пожалуйста. как написать код , чтобы при написание точки в TextBox1 выдавалось...

Исключение при вводе
public static void main(String args) { // TODO code application logic here int i;...

Выкидывает при вводе double
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; class swapall { private: int...


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

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

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