Форум программистов, компьютерный форум CyberForum.ru

Исключения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массив: Найти произведение двух верхнеугольных матриц, которые храняться в упакованном виде в одномерных массивах. http://www.cyberforum.ru/cpp-beginners/thread895551.html
Найти произведение двух верхнеугольных матриц,которые храняться в упакованном виде в одномерных масивах.
C++ Решить интеграл Необходимо решить интеграл в среде С++ 1 S sin(3x^2-5сos(x))dx с точностью E=10^-4.Шаги подбирать по принципу Рунге o Вообще не могу понять как такое сделать( http://www.cyberforum.ru/cpp-beginners/thread895546.html
Просьба к тем, у кого есть visual c++ 2012 C++
Проблема в том, что я сделал код, который должен поддерживаться вижуалкой. Но из-за технических причин писал я не в ней. В коде я использовал getline , который, как мне сказали не поддерживаться в вижуалке старее 2012.Ниже мой код, пожалуйста, те у кого эта версия есть, проверьте поддерживается ли код. НУЖНО СРОЧНО! /** Структура: Футбол 1) ФИО футболиста; 2) Возраст футболиста; 3)...
C++ Простая программка (найти ошибку в коде)
Не могу понять в чем проблема #include<iostream> #include<conio.h> using namespace std; class ARR {
C++ Считать из файла числовые переменные построчно http://www.cyberforum.ru/cpp-beginners/thread895514.html
Приветствую. Для начала - общее описание того, что мне нужно. Есть файл. В нем построчно записаны числа. Но вот чисел там может быть разное количество - значит, статический массив мне не подойдет. Итог мне нужен примерно такой: (строка, считанная переменная). Было у меня два варианта: - считывать все переменные подряд (использовала scanf)...но тут возникла проблема, что запомнить номер...
C++ Напишите программу, которая выводит на экран четыре и более следующих друг за другом без учета промежутков гласных букв Такое вот задание: Есть строка, состоящая из слов, разделенных любым количеством пробелов. Напишите программу, которая выводит на экран четыре и более следующих друг за другом без учета промежутков гласных букв. Есть начинания, но без продолжения подскажите как действовать дальше #include "stdafx.h" #include <iostream> #include <string.h> using namespace std; подробнее

Показать сообщение отдельно
Jadzia
 Аватар для Jadzia
0 / 0 / 0
Регистрация: 23.03.2013
Сообщений: 16
08.06.2013, 18:54     Исключения
Нужно что бы программка при вводе данных, если строка пуста, то выкидывала исключение...
Вот функция где расписана обработка. Программка компилируется, дает ввести данные, но потом выкидывает.. Подскажите, пожалуйста, где ошибка.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
ostream& operator << (ostream &wyjscie, WyborLekc const& w)
{
 wyjscie <<"Wyklad Obieralny: \n Nazwa Wykladu/Przedmiotu: "<<w.wname<<"\n"<<"Temat Wykladu: "<<w.wytheme<<"\n"<<"Ile trwa: "<<w.timego<<"\n"<<"W jakoj sale: "<<w.room<<"\n"<<"Ile osob chodzi: "<<w.penumber
 <<endl;
 cout<<"\n";
   return wyjscie;
}
 
istream& operator >> (istream &wejscie,  WyborLekc& w)
{
    cout<<"Wpisz przez spacje dane Wykladu Obieralnego: Nazwa Wykladu/Przedmiotu, Temat Wykladu, Ile trwa, W jakoj sale, Ile osob chodzi: \n"<<endl;
   wejscie >>w.wname>>w.wytheme>>w.timego>>w.room>>w.penumber;
   cout<<"\n";
   return wejscie;
 
}
 
 
#include <iostream>
#include <sstream>
#include <cstring>
#include <conio.h>
#include <stdio.h>
#include <cstdlib>
 
using namespace std;
 
#include "Wyklady.h"
#include "ludzi.h"
 
char* name=new char [25];
char* wname=new char[25];
char* srname=new char [25];
char* protheme=new char [40];
char* kierunek=new char[24];
char* przedmiot=new char[24];
char* temamwykl=new char[24];
char* wytheme=new char[40];
char* quality=new char[25];
int age, rok, ocena,timego,room, penumber;
 
 
    WyborLekc r(wname,wytheme,timego,room,penumber);
    ObiazatLekc b(wname,wytheme,quality,timego,room);
 
void WyborLekc::Wwedenie_dannych_c_iskluch()
{
 
try{
    cin>>r;
    if(strlen(wname)==0) throw "Oshibka! Ne zapolneno pole nazwania wybor lekcji!";
    if(strlen(wytheme)==0) throw "Oshibka! Ne zapolneno pole nazwania temy wybor lekcji!";
    if(room==0) throw "Oshibka! Ne zapolneno pole komnaty wybor lekcji!";
    if(timego==0) throw "Oshibka! Ne zapolneno pole wremeni wybor lekcji!";
    if(penumber==0) throw "Oshibka! Ne zapolneno pole kol-va ludej wybor lekcji!";
}
 
catch(char* expwname){
 
    cout<<expwname<<endl;
 
if(strlen(wname)==0)  {
    cout<<"\n"<<"Wpisz Nazwe znowu: "<<"\n"<<endl;
    cin>>r.wname;
    }
 
if(strlen(wname)==0) {
    cout<<"\n"<<"Wpisz Nazwe tematu znowu: "<<"\n"<<endl;
    cin>>r.wytheme;
}
 
if(room==0) {
    cout<<"\n"<<"Wpisz Sale znowu: "<<"\n"<<endl;
    cin>>r.room;
}
 
if(timego==0) {
    cout<<"\n"<<"Wpisz Czas znowu: "<<"\n"<<endl;
    cin>>r.timego;
}
 
if(penumber==0) {
    cout<<"\n"<<"Wpisz kol-vo znowu: "<<"\n"<<endl;
    cin>>r.penumber;
}
 
}
}
 
void ObiazatLekc::Wwedenie_dannych_c_iskluch()
{
    try {
        cin>>b;
    if(strlen(wname)==0) throw "Oshibka! Ne zapolneno pole nazwania obiazat lekcji!";
    if(strlen(wytheme)==0) throw "Oshibka! Ne zapolneno pole nazwania temy obiazat lekcji!";
    if(strlen(quality)==0) throw "Oshibka! Ne zapolneno pole komnaty obiazat lekcji!";
    if(room==0) throw "Oshibka! Ne zapolneno pole wremni obiazat lekcji!";
    if(timego==0) throw "Oshibka! Ne zapolneno pole kol-va ludej  obiazat lekcji!";
}
 
catch(char* expwname){
 
    cout<<expwname<<endl;
 
if(strlen(wname)==0) {
    cout<<"\n"<<"Wpisz Nazwe znowu: "<<"\n"<<endl;
    cin>>b.wname;
}
 
if(strlen(wytheme)==0) {
    cout<<"\n"<<"Wpisz Nazwe tematu znowu: "<<"\n"<<endl;
    cin>>b.wytheme;
}
 
if(strlen(quality)==0) {
    cout<<"\n"<<"Wpisz znowu: "<<"\n"<<endl;
    cin>>b.quality;
}
 
if(room==0) {
    cout<<"\n"<<"Wpisz Sale znowu: "<<"\n"<<endl;
    cin>>b.room;
}
 
if(timego==0) {
    cout<<"\n"<<"Wpisz Czas znowu: "<<"\n"<<endl;
    cin>>b.timego;
}
 
}
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru