Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
#1

Придумать 10 задач на обработку исключительных ситуаций - C++

21.01.2014, 14:05. Просмотров 941. Ответов 24
Метки нет (Все метки)

Здравствуйте! Помогите, пожалуйста, придумать 10 задач на обработку исключительных ситуаций.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 14:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Придумать 10 задач на обработку исключительных ситуаций (C++):

Необходимо реализовать обработку исключительных ситуаций в программе - C++
Необходимо реализовать обработку исключительных ситуаций в программе, в котором реализуется циклический алгоритм вычисления вектора...

Обработка исключительных ситуаций - C++
Всем доброго времени суток, не понимаю как сделать обработку исключительной ситуации когда при вводе количества строк, вводится не целое, а...

Обработка исключительных ситуаций - C++
Здравствуйте, друзья. Подскажите, пожалуйста, как можно при помощи try-throw-catch "защититься" от ввода пользователем "не того типа...

Обработка исключительных ситуаций - C++
Нужна одна работающая программа из 2. 1) Наберите текст программы приведенного примера обработки исключительных ситуаций и...

Обработка исключительных ситуаций! - C++
Составьте программу на языке С++. Обрабатывающую исключительную ситуацию, которая может возникнуть в ходе выполнения программы. ...

Обработка исключительных ситуаций - C++
Мне нужно было создать шаблонный класс и написать обработку исключающих ситуаций. Вот, что я сделал #pragma once #include <iostream>...

24
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
21.01.2014, 14:57  [ТС] #16
Enotniy, что-то я не понял... Мы же Н дали константу 0 и тут ее вводим. Что выдаст компилятор?
0
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:59 #17
Цитата Сообщение от Toda Посмотреть сообщение
Придумал еще одну исключтельную ситуацию: чтоб построить треугольник, должно выполнятся условие
a+b>c
это как раз не исключение
точнее не стандартное исключение, если вы его сами опишите (создадите свой класс исключений) тогда да

Добавлено через 1 минуту
Toda,
Цитата Сообщение от Enotniy Посмотреть сообщение
1

C++
1
2
3
int N;
cout << "Input N";
cin>>N;
0
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
21.01.2014, 15:00  [ТС] #18
Итак, хочу немного подытожить. Из 10 задач есть 7:
1) Деление на ноль
2) Ввод числа вместо буквы
3) Нет места на диске, не удается записать
4) Выход за границы массива(матрицы). Матрица 2х2, мы, к примеру, перемножаем элементы (3;3)
5) Не удается открыть файл для записи
6) Неверный тип входных параметров(вместо Int пишем double)
7) Строим треугольник, а+б>c

Добавлено через 58 секунд
Enotniy,
C++
1
2
3
int N;
cout << "Input N";
cin>>N;
что в этом блоке не так?
0
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 15:04 #19
Toda, а как же overflow

Добавлено через 1 минуту
Цитата Сообщение от Toda Посмотреть сообщение
что в этом блоке не так?
если ввести не Int - в N упадет мусор
0
SatanaXIII
Супер-модератор
Эксперт С++
5640 / 2675 / 252
Регистрация: 01.11.2011
Сообщений: 6,572
Завершенные тесты: 1
21.01.2014, 15:06 #20
Цитата Сообщение от Toda Посмотреть сообщение
Придумал еще одну исключтельную ситуацию: чтоб построить треугольник, должно выполнятся условие
a+b>c
Это не исключительная ситуация. Она не бросается исключениями. Это просто условие задачи.
0
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 15:07 #21
Toda,
bad_alloc
bad_cast
bad_exception
bad_function_call
bad_typeid
bad_weak_ptr
logic_error
runtime_error
domain_error
future_error
invalid_argument
length_error
out_of_range
overflow_error
range_error
system_error
underflow_error
bad_array_new_length

вот по сути все возможные СТАНДАРТНЫЕ исключения в с++
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,386
Записей в блоге: 2
Завершенные тесты: 1
21.01.2014, 17:06 #22
Цитата Сообщение от Toda Посмотреть сообщение
Итак, хочу немного подытожить. Из 10 задач есть 7:
1) Деление на ноль
2) Ввод числа вместо буквы
3) Нет места на диске, не удается записать
4) Выход за границы массива(матрицы). Матрица 2х2, мы, к примеру, перемножаем элементы (3;3)
5) Не удается открыть файл для записи
6) Неверный тип входных параметров(вместо Int пишем double)
7) Строим треугольник, а+б>c
Ни один из перечисленных пунктов не кидает С++ исключения.
0
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
21.01.2014, 23:16  [ТС] #23
Kastaneda, то есть как это ни один из?!(( Сами же ребята писали, ладно я неопытен.. Но модератор же..
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,386
Записей в блоге: 2
Завершенные тесты: 1
21.01.2014, 23:49 #24
Toda, под исключениями я подразумеваю исключения С++ (которые перечислил Enotniy в посте выше). В твоем списке, который я процитировал в предыдущем посте, ни один из случаев не кинет С++'ного исключения. Исключения будут, но другие. Например при делении на 0 произойдет хардварное исключение, которое отлавливается/обрабатывается на уровне ОС. POSIX позволяет его обрабатывать, WinAPI тоже, но стандартные средства С++ тут бесполезны.

Простой пример
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
int main ()
{
    int a = 1, b = 0;
 
    try {
        int c = a / b;
    } catch (...) { // пробуем поймать вообще все, что можно
        std::cout << "Exception" << std::endl; // эта строка никогда не будет исполнена
    }
 
    return 0; // до сюда мы тоже никогда не доберемся
}
чтобы убедится в правдивости комментариев в коде достаточно скомпилировать и запустить этот код.
0
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
22.01.2014, 01:00  [ТС] #25
Kastaneda, а можешь подсказать тогда другие 10 задач?
0
22.01.2014, 01:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 01:00
Привет! Вот еще темы с ответами:

Обработка исключительных ситуаций - C++
Правильно ли тут я обрабатываю исключения? #pragma once #include &lt;iostream&gt; #include &quot;stdio.h&quot; #include &quot;stdlib.h&quot; #include...

Обработка исключительных ситуаций - C++
Помогите сделать обработку исключительных ситуаций вот мой код: #include &lt;iterator&gt; #include &quot;conio.h&quot; #include &lt;iostream&gt; ...

Обработка исключительных ситуаций - C++
Доброго времени суток уважаемы программисты и начинающие программисты :) Скажите, почему появляется ошибка на 6й строке? Задача стоит...

Обработка исключительных ситуаций - C++
Код программы,Что та не робит помогите #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include&lt;conio.h&gt; using namespace std; int...


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

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

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