Вывести название дня недели по его номеру

Задачи и их решения / Вывести название дня недели по его номеру

 

Задача Вывести название дня недели по его номеру.

Программа представляет собой сопоставление числового значения и соответствующей ему текстовой строки. Для реализации таких конструкций чаще всего используется оператор ветвления switch.

 
Реализация на 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
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
  int day;
  system("chcp 1251");
  system("cls");
  cout << "Введите номер дня недели: ";
  cin >> day;
  switch (day)
  {
    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;
    default: cout << "Неверно введен день недели"; break;
  }
  cin.get(); cin.get();
  return 0;
}

 
Результат выполнения
День недели по его номеру
День недели по его номеру


Назад: Задачи и их решения

Комментариев к записи: 5

  • 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<stdio.h>
    #define SIZE 7 

    int main(void)

    {
      int day;
      
      const char *week_days[SIZE] = {"Sunday", "Monday", "Tuesday", "Wednesday",    "Thursday", "Friday", "Saturday"};

      printf("Enter the number of the day of the week: ");
      while(scanf("%d", &day) == 1)
      {
         if(day < 0 || day > 7)
         {puts("Enter the number between 1 and 7: ");}
          else 
       { 
        printf("%s\n", week_days[day-1]);
       
        printf("Enter another number (q to quit): ");}

       }

      putchar('\n');

      return(0);

     }

  • Зачем так усложнять со switch?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    #include <iostream>
    #include <string>

    using namespace std;

    int main() {
      setlocale(0, "RU");
      int Day;
      string Week[7] = { "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Воскресенье" };
      cout << "Введите день недели: ";
      cin >> Day;
      while (Day > 7) {
        Day -= 7;
      }
      cout << Week[Day - 1];
      return 0;
    }

  • Владислав
    //Microsoft Visual Studio 2019 Console Application
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #include <iostream>
    #include <string>
    using namespace std;

    int main()
    {
      setlocale(LC_ALL, "Russian");
      string Week[7] = {"Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Воскресенье"};
      int day;
      cout << "Введите номер дня недели: ";
      cin >> day;
      cout << Week[day-1]<< endl;
      //system("pause");
      return 0;
    }

  • strojakril.prom.ua
    Напишите программу, которая выводит название дня недели по номеру дня введённому с клавиатуры. Исключите несуществующие номера дней недели и снабдите программу запросом об окончании работы. Просто пока скажите программу нада писать с использование оператора Case?

    • Елена Вставская
      Если нет ограничений в задании, то мне кажется, удобнее делать такую программу с использованием switch-case.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *