Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.11.2009, 21:14   #1
sawer5
Пользователь
 
Аватар для sawer5
 
Регистрация: 07.11.2009
Сообщений: 26
Вопрос Запрет ввода символа(C++,Console)

Код:
	cout <<"Выберите размер матрицы[3 или 4] :       "; cin >> deistvie1;

	switch(deistvie1)
	{
	case 3:menu();
			switch(deistvie2)
		{   deistvie1 = 0;
			case 1: umnojenie_3_3();break;
			case 2: delenije_3_3();break;
			case 3: slojenie_3_3();break;
			case 4: vozvrat();break;
			default: cout <<"> Вы ошиблись..." << endl;vozvrat();break;
            deistvie2 = 0;
		}
	case 4:menu();
			switch(deistvie2)
		{
			case 1: umnojenie_4_4();break;
			case 2: break;
			case 3: break;
			case 4: vozvrat();break;
		}
		    
	default: 
					cout <<"> Вы ошиблись..." << endl;vozvrat();break;
	}
-Этот фрагмент кода, не даёт программе "слететь" если пользователь
ошибочно введёт не то число.А как мне быть если будет "случайно",
нажата(введена) буква?Пожалуйста подскажите выход,из сложившейся ситуации.
Вот пример того что в последствии происходит:
#include <sawer5>

Последний раз редактировалось Sazary; 11.11.2009 в 00:50.
sawer5 вне форума Ответить с цитированием
Старый 10.11.2009, 21:23   #2
paladinn
Пользователь
 
Регистрация: 19.12.2008
Сообщений: 26
По умолчанию

чтобы слететь)
Код:
#include <iostream>
using namespace std;
int main()
{
	int i ; 
	cin >> i ;
	switch(i)
	{
	case 1 : cout<<"one"<<endl;break;
	case 2 : cout<<"two"<<endl;break;
	default: cout<<"poka"<<endl; return 0;
	}
	return 0;
}
paladinn вне форума Ответить с цитированием
Старый 10.11.2009, 21:40   #3
sawer5
Пользователь
 
Аватар для sawer5
 
Регистрация: 07.11.2009
Сообщений: 26
По умолчанию

default: cout<<"poka"<<endl; return 0;//Эта строка не сработает...

"return 0" в дир. "default:" не допускается.
#include <sawer5>
sawer5 вне форума Ответить с цитированием
Старый 10.11.2009, 22:25   #4
forsaken66
Куды бечь?
Форумчанин
 
Аватар для forsaken66
 
Регистрация: 05.10.2009
Сообщений: 104
Лампочка

А если так?

Код:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
int a;
main()
{
clrscr();
cout<<"Vvedite 4islo (3,4)- ";
cin>>a;
if ((a!=3) && (a!=4))
	cout <<"Wrong input!";
    else
      {
       //bla-bla-bla
      }
getch();
return 0;
}
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
forsaken66 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрет ввода с клавиатуры букв Omedus Общие вопросы Delphi 13 16.05.2010 14:39
Запрет ввода в Stringgrid D-Snaker Помощь студентам 1 18.06.2009 08:08
запрет ввода одинаковых чисел в edit epic6 Общие вопросы Delphi 6 15.06.2009 08:31
WINDOW::CONSOLE nikleb Общие вопросы C/C++ 7 31.10.2008 17:44
Запрет ввода кирилических символов wnuks Microsoft Office Excel 1 12.07.2007 19:45