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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2008, 20:25   #1
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
Вопрос Задача с помощью функции switch по C++

Подскажите что на что нужно делить чтобы удовлетворить условию или каким лучше способом решить задачу:
Дан год. Вывести на экран название животного, символизирующего этот год по восточному календарю.
Many man вне форума Ответить с цитированием
Старый 03.12.2008, 14:21   #2
necky
Пользователь
 
Аватар для necky
 
Регистрация: 11.08.2007
Сообщений: 69
По умолчанию

Код:
 #include <conio.h>
 #include <stdio.h>
 #include <string.h>
 #include <iostream.h>
 #include <dos.h>
char *god(int year)
{
char *a;
while (year>12) year -=12;

switch(year){
case 0: a="Monkey.";break;
case 1: a="Chicken."; break;
case 2: a="Dog." ; break;
case 3: a="Pig."; break;
case 4: a="Krisa."; break;
case 5: a="Buls."; break;
case 6: a="Tiger."; break;
case 7: a="Cat."; break;
case 8: a="Dragon.";break;
case 9: a="Viper."; break;
case 10: a="Horse.";break;
case 11: a="Nanny-goat."; break;
	     }


return a;
}


void main()
{
clrscr();
puts(god(1970));
getch();
}
Советовать можно лишь в деле, в котором сам собираешься участвовать.
necky вне форума Ответить с цитированием
Старый 03.12.2008, 14:45   #3
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

это:
while (year>12) year -=12;
не то же самое, что и (year % 12)?
pu4koff вне форума Ответить с цитированием
Старый 03.12.2008, 15:33   #4
necky
Пользователь
 
Аватар для necky
 
Регистрация: 11.08.2007
Сообщений: 69
По умолчанию

Тоже вариант ...)) брать остаток от деления ...

господи pu4koff ... Вам приходилось работать с со строками произвольной длины ... у меня возникли трудноси ... прошу помощи.
Советовать можно лишь в деле, в котором сам собираешься участвовать.

Последний раз редактировалось Stilet; 14.12.2008 в 12:54.
necky вне форума Ответить с цитированием
Старый 04.12.2008, 21:00   #5
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию

Что такое puts(god(1970));
Many man вне форума Ответить с цитированием
Старый 08.12.2008, 17:44   #6
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию

Подскажите в чём ошибка, ввожу 2004 год и программа не пишет какой год
Код:
#include <conio.h>
 #include <iostream.h>
int main()
{
int year;cin>>year;
while (year>12) year -=12;
switch(year)
{
case 0:cout<<"Monkey.";break;
case 1:cout<<"Chicken."; break;
case 2: cout<<"Dog." ; break;
case 3: cout<<"Pig."; break;
case 4: cout<<"Krisa."; break;
case 5: cout<<"Buls."; break;
case 6: cout<<"Tiger."; break;
case 7: cout<<"Cat."; break;
case 8: cout<<"Dragon.";break;
case 9: cout<<"Viper."; break;
case 10: cout<<"Horse.";break;
case 11: cout<<"Nanny-goat."; break;}
getch();
return 0;
}
А вообще каким способом лучше, и каким правильнее?

Последний раз редактировалось Stilet; 14.12.2008 в 12:57.
Many man вне форума Ответить с цитированием
Старый 14.12.2008, 12:43   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

правильнее так:
Код:
#include <conio.h>
#include <iostream.h>
int main()
{
  int year;

  cin >> year;

  switch(year % 12)
  {
  case 0:
    cout << "Monkey.";
    break;
  case 1:
    cout << "Chicken.";
    break;
  case 2:
    cout << "Dog." ;
    break;
  case 3:
    cout << "Pig.";
    break;
  case 4:
    cout << "Krisa.";
    break;
  case 5:
    cout << "Buls.";
    break;
  case 6:
    cout << "Tiger.";
    break;
  case 7:
    cout << "Cat.";
    break;
  case 8:
    cout << "Dragon.";
    break;
  case 9:
    cout << "Viper.";
    break;
  case 10:
    cout << "Horse.";
    break;
  case 11:
    cout << "Nanny-goat.";
    break;
  }
  getch();
  return 0;
}
pu4koff вне форума Ответить с цитированием
Старый 10.03.2010, 16:52   #8
Богд@Н
 
Регистрация: 03.03.2010
Сообщений: 4
По умолчанию так удобней в c++

Код:
#include <iostream>
using namespace std;
int main()
{
int x;
setlocale(0,"");
cout << " введите номер месяца \n";
cin >> x ; 
switch (x)
{
case 1:
{cout <<" janvar \n" ; 
}
case 2:
{cout <<" fevral \n" break;}
case 3:
{cout <<" mart \n" ;  break;}
case 4:
{cout <<" aprel \n" ;  break;}
case 5:
{cout <<" mai \n" ;  break;}
case 6:
{cout <<" iun \n" ;  break;}
case 7:
{cout <<" iul \n" ;  break;}
case 8:
{cout <<" avgust \n" ;  break;}
case 9:
{cout <<" sentiabr \n" ;  break;}
case 10:
{cout <<" oktiabr \n" ;  break;}
case 11:
{cout <<" noiabr \n" ;  break;}
case 12 :
{cout <<" dekabr \n" ;  break;}
default:
	{cout<< "ТАКОГО МЕСЯЦА НЕ СУЩЕСТВУЕТ\n";}
}
system("PAUSE");
return 0;
}

Последний раз редактировалось Stilet; 10.03.2010 в 17:13.
Богд@Н вне форума Ответить с цитированием
Старый 10.03.2010, 17:02   #9
delphinewerklin
 
Регистрация: 21.01.2010
Сообщений: 9
По умолчанию

Код:
while (year>12) year -=12;
Этот цикл - вообще глупость полнейшая. Мой учитель за такое вообще бы сразу двояк влепил.
delphinewerklin вне форума Ответить с цитированием
Старый 02.09.2017, 10:35   #10
Tamerlan Rajabov
Новичок
Джуниор
 
Регистрация: 02.09.2017
Сообщений: 1
По умолчанию

include <iostream>
using namespace std;

int main()
{


int answer = 0;
bool var = true;
cout << "Change animal of year (from 1 to 12): ";

do{
cin >> answer;
switch (answer)
{
case 1:
cout << "Monkey";
break;
case 2:
cout << "Chicken" ;
break;
case 3:
cout << "Dog";
break;
case 4:
cout <<"Pig";
break;
case 5:
cout <<"Rat";
break;
case 6:
cout <<"Bull";
break;
case 7:
cout << "Tiger";
break;
case 8:
cout << "Cat" ;
break;
case 9:
cout << "Dragon";
break;
case 10:
cout <<"Viper";
break;
case 11:
cout << "Horse";
break;
case 12:
cout <<"Hanny goat" ;

break;
default:
cout <<"Wrong Animal"<<endl;
}

if (answer >= 1 && answer <= 12)
var = false;
} while (var);

return 0;
}

Последний раз редактировалось Tamerlan Rajabov; 02.09.2017 в 10:37.
Tamerlan Rajabov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить с помощью функции автоматического вычисления итогов общий итог внизу таблицы prikolist Microsoft Office Excel 2 01.12.2008 13:10
как определить адрес значения, полученного с помощью функции ВПР? profik777 Microsoft Office Excel 5 21.11.2008 14:59
Поиск точного значения с помощью функции БИЗВЛЕЧЬ THE_ENGINEER Microsoft Office Excel 8 23.07.2008 11:37
Рассчитать полином с помощью функции. Паскаль. Nexx Помощь студентам 8 04.12.2007 22:19
Паскаль. задача с помощью FOR TO DO Маринуська Помощь студентам 7 29.10.2007 18:49