Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/29: Рейтинг темы: голосов - 29, средняя оценка - 4.79
8 / 7 / 3
Регистрация: 09.10.2014
Сообщений: 165

Условие для пропуска не целых чисел

02.05.2016, 14:25. Показов 5626. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вылетело из головы как пропускать не целые числа , нужно условие этого самого пропуска , например ввожу числа , и там есть 0,2 , цикл пропустит его и будет ждать только ввода целого (int) ,условие не могу вспомнить , буду рад помощи.Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.05.2016, 14:25
Ответы с готовыми решениями:

Нерабочее условие if, для пропуска части цикла
Программа для вычисления формулы Коркорэна, при работе программы в условие после проверки тело условия не выполняется:L:cry: Код: ...

Для целого числа N=1313 найти общее количество пар целых чисел x и y, для которых выполняется условие 7x+2y=N
Для целого числа N=1313 найти общее количество пар целых чисел x и y, для которых выполняется условие 7x+2y=N.

Написать шаблоны функций для для вычисления суммы произведений двух соседних чисел для трех целых чисел и в одномерном массиве целых чисел
Написать шаблоны функций для для вычисления суммы произведений двух соседних чисел для трех целых чисел и в одномерном массиве целых чисел:...

10
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
02.05.2016, 15:19
Ну, например, если в числе есть запятая и после нее есть цифры не равные нулю, то это не целое число.
Надеюсь, порядок числа, типа E-02, при вводе чисел не допустим.
0
8 / 7 / 3
Регистрация: 09.10.2014
Сообщений: 165
02.05.2016, 15:20  [ТС]
Цитата Сообщение от palva Посмотреть сообщение
Надеюсь, порядок числа, типа E-02, при вводе чисел не допустим
да , недопустим .
ну а само условие как выглядеть будет ?
0
8 / 7 / 3
Регистрация: 09.10.2014
Сообщений: 165
06.05.2016, 18:05  [ТС]
Может как-то через приведение типов ?
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
06.05.2016, 18:36
C++
1
2
3
4
5
6
7
8
// в строке ввода только целое число, перед которым могут быть пробельные символы, + или -.
int a;
while (!(cin >> a) || (cin.peek() != '\n'))
{
    cin.clear();
    while (cin.get() != '\n');
    cout << "Input error! Retry input" << endl;
}
0
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
06.05.2016, 18:39
Лучший ответ Сообщение было отмечено DEVILD_Roma как решение

Решение

C++
1
2
3
4
5
6
    int x;char c;
    (cin>>x).get(c);
    if(c=='.')
        cout<<"Not integer";
    else
        cout<<x;
1
18 / 17 / 22
Регистрация: 03.05.2016
Сообщений: 105
06.05.2016, 18:49
Лучший ответ Сообщение было отмечено DEVILD_Roma как решение

Решение

По мне, так самый простой вариант
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main(void) 
{
    double a;
 
    cout << "Input a:\na = "; 
    cin >> a;
 
    if ( (int)(a) == a)
        cout << "+1" << endl;
 
    return 0;
}
1
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
06.05.2016, 18:58
ТС использует для отделения дробной части запятую, а не точку. Если ввод языка C++ позволяет с этим справиться, то надо помочь ему как-то переключиться на запятую. Лично я не знаю, как и даже не знаю, возможно ли.
0
18 / 17 / 22
Регистрация: 03.05.2016
Сообщений: 105
06.05.2016, 19:06
Если запятая, то как вариант вводить всё в строку, разделить по пробелам на числа, потом посимвольно считать до запятой и проверить '0' следующие элементы до пробела или нет, если да, то перевести строку в тип int.
Это не так сложно, сколько долго.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
06.05.2016, 19:21
Цитата Сообщение от palva Посмотреть сообщение
ТС использует для отделения дробной части запятую, а не точку.
Для ТС - это, в любом случае, неправильный ввод. Смотри код в 5 посте.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
06.05.2016, 19:30
nd2, Ну если у него сразу после числа идет конец строки, то это вариант.
Но лучше если ТС напишет подробности и выложит свой код, как у него организован ввод. Тогда можно будет предметно ответить, какой должен быть код для проверки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.05.2016, 19:30
Помогаю со студенческими работами здесь

Для данных двух целых чисел вычислить сумму всех целых чисел, которые находятся между ними
Для данных двух целых чисел вычислить сумму всех целых чисел, которые находятся между ними.помогите с практикой

Для данных двух целых чисел вычислить сумму всех целых чисел, которые находятся между ними
Для данных двух целых чисел вычислить сумму всех целых чисел, которые находятся между ними.помогите с практикой

Найти максимальное из 4 целых чисел с помощью процедуры для 2 целых чисел. В чем ошибка?
найти максимальное из 4 целых чисел с помощью процедуры для 2 целых чисел var a,b,c,d,max:integer; Procedure...

Как распределить 6 произвольных целых чисел на 2 группы так, чтобы выполнялось условие
Добрый вечер, подскажите, как распределить 6 произвольных целых чисел на 2 группы так, чтобы выполнялось условие |sum1&gt;sum2|, которое...

Напечатать таблицу для перевода чисел из двоичного кода в десятичный для целых чисел от 0 до N
Помогите написать программу, пожалуйста Добавлено через 21 час 0 минут :):):)


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru