Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 13
1

Реализовать класс исключения в данном коде

04.06.2013, 23:45. Показов 1803. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите реализовать класс исключения в данном коде.
Задание: Реализуемая функция должна генерировать подходящие исключения. Обработку исключений нужно выполнять главной функцией, которая должна демонстрировать обработку всех перехватываемых исключений. Функция обязана выполнять проверку передаваемых параметров и генерировать исключение в случае ошибочных. Можно реализовать функцию со спецификацией throw(), либо без спецификации исключений, либо с конкретной спецификацией с подходящим стандартным исключением...
Вот собственно исходный код программы, который нужно преобразовать в исключения:
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
/* Class of area triangle with exception*/
 
// Include files
#include "stdafx.h"
#include <iostream>
#include <cmath>
#include "conio.h"
#include <stdexcept>
#include <exception>
 
// Using namespace
using std::cout;
using std::cin;
 
float dl(float x1, float x2, float y1, float y2)
{
    float d;
d=sqrt((y2-y1)*(y2-y1)+(x2-x1)*(x2-x1));
return d;
}
float p(float a,float b, float c)
{ 
    return (a+b+c)/2;
}
// Main function
int main ()
{
    setlocale( LC_ALL, "Russian" );
    float x[3],y[3]; int i;
 for(i=0;i<3;i++)
{
    cout << " Введите координаты " << i+1 << "...";
 cin >> x[i] >> y[i];
}
float a,b,c;
 a=dl(x[0],x[1],y[0],y[1]);
 b=dl(x[1],x[2],y[1],y[2]);
 c=dl(x[2],x[0],y[2],y[0]);
float pp;
pp=p(a,b,c);
cout << " Площадь треугольника равна " << sqrt(pp*(pp-a)*(pp-b)*(pp-c));
getch();
return 0;
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2013, 23:45
Ответы с готовыми решениями:

Как реализовать деструктор в данном коде?
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,...

Реализовать класс исключения. Написать функцию, которая может генирировать три типа исключений
Нужно реализовать класс исключения. Написать функцию, которая может генирировать три типа...

Реализовать класс Bank (найти и исправить ошибки и недочёты в коде)
Что тут не так? Подскажите пж! 2 дня сижу и не понимаю как сделать этот чёртов банк! #include...

Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)
Создать базовый класс «буква», такой, что: a) он содержит перечислительная тип, что обозначает 4...

1
Заблокирован
05.06.2013, 00:24 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// throw.cpp: определяет точку входа для консольного приложения.
//
// Include files
#include "stdafx.h"
#include <iostream>
#include <cmath>
#include "conio.h"
#include <stdexcept>
#include <exception>
 
// Using namespace
using std::cout;
using std::cin;
 
float dl(float x1, float x2, float y1, float y2) 
{
    if (x1==x2 && y1==y2)
        throw 1;
    float d;
d=sqrt((y2-y1)*(y2-y1)+(x2-x1)*(x2-x1));
return d;
}
float p(float a,float b, float c)
{ 
    return (a+b+c)/2;
}
// Main function
int main ()
{
    setlocale( LC_ALL, "Russian" );
    float x[3],y[3]; int i;
 for(i=0;i<3;i++)
{
    cout << " Введите координаты " << i+1 << "...";
 cin >> x[i] >> y[i];
}
float a,b,c;
try
{
 a=dl(x[0],x[1],y[0],y[1]);
 b=dl(x[1],x[2],y[1],y[2]);
 c=dl(x[2],x[0],y[2],y[0]);
}
catch(int f)
{
    cout<<"Одинаковые координаты точек...";
    getch();
    exit(0);
}
float pp;
pp=p(a,b,c);
cout << " Площадь треугольника равна " << sqrt(pp*(pp-a)*(pp-b)*(pp-c));
getch();
return 0;
    }
1
05.06.2013, 00:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2013, 00:24
Помогаю со студенческими работами здесь

Пользовательский класс String: реализовать копирование строки и вывод её на консоль (найти ошибки в коде)
Привет. Мне нужен ответ: я дурак, или это c++ подвел (естественно первое:)). Я решил...

Реализовать пользовательский класс Matrix (найти причины возникновения ошибок в коде и исправить эти ошибки)
Доброго времени суток,задание написать класс Matrix,все вроде бы понятно,но почему-то моя матрица...

Класс: Написать класс с использованием объекта класса Integer с обработкой исключения.
Написать класс с использованием объекта класса Integer с обработкой исключения (блок try-catch)

Реализовать класс "Счётчик" (Найти и исправить ошибки в коде)
Вот условие: &quot;Цифровой счетчик, это переменная с ограниченным диапазоном. Значение которой...


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

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