0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 5
1

Проверка на ввод числа

13.01.2013, 16:29. Показов 4554. Ответов 9
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
do 
    { 
        cin.clear(); 
        cin.sync(); 
        cout << "Введите N: ";
        cin>>N;
        if(cin.fail())
            cout<<"Неверный формат!\n";
        else if ( N <= 0 ) 
            cout << "N должно быть больше нуля!\n";
        else if ( N - (int) N>0 )
            cout << "N должно быть целым!\n";
        
        }while(cin.fail()||N<=0||N-(int)N>0);
Проверка не доделана.
Нужно чтобы при вводе N=7,8 программа написала,что нужно выбрать одно из введенных чисел и заново предложила ввести N.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2013, 16:29
Ответы с готовыми решениями:

Проверка на ввод числа
Приветствую! Ребят возникла такая проблемка, я новичок и очень много ещё не знаю, прежде я конечно...

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

Проверка на на правильный ввод числа
Подскажите простой способ проверки на символ int proverka(int n) { while (n &lt; 0)//??? { cout...

Проверка на корректный ввод числа
Вводится число, если оно введено верно, нужно вывести hello world это количество раз, а если...

9
75 / 60 / 24
Регистрация: 03.06.2011
Сообщений: 309
13.01.2013, 16:44 2
с делением на 10 поизгаляйтесь

Добавлено через 4 минуты
вернее N умножается на 10, применяется операция %, в итоге раскладывается на 2 числа и прога просит ввести одно из них. так может быть?
0
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 5
13.01.2013, 16:52  [ТС] 3
Я имею ввиду число-запятая-число,а не число-точка-число(ввод вещественных чисел).
0
424 / 389 / 113
Регистрация: 21.09.2012
Сообщений: 913
13.01.2013, 16:56 4
Nastya_Z, какой тип у переменной N? int, float, double?
0
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 5
13.01.2013, 16:59  [ТС] 5
Double,но этот тип используется только для проверки является ли N целым числом.
0
75 / 60 / 24
Регистрация: 03.06.2011
Сообщений: 309
13.01.2013, 17:02 6
при вводе через запятую компилятор может ошибку показать или это будет то же что и ввод через точку
0
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 5
13.01.2013, 17:04  [ТС] 7
Он считывает только первое число.
0
75 / 60 / 24
Регистрация: 03.06.2011
Сообщений: 309
13.01.2013, 17:17 8
тогда подключайте строки и на вводе будет заполнятся строка, потом в строке искаться число
0
424 / 389 / 113
Регистрация: 21.09.2012
Сообщений: 913
13.01.2013, 17:18 9
Может как-то так сделать.
C++
1
2
3
4
5
6
7
8
9
10
double n, n2;
char chr;
 
cout << "Введите число: ";
cin >> n;
cin.get(chr);
if (chr == ',')
    cin >> n2;
 
cin.clear();
Т.е. прочитать первое число, запятую и следующее число (если была введена запятая)
0
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 5
13.01.2013, 17:22  [ТС] 10
Цитата Сообщение от Дмитрий 93 Посмотреть сообщение
тогда подключайте строки и на вводе будет заполнятся строка, потом в строке искаться число
А можно как-нибудь проще сделать? Просто в данной задачи нужно обойтись без строк и "левых" функций(IsDigit(),IsAlpha()).

Добавлено через 2 минуты
Цитата Сообщение от v.a.l.i.d Посмотреть сообщение
Может как-то так сделать.
C++
1
2
3
4
5
6
7
8
9
10
double n, n2;
char chr;
 
cout << "Введите число: ";
cin >> n;
cin.get(chr);
if (chr == ',')
    cin >> n2;
 
cin.clear();
Т.е. прочитать первое число, запятую и следующее число (если была введена запятая)
Спасибо)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.01.2013, 17:22
Помогаю со студенческими работами здесь

Проверка на корректный ввод числа
Мне нужно вывести hello world то количество раз, какое напишет пользователь, но если введено что-то...

Проверка на ввод C++
алгоритм-1: 1)ввод x (например 1) 2)вывод y 3)расчет заново (y/n) (работает) алгоритм -2:...

Проверка на ввод
Есть переменная целочисельная ввожу ее с клавиатуры , но когда ввожу букву нажимаю enter вываливает...

Проверка на ввод
в borland С нужно осуществить проверку на ввод, пользователь дожлен ввести число, как проверить...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru