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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
#1

цикл switch - C++

20.07.2013, 03:05. Просмотров 1400. Ответов 11
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma hdrstop
#include <iostream>
#include <windows>
 
using namespace std;
void main()
{
int a;
cin >> a;
switch(a)
{
case '1','3','5','7','9':
cout << "Нечетное.\n";
break;
case '2','4','6','8':
cout << "Четное.\n";
break;
case '10':
cout << "Четное.\n";
break;
}
system("Pause");
}
В чем моя ошибка? На 2,4,6,8 ну и вообще не реагирует вот на 10, все хорошо. И еще вопрос можно ли вообще вот так.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2013, 03:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос цикл switch (C++):

Цикл с встроенным Switch (вычислить значение произведения) - C++
есть произведение, его нужно посчитать 3-мя разными способами, используя разные циклы - do, for и while, чтобы выбор цикла так же...

Как сделать, чтобы switch работал как цикл? - C++
Как сделать что бы switch работал как цикл ? Ну то есть: switch (n) case 1:break; {newfile1 (); } case 2:break;{newfile2 (); ...

Оптимальная конструкция switch-case-while / while-switch-case - C++
Имеется конструкция типа: switch() { case 1: while() { ... }

Switch case внутри switch case - C++
Привет всем! Нужна помощь. Пишу калькулятор с консольным меню. Так вот, используется цикл while, внутри которого у меня switch...

While{switch{switch{break;}}} break выходит из while - C++
В общем необходимо конструкцию switch запускать в цикле, в каждом case X: стоит свой break;, да бы выполнился один case, а не все. Проблема...

Почему цикл на при 1 уходит в бесконечный цикл? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int x=0, y=0,...

11
Vlad_IT
1439 / 345 / 17
Регистрация: 03.04.2010
Сообщений: 2,095
20.07.2013, 03:11 #2
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
#pragma hdrstop
#include <iostream>
#include <windows>
 
 
using namespace std;
void main()
{
    int a;
    cin >> a;
    switch(a)
    {
        case 1:
        case 3:
        case 5:
        case 7:
        case 9:
            cout << "Нечетное.\n";
        break;
        case 2:
        case 4:
        case 6:
        case 8:
            cout << "Четное.\n";
        break;
        case 10:
            cout << "Четное.\n";
        break;
    }
    system("Pause");
}
2
duhast_vladisla
Заблокирован
20.07.2013, 03:32 #3
C++
1
2
3
4
5
6
switch(a % 2)
{
    case 1: "нечетное";
        break;
    default: "четное";
}
2
Crypt0
0 / 0 / 0
Регистрация: 16.07.2013
Сообщений: 1
20.07.2013, 10:15 #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>
    using namespace std;
int main()
    {
        int a;
        cin >> a;
                      if(a<=10)
{
        switch(a)
{
        case 1:;
            case 3:;
            case 5:;
            case 7:;
            case 9: cout << "Nechetnoe"<<endl; break;
default: cout << "chetnoe"<< endl;
    
}
}
else  cout << "error"<<endl;
system("Pause");
return 0;
}
Думаю, что можно расширить до скольки тебе нужно.
0
-=ЮрА=-
Заблокирован
Автор FAQ
20.07.2013, 10:30 #5
Bend3r, в одном флаконе свитч и простое условие
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
34
35
36
37
38
39
40
41
#include <cmath>
#include <iostream>
using namespace std;
 
int main()
{
    int i;
    int arr[] = {3, 4, -6, 7, 11};
    for(i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
    {
        cout<<"Число : "<<arr[i]<<endl;
        cout<<"\tПроверка простым условием : "<<endl;
        if( arr[i] % 2 )
            cout<<"Число нечётное"<<endl;
        else
            cout<<"Число чётное"<<endl;
 
        cout<<"\tПроверка switch : "<<endl;
        switch(abs(arr[i]))
        {
        case 1:
        case 3:
        case 5:
        case 7:
        case 9:
            cout<<"Число нечётное"<<endl;
            break;
        case 0:
        case 2:
        case 4:
        case 6:
        case 8:
            cout<<"Число чётное"<<endl;
            break;
        default:
            cout<<"Число не из диапазона 0...9"<<endl;
            break;
        }
    }
    return 0;
}
2
Миниатюры
цикл switch  
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,386
Записей в блоге: 2
Завершенные тесты: 1
20.07.2013, 10:36 #6
C++
1
2
const char* answers[] = {"четное", "не четное"};
std::cout << answers[n & 1] << std::endl;
2
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
20.07.2013, 10:52 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
std::cout << &"не четное"[!(i & 1) * 3] << std::endl;
3
Vlad_IT
1439 / 345 / 17
Регистрация: 03.04.2010
Сообщений: 2,095
20.07.2013, 15:46 #8
lazybiz, Kastaneda, -=ЮрА=-, я может ошибаюсь, но кажется автор хотел узнать как правильно пишется конструкция switch, а не как проверить число на четность?
2
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
20.07.2013, 15:49 #9
Vlad_IT, совершенно верно.
Цитата Сообщение от Bend3r Посмотреть сообщение
В чем моя ошибка?
Ошибка в том, что ты вводишь цифры не как символы (char), а как целые числа (int). Т.е. должно быть так:
C++
1
2
3
...
case 5:
...
Без кавычек.
1
-=ЮрА=-
Заблокирован
Автор FAQ
20.07.2013, 16:36 #10
Vlad_IT, ты у меня свича не видишь?
0
Vlad_IT
20.07.2013, 16:46
  #11

Не по теме:

-=ЮрА=-, вижу, но пример далеко не для начинающих

0
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
20.07.2013, 20:16  [ТС] #12
Я знаю как устроить проверка четное, нечетное. Мне просто интересно было как организовать в 1 case, множество значений.
0
20.07.2013, 20:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2013, 20:16
Привет! Вот еще темы с ответами:

Цикл: цикл for вообще никак не воспринимается транслятором - C++
Пишу программу, которая производит различные действия с одномерным массивом. Возникла следующая проблема: цикл for вообще никак не...

Задание на цикл с параметром и цикл с постусловием - C++
Помогите пожалуйста написать программу с этими циклами. 1. Вычислить и напечатать таблицу значений функции Z= (e^-x)sinx для 0&lt;=x&lt;=П,...

Цикл for/Цикл while Помогите срочно пожалуйста... - C++
1.Вычислить и вывести на экран в виде таблицы значения функции F от x1 до x2 с шагом dx. где a, b и c - действительные числа. 2.Цикл...

Цикл с параметром и цикл с условием - C++
1. Составить программу вычисления суммы первых 10 непарных чисел 2. Дано числовой ряд и некоторое число &quot;епсила&quot;. Найти сумму...


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

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

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