Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2014, 18:42   #1
shelter09
 
Регистрация: 09.10.2014
Сообщений: 7
По умолчанию Switch,case.Возможность повторения.

Задание такое:
Разработать алгоритм решения задачи. Алгоритм должен включать в себя возможность повторения вычислений по желанию пользователя. Составить программу.
Вот мой вариант:
25.Написать программу, которая по введенному номеру месяца года выдавала бы номер квартала года, к которому этот месяц относится
Программу я написал,но не понимаю как сделать возможность повторения вычислений,помогите пожалуйста.
Код:
#include <iostream>
#include <Windows.h>
using namespace std;
int main()
{
	SetConsoleOutputCP(1251);
	int choice;
	cout << "введите номер месяца года -->";
	cin >> choice;
	switch (choice)
	{
	case 1:cout << "1 квартал \n"; break;
	case 2:cout << "1 квартал \n"; break;
	case 3:cout << "1 квартал \n"; break;
	case 4:cout << "2 квартал \n"; break;
	case 5:cout << "2 квартал \n"; break;
	case 6:cout << "2 квартал \n"; break;
	case 7:cout << "3 квартал \n"; break;
	case 8:cout << "3 квартал \n"; break;
	case 9:cout << "3 квартал \n"; break;
	case 10:cout << "4 квартал \n"; break;
	case 11:cout << "4 квартал \n"; break;
	case 12:cout << "4 квартал \n"; break;
	default:cout << "Введен недопустимый номер месяца года \n";
	}
}
Ах да,можно как-то объединить 3 кейса в одну строчку,чтобы код покомпактней был?

Последний раз редактировалось Stilet; 04.11.2014 в 19:18.
shelter09 вне форума Ответить с цитированием
Старый 04.11.2014, 18:59   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Код:
#include <iostream>
#include <Windows.h>

using namespace std;

int main()
{
  SetConsoleOutputCP(1251);
  int choice;
  char yn;
  
  do
  {
    cout << "введите номер месяца года -->";
    cin >> choice;
    switch (choice)
    {
      case 1:
      case 2:
      case 3:cout << "1 квартал \n"; break;
      case 4:
      case 5:
      case 6:cout << "2 квартал \n"; break;
      case 7:
      case 8:
      case 9:cout << "3 квартал \n"; break;
      case 10:
      case 11:
      case 12:cout << "4 квартал \n"; break;
      default:cout << "Введен недопустимый номер месяца года \n";
    }
    
    cout << "ещё разок? [y/n] -->";
    cin >> yn;
  } while ((yn == 'y') || (yn == 'Y'));
}
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 04.11.2014, 19:37   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Просто оставлю это здесь:
Код:
#include <iostream>

using namespace std;

int main()
{

	int choice=6;
	switch ((choice+2)/3)
	{
	case 1:cout << "1 квартал \n"; break;
	case 2:cout << "2 квартал \n"; break;
	case 3:cout << "3 квартал \n"; break;
	case 4:cout << "4 квартал \n"; break;
	default:cout << "Введен недопустимый номер месяца года \n";
	}
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.11.2014, 20:27   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,865
По умолчанию

Так тут switch не нужен даже.
Arigato вне форума Ответить с цитированием
Старый 04.11.2014, 20:43   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Так тут switch не нужен даже.
лаба по switch-case, в заголовке топика.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 04.11.2014, 21:09   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,865
По умолчанию

В задании про них ничего не сказано.
Arigato вне форума Ответить с цитированием
Старый 04.11.2014, 21:19   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
В задании про них ничего не сказано.
ты прав, молодец.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемещение из case 1 в case 2(switch(), язык Си) Павел_95 Помощь студентам 13 11.01.2013 14:18
C++ switch case frozen__11 Общие вопросы C/C++ 6 11.11.2012 23:16
Убрать возможность повторения в анкете на javascripte Алекс_027 Помощь студентам 0 26.10.2012 12:44
switch и case symrak Общие вопросы C/C++ 2 24.01.2012 15:17
switch - case 1 to 5 boris-blade Общие вопросы .NET 1 12.03.2010 07:13