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

If и case - C++

Восстановить пароль Регистрация
 
Ney4
8 / 8 / 0
Регистрация: 28.10.2011
Сообщений: 100
14.12.2011, 18:58     If и case #1
Нужно чтобы программа принимала числа от -100 до 1000. Используя if, при значении, которое не входит в этот диапазон, программа закрывается. А мне это не нужно. Если пользоваться case, то этот диапазон никак не прописать. Что посоветуете??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2011, 18:58     If и case
Посмотрите здесь:

Case C++
C++ switch i case
Case C++
C++ в case 7 - нужно сделать поиск по номеру группы, а в case 6 сортировку по имени
C++ case -> if
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
14.12.2011, 19:11     If и case #2
А на код можно посмотреть? (с if)
Vidok
 Аватар для Vidok
36 / 36 / 2
Регистрация: 03.09.2011
Сообщений: 279
14.12.2011, 19:17     If и case #3
А что вам собственно нужно? case конечно не нужен, достаточно if для такого диапазона. Если вам нужно делать что-то с числами не с диапазона то
C++
1
if(n<-100&&n>1000)
Иначе
C++
1
if(n>=-100&&n<=1000)
Ney4
8 / 8 / 0
Регистрация: 28.10.2011
Сообщений: 100
14.12.2011, 19:34  [ТС]     If и case #4
Код смогу выложить позже.


Числа нужны ИЗ диапазона. Но если ввести например -241, то программа закроется. А мне нужно чтобы игнорировался ошибочный ввод
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
14.12.2011, 19:38     If и case #5
В общем, такие программы делают примерно так
C++
1
2
3
4
5
6
7
8
if(x>=-100 && x<=1000)
{
   //действия для чисел из диапазона
}
else
{
  //сообщение об ошибке или другие действия
}
либо можно требовать ввода данных до тех пор, пока не будут введены числа из диапазона.

Без условия задачи целиком трудновато понять, какой именно способ вам нужен
Vidok
 Аватар для Vidok
36 / 36 / 2
Регистрация: 03.09.2011
Сообщений: 279
14.12.2011, 19:55     If и case #6
Тогда ждем кода, без него сложно что-то сказать.
Ney4
8 / 8 / 0
Регистрация: 28.10.2011
Сообщений: 100
14.12.2011, 21:05  [ТС]     If и case #7
Сам код большой. Ну допустим так:

Код
cout<<"напишите число от -100 до 1000";
cin>>s;
if(s>=-100 && s<=1000) { programma(); }
else { cout<<"неверное число"; }
Всё, на этом программа заканчивается. Если опустить else, то она закрывается. А нужно чтобы принимало только числа из диапазона, остальные игнорировались.
Vidok
 Аватар для Vidok
36 / 36 / 2
Регистрация: 03.09.2011
Сообщений: 279
14.12.2011, 21:41     If и case #8
То есть, если я правильно понял, вы хотите что бы при некорректном вводе программа просила повторить ввод корректно, а не заканчиваться?
Ney4
8 / 8 / 0
Регистрация: 28.10.2011
Сообщений: 100
14.12.2011, 22:02  [ТС]     If и case #9
Желательно чтобы не просила, а просто не реагировала, пока не напишешь правильно
Vidok
 Аватар для Vidok
36 / 36 / 2
Регистрация: 03.09.2011
Сообщений: 279
14.12.2011, 22:12     If и case #10
C++
1
2
3
cout<<"напишите число от -100 до 1000";
while(cin>>s){
if(s>=-100 && s<=1000) { programma(); exit(0);} else continue;}
Не проверял, но попробуйте такой вариант.
Ney4
8 / 8 / 0
Регистрация: 28.10.2011
Сообщений: 100
14.12.2011, 22:25  [ТС]     If и case #11
А можно например, написать?
s<=1000 s>=-100
А потом
case s: programma(); break;
Vidok
 Аватар для Vidok
36 / 36 / 2
Регистрация: 03.09.2011
Сообщений: 279
14.12.2011, 22:30     If и case #12
Не знаю, не сталкивался. Вам нужно что бы в switch case s было в промежутке, а switch для конкретных значений только вроде, по этому придется все значения от -100 до 1000 писать. Зачем так усложнять жизнь? Или у вас тот код не сработал?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2011, 01:20     If и case
Еще ссылки по теме:

C++ CASE
CASE(C++) C++

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

Или воспользуйтесь поиском по форуму:
ВалентинАматор
2 / 5 / 0
Регистрация: 25.02.2011
Сообщений: 140
15.12.2011, 01:20     If и case #13
Чтот типа такого.Естественно допишите что там должна ваша функция programma выполнять.Ну обращение к ней если условие if возвращает истину происходит.Вот код.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include "iostream"
 
using namespace std;
 
 
 
int main()
 
{
setlocale(LC_ALL ,"Russian");
char q='y';
int s;
 
 
while(q=='y')
{
cout << " Введите значение s от -100 до 1000 " << endl;
cin >> s;
if((s>=-100) && (s<=1000))
{
    programma();
 
cout << " Повторить ввод?(y/n) " << endl;
 
}
else
{
cout << " Не правильное число.Повторить ввод?(y/n) " << endl;
cin >> q;
}
}
 
return 0;
Yandex
Объявления
15.12.2011, 01:20     If и case
Ответ Создать тему
Опции темы

Текущее время: 02:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru