Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
#1

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

28.03.2014, 14:45. Просмотров 923. Ответов 11
Метки нет (Все метки)

Помогите сделать числовой парсинг в котором пользователь вводит число , должна производится проверка допустимого числа.Если число быот допустимым программа выводит число на экран.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2014, 14:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверка допустимости введенного числа (C++):

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

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

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

Проверка введенного числа на принадлежность к числам Фибоначчи - C++
#include <iostream> #include <windows.h> #include <cmath> using namespace std; int main() { double x1=1; double x2=0; ...

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

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

11
SatanaXIII
Супер-модератор
Эксперт С++
5620 / 2655 / 247
Регистрация: 01.11.2011
Сообщений: 6,555
Завершенные тесты: 1
28.03.2014, 14:49 #2
Безопасный ввод через шаблон
0
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
28.03.2014, 15:01  [ТС] #3
SatanaXIII, думаю это не много не то, мне нужно что бы цикл перебрал данные которые введет пользователь и что бы эти числа выводила программа.
0
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
28.03.2014, 16:37 #4
Что то такое?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <stdexcept>
 
int main()
{
   std::string input;
   while (true) {
      try {
         std::cout << "Enter number: ->";
         std::cin >> input;
         long long number = std::stoll(input);
         std::cout << "Your number is " << number << "\n";
      }
      catch(std::invalid_argument& e) {
         std::cerr << "invalid_argument\n";
      }
      catch(std::out_of_range& e) {
         std::cerr << "out_of_range\n";
      }
   }
   return 0;
}
0
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
28.03.2014, 17:17  [ТС] #5
DiffEreD, вы будете смеятся, но у меня проблемка, я испльзую с4Droid и он выдает ошибку, возможности взят другую IDE у меня нет к велечайшему сожалению. Сейчас скину скрин ошибки.
0
Миниатюры
Проверка допустимости введенного числа  
DiffEreD
28.03.2014, 17:23
  #6

Не по теме:

Походу не включена или не поддерживается С++11

0
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
29.03.2014, 16:56  [ТС] #7
Компилятор у меня G++ +Bionic, есть еще GCC + Bionic и TCC и uClibs

Добавлено через 23 часа 26 минут
Такой вопрос - как сделать ограничение на цифры и буквы? Допустим разрешины "1, 2, 7,9" буквы мы не можем писать, но когда мы в строке напишем "qwefbgfs463792ks65123" то мы получим "79212"?
0
Genn55
372 / 219 / 41
Регистрация: 26.12.2012
Сообщений: 718
29.03.2014, 17:01 #8
Цитата Сообщение от DoOj Посмотреть сообщение
Такой вопрос - как сделать ограничение на цифры и буквы? Допустим разрешины "1, 2, 7,9" буквы мы не можем писать, но когда мы в строке напишем "qwefbgfs463792ks65123" то мы получим "79212"?
Попробуйте
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//#include <conio.h>
#include <iostream>
using namespace std;
 
int main()
{
cout << "Enter the number: " << endl;
double i;
cin >> i;
while (!i || cin.peek() != '\n')
{
    cin.clear();
    while (cin.get() != '\n');
    cout << "Error! Retry input\n";
    cout << "Enter the number: " << endl;
}
 
return 0;
}
0
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
29.03.2014, 21:22  [ТС] #9
помогите пожалуфста, я не пойму где у вас стоит ограничение на буквы?
Или вы используете переменную int? По этому мы получаем сообщение об ошибке?
0
Genn55
372 / 219 / 41
Регистрация: 26.12.2012
Сообщений: 718
29.03.2014, 22:47 #10
Ограничения на символы так точнее
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
cout << "Enter the number: " << endl;
double i;//может быть int
cin >> i;//Ввод
while (!i || cin.peek() != '\n')//если число или символ конца строки выводим  i
{
    cin.clear();
    while (cin.get() != '\n');//если другой символ
    cout << "Error! Retry input\n";
    cout << "Enter the number: " << endl;
}
 
return 0;
}
Будет понятнее если посмотрите
http://www.itmathrepetitor.ru/s-lekciya-9-rabota-s-potokami-v-s/
1
DoOj
3 / 3 / 0
Регистрация: 28.03.2014
Сообщений: 38
29.03.2014, 23:11  [ТС] #11
Genn55, спасибо! Но опять таки, если мы пишем буквы - то он постоянно выдает ошибку. Как задать определенныые цыфы?
"!=" - это символ "Не равно"?
И можно я поноглею, обьясните мне синтаксис функции While().
По этому поводу мне известно что while имеет условие и оператор.
то есть while(условие)оператор.
Помогите мне пожалуйста. Просто я знаю банальные языки HTML/CSS/PHP(чайник) и синтаксис Логических перемен мне трудно понимаеться.
Чем они могут отличатся? На пример for; if; while; else?
0
Genn55
372 / 219 / 41
Регистрация: 26.12.2012
Сообщений: 718
29.03.2014, 23:45 #12
Эта программа разрешает ввод только цифр.
Да "!=" - это символ "Не равно"
While(). В скобочках пишем условие выхода из цикла
C++
1
2
3
4
5
int k;
While(k != -1)//условие выхода из цикла,если введем -1 цикл завершится
{
//тело цикла что то делает
}
C++
1
2
3
4
for (int i = 0; i < 10; i++)//будет продолжаться 10 раз
{
//тело цикла что то делает
}
if,else операторы ветвления
C++
1
2
3
4
5
6
int a;
cin >> a;
if ( a != 5)//если а не равно 5 
cout >>" yes\n";
else//иначе
cout >> " no\n";
если вы хотите разрешить ввод определенных чисел или букв то вам следует использовать цепочку if,else и почитайте циклы и операторы ветвления.
1
29.03.2014, 23:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2014, 23:45
Привет! Вот еще темы с ответами:

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

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

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

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


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

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

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