Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/120: Рейтинг темы: голосов - 120, средняя оценка - 4.85
 Аватар для fragnat
11 / 11 / 5
Регистрация: 17.12.2009
Сообщений: 77

Старо японский календарь

20.12.2009, 17:31. Показов 24042. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Прошу помочь, подскажите при помощи чего можно избежать громозкого кода.
Погуглил нашел только код написаный на Pascal.
Задача:
В старояпонском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Написать программу, которая позволяет ввести номер года и печатает его название по старояпонскому календарю. Справка: 1996 г. — год крысы — начало очередного цикла.
Самый наверно примитивный вариант решения, это прописать на каждый год своё имя от 0 и до 2009, а как можно это сделать проще? Каким оператором?

На паскале это выглядит как то так(на правильность не проверял):
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Program Goroskop;
Var Year : Integer;
Begin
 Write('Введите год '); ReadLn(Year);
   CASE Year MOD 12 OF
    0 : WriteLn('Год Обезьяны');
    1 : WriteLn('Год Петуха');
    2 : WriteLn('Год Собаки');
    3 : WriteLn('Год Свиньи');
    4 : WriteLn('Год Крысы');
    5 : WriteLn('Год Коровы');
    6 : WriteLn('Год Тигра');
    7 : WriteLn('Год Зайца');
    8 : WriteLn('Год Дракона');
    9 : WriteLn('Год Змеи');
   10 : WriteLn('Год Лошади');
   11 : WriteLn('Год Овцы')
  END;
END.
Спасибо.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.12.2009, 17:31
Ответы с готовыми решениями:

японский календарь
В японском календаре был принят 60-ти летний цикл, состоящий из пяти 12-ти летних подциклов. Внутри подцикла года носили названия...

Старо-японский календарь
Недавно только поступил на программирование. С делфи еще совсем не освоился, был бы рад хоть какой - то помощи. Всего 8 заданий, 3 уже...

Старо-японский календарь
В старо-японском календаре был принят 60-летний цикл, состоявший из 12-летних подциклов. Подциклы обозначались названиями цвета: зеленый,...

2
UNIX-way
 Аватар для Delphin_KKC
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
20.12.2009, 17:49
Лучший ответ Сообщение было отмечено fragnat как решение

Решение

А на С++ как-то так:
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
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    cout << "Input year: ";
    int year;
    cin >> year;
    switch (year % 12)
    {
    case 0 : cout <<"Год Обезьяны";break;
    case 1 : cout <<"Год Петуха";break;
    case 2 : cout <<"Год Собаки";break;
    case 3 : cout <<"Год Свиньи";break;
    case 4 : cout <<"Год Крысы";break;
    case 5 : cout <<"Год Коровы";break;
    case 6 : cout <<"Год Тигра";break;
    case 7 : cout <<"Год Зайца";break;
    case 8 : cout <<"Год Дракона";break;
    case 9 : cout <<"Год Змеи";break;
   case 10 : cout <<"Год Лошади";break;
   case 11 : cout <<"Год Овцы";break;
   }
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
На DevCPP 4.9.9.2 компилируется, но вместо русского языка выводит непонять что. Лень было переписывать на транслит названия.
1
 Аватар для fragnat
11 / 11 / 5
Регистрация: 17.12.2009
Сообщений: 77
20.12.2009, 18:15  [ТС]
Delphin_KKC, Спасибо всё верно!
Вот код, думаю кому-нибудь ещё пригодится
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
#include <stdio.h>
#include <locale.h>
 
int main()
{
    //  Руссифицируем
        setlocale(LC_ALL,"Rus");
    //  Вводим переменные
        int year;
    //  Введение в программу
        printf_s ("%s\n","В старояпонском календаре был принят 12-летний цикл. Годы внутри цикла носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, курицы, собаки и свиньи. Написать программу, которая вводит номер некоторого года и печатает его название по старояпонскому календарю.");
    //  Спрашиваем значения
        printf_s ("\n%s", "Введите год:  ");
        scanf_s ("%d", &year);
    //  switch
        printf_s ("%d%s",year," год, был годом ");
        switch(year % 12)
        {
        case 0: printf_s ("%s\n","обезьяны");break;
        case 1: printf_s ("%s\n","курицы");break;
        case 2: printf_s ("%s\n","собаки");break;
        case 3: printf_s ("%s\n","свиньи");break;
        case 4: printf_s ("%s\n","крысы");break;
        case 5: printf_s ("%s\n","коровы");break;
        case 6: printf_s ("%s\n","тигра");break;
        case 7: printf_s ("%s\n","зайца");break;
        case 8: printf_s ("%s\n","дракона");break;
        case 9: printf_s ("%s\n","змеи"); break;
        case 10: printf_s ("%s\n","лошади");break;
        case 11: printf_s ("%s\n","овцы");break;
        };
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.12.2009, 18:15
Помогаю со студенческими работами здесь

Старо-японский календарь
В старом японском календаре был принят 60-летний цикл. Как раз для выхода на пенсию. Он состоял из пяти 12-летних вложенных циклов. 12...

Календарь японский ...
Написать программу, которая вводит номер года нашей эры и печатать его название по старояпонскому календарю. В старояпонском календаре года...

Японский календарь
В старо-японском календаре был принят 12 летний цикл. В котором года носили именаживотных: крыса, крова, тигр, заяц, дракон, змея, лошадь,...

Старый японский календарь. паскаль.
В старо-японском календаре был принят 20-летний цикл состоящий из 5-ти 12-ти-летних подциклов. Подциклы обозначались названиями цветов:...

Календарь, похожий на Google календарь, в C++ Builder 6
Доброго времени суток. Может кто-то сталкивался с созданием календаря на неделю. Нужно чтоб календарь показывал дни недели и время с...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
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
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru