Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
1 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 35

Не работает switch так, как мне надо

12.08.2017, 17:23. Показов 708. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне нужно сделать 2 условия: n - не четырехзначное число или четырехзначное. Как это можно сделать именно с оператором switch? Ps ошибку выдает на строках case. Так явно делать нельзя. Но как?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main() {
    int n;
    cin>>n;
    switch(n)
    {
        case (<1000):{
            n*=1000/n;
            break;
        }
        case (>=1000&&<=9999):{
            cout<<"1";
            break;
        }
    }
  return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.08.2017, 17:23
Ответы с готовыми решениями:

Цикл не работает так как надо
Всем привет! Народ, у меня цикл в программе работает не так как надо. 1 круг цикла происходит в норме, а когда начинается 2ой он...

Код работает не так, как надо
Нужно ввести строку и слово и чтобы выводились порядковые номера слов в строке, совпадающих с введенным словом. Но по слову не ищет, только...

Работает не так как надо(классы)
Задача. Создать класс хранящий в себе инн. Проверить его на верность и вывести результат. class NIP { public: NIP(const...

10
 Аватар для MisterR
69 / 68 / 52
Регистрация: 28.10.2015
Сообщений: 388
12.08.2017, 18:00
Не для того switch создали чтобы в нем условия писать
...но если хотите
C++
1
2
3
4
5
6
7
8
9
int n = 1234;
 
    switch (n)
    {
    default:
        if (n >= 1000 & n <=9999)
            cout << "yeap" << endl;
        break;
    }
0
1617 / 1182 / 553
Регистрация: 08.01.2012
Сообщений: 4,561
12.08.2017, 18:16
так можно попробовать
C++
1
2
3
4
5
6
7
8
9
10
11
    switch (n<1000)
    {
    case:true
     {
      n*=1000/n;
      break;
     }
    default:
        if (n <=9999)
            cout << "yeap" << endl;
    }
0
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
12.08.2017, 18:18
Wlad_, можно так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n = 0;
    cin >> n;
 
    const int numCount = getNumbersAtInt( n );
    switch( numCount )
    {
        case 4:
        {
            cout << "Found";
        }
        break;
        default:
        {
            cout << "ELse";
        }
    }
0
1 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 35
12.08.2017, 18:36  [ТС]
rikimaru2013, а что означает getNumbersAtInt? Я погуглил не нашел ни этого ни numCount в роли операторов. Что-то неочень понятно, как это работает. А на компиляторе не проходит.

Добавлено через 1 минуту
MansMI, довольно интересный вариант, спасибо)
0
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
12.08.2017, 18:40
Цитата Сообщение от Wlad_ Посмотреть сообщение
Я погуглил не нашел ни этого ни numCount в роли операторов
Ну раз так, тогда точно мой вариант вам не подойдет.
0
1 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 35
12.08.2017, 18:48  [ТС]
в любом случае, спасибо)

Добавлено через 7 минут
MansMI, выдает ошибку на строке case:true
Вот мой код и ниже будет ошибка:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int main() {
    int n;
    cin>>n;
    switch (n<1000)
    {
    case:true
     {
      n*=1000/n;
      break;
     }
    default:
        if (n <=9999)
            cout <<  "0" << endl;
    }
}
8 9 C:\Users\Ãîñòü\Desktop\Untitled2.cpp [Error] expected primary-expression before ':' token
9 6 C:\Users\Ãîñòü\Desktop\Untitled2.cpp [Error] expected ';' before '{' token
-1
1617 / 1182 / 553
Регистрация: 08.01.2012
Сообщений: 4,561
12.08.2017, 18:55
case true:
0
694 / 7005 / 265
Регистрация: 11.08.2016
Сообщений: 3,947
14.08.2017, 12:04
А так?

case true:
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
14.08.2017, 14:32
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n;
 char s[32]="\0";
 
 cin>>n;
switch (strlen(itoa(n,s,10)))
     {
    case 4:
        {
            cout << "Four-digit";
           break;  
        }
        default:
        {
            cout << "Not four-digit";
        }
    }
0
1 / 1 / 0
Регистрация: 25.06.2016
Сообщений: 25
14.08.2017, 15:07
Wlad_
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
#include <iostream>
#include <windows.h>
using std::cout;
using std::cin;
 
int main()
{
    setlocale(0, "Russian");
 
    int n;
    cin >> n;
 
    switch (n >= 1000 && n <= 9999)
    {
    case false:
        cout << "Введенное число не является четырехзначным\n";
        break;
    case true:
        cout << "Введенное число является четырехзначным\n";
        break;
    }
 
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.08.2017, 15:07
Помогаю со студенческими работами здесь

Вывод из файла работает на так как надо
Привет всем) У меня проблемка.. Я делаю тест на с++ и проблема в том что последнюю строчку из файла показывает 4 раза.. подскажите как это...

С++ задача, надо зациклить, скажите что не так, ошибку выдает в switch, про точку с запятой знаю их вроде не н
{ do { char c; system(&quot;echo Есть три задачи&quot;); system(&quot;echo 1-Следование&quot;); system(&quot;echo 2-Ветвление&quot;); ...

Конструкция if.elseif.else.end работает не так как мне надо
Вот код: rim = {&quot;M&quot;, &quot;D&quot;, &quot;C&quot;, &quot;L&quot;, &quot;X&quot;, &quot;V&quot;, &quot;I&quot;} function dom(a, b) x = (a - math.fmod(a, b))/b return x end function...

При переходе к якорю, он работает не так как мне надо
В общем, при нажатии на кнопку влево или вправо всё работает, но... позиция прокрутки страницы меняется, мне надо это изменить, что бы при...

Форма не так открывается как мне надо в БД Access 2007
Помогите пожалуйста... Я создаю БД &quot;Телефонный справочник&quot; и у меня следующая проблема. Я создал макрос который при открытии БД будет...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru