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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Yaroslav7
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 6
#1

проверка введенного значения - C++

24.04.2010, 21:35. Просмотров 1381. Ответов 3
Метки нет (Все метки)

Подскажите пожалуйста, хочу реализовать проверку на введенное значение, заметил если получаемой переменной с консоли ставить тип int то при введении буквы или запятой идет бесконечный цикл, поэтому использую char, но тогда появляется вопрос как преобразовать char в int

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main() 
{ 
cout << endl << "Введите номер правильного ответа (1 или 2 или 3) и нажмите ENTER : ";
char otvs ; cin >> otvs; 
 
for ( ; ; )//бесконечный цикл, который прерывается при правильном выборе ответа
    {
        if ((otvs=='1')||(otvs=='2')||(otvs=='3'))
        break;
        else 
        {cout << "\n !!!ERROOR!!! не тот вариант ответа, должно быть 1 или 2 или 3 \n" << "введите правильный вариант ответа на вопрос : ";
        cin >> otvs;}   
    }
 
int otv;
otv = atoi(otvs);
    
}
Пытаюсь испльзовать atoi но выдает ошибку: error C2664: atoi: невозможно преобразовать параметр 1 из 'char' в 'const char *'
1> Для преобразования из целого типа в указатель требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2010, 21:35     проверка введенного значения
Посмотрите здесь:

Проверка введенного значения. Является ли оно числовым - C++
Если цифры в числе идут в порядке возрастания, то проверка успешна, если же в порядке убывания, то появляется ошибка bool is_int(string...

Проверка введенного числа на чётность - C++
Написать программу, которая проверяет, является ли введенное пользователем целое число четным. Хэлп ми плз )

Проверка введенного текста на правильность - C++
Здравствуйте, Каким образом можно реализовать проверку введенного текста, пользователем с консоли, на правильность. Например юзер вводит...

Проверка на положительность введенного числа - C++
Написать программу проверки на положительность введенного числа с оператором if

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

Проверка невхождения введенного числа в диапазон от 0 до 5 - C++
3)Написать программу работы с условным оператором if в соответствии с номером своего варианта. Написать программу проверки не вхождения...

Проверка сортировки введенного с клавиатуры массива - C++
Написать программу, которая проверяет, представляют ли элементы введенного с клавиатуры массива возрастающую последовательность....

Проверка введенного url адреса на корректность - C++
Здравствуйте, требуется ваша помощь не могли бы подсказать как организовать проверку введенного url адреса на корректность? есть...

Проверка на ошибку введенного выражения(строки) - C++
7. Пусть в выражении используются простые переменные, явно записанные константы целого типа и одна из арифметических операций ( +, -, * ...

Ввод и проверка правильности введенного пароля - C++
Код не мой взят из учебника. #include &lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;cstring&gt; using std::cout;using std::endl;using...

Проверка адреса файла, введенного с клавиатуры - C++
Мне нужно ввести адрес файла с клавиатуры и что бы проверяло, есть он или нет!!! Если есть, что бы выводило его на экран(но вывод я уже...

Проверка корректности введенного пароля - Ошибка strcmp - C++
Решил воспользоваться strcmp, чтобы проверить правильность введенного пароля, но вместо этого код не хочет компилироваться. В чем проблема,...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.04.2010, 21:46     проверка введенного значения #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main() 
{ 
cout << endl << "Введите номер правильного ответа (1 или 2 или 3) и нажмите ENTER : ";
char otvs ; cin >> otvs; 
 
for ( ; ; )//бесконечный цикл, который прерывается при правильном выборе ответа
        {
                if (otvs>='1' && otvs<='3')
                break;
                else 
                {cout << "\n !!!ERROOR!!! не тот вариант ответа, должно быть 1 или 2 или 3 \n" << "введите правильный вариант ответа на вопрос : ";
                cin >> otvs;}   
        }
 
int otv=otvs-'0';// вот здесь в otv цифра 1-3, которую Вы вводили
return 0;        
}
PointsEqual
ниначмуроФ
834 / 518 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
24.04.2010, 21:51     проверка введенного значения #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int main()
{
cout << endl << "Введите номер правильного ответа (1 или 2 или 3) и нажмите ENTER : ";
int otvs ;
cin >> otvs;
 
for ( ; ; )//бесконечный цикл, который прерывается при правильном выборе ответа
        {
            if (!cin.good()){
                cin.clear();
                cin.ignore(numeric_limits<streamsize>::max(),'\n');
            }
                if ((otvs==1)||(otvs==2)||(otvs==3))
                break;
                else
                {cout << "\n !!!ERROOR!!! не тот вариант ответа, должно быть 1 или 2 или 3 \n" << "введите правильный вариант ответа на вопрос : ";
                cin >> otvs;}
        }
 
cout<< otvs;
 
 
}
Yaroslav7
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 6
25.04.2010, 06:59  [ТС]     проверка введенного значения #4
Спасибо большое,
попробую!
Yandex
Объявления
25.04.2010, 06:59     проверка введенного значения
Ответ Создать тему
Опции темы

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