Что не правильно в программе Задача такова: написать программу, которая по заданному...

0 голосов
26 просмотров

Что не правильно в программе
Задача такова: написать программу, которая по заданному числу выдает название месяца. Заранее спасибо


Информатика (235 баллов) | 26 просмотров
0

а что в ней не так работает?

Дан 1 ответ
0 голосов

//Вы принимаете введенный символ в char, а в switch пытаетесь использовать двузначные числа (10, 11, 12). Даже если вы ввели "11", то в Char приходит только первый введенный символ, т.е "1", и выводится соответственно "январь". Чтобы использовать двузначные числа, нужно использовать переменную с другим типом данных, например int или string.

//Также я ввел поддержку русского языка в консоль, у меня во всяком случае консоль по умолчанию не поддерживает русские символы

//Еще я убрал переменную С, так как не понял, зачем вы ее вообще ввели (она нигде не используется)

#include
#include

using namespace std;

int main()
{
setlocale(LC_ALL, "Russian");

string b;
int a;

cin » a;

switch (a)
{
case 1: b = "январь"; break;
case 2: b = "февраль"; break;
case 3: b = "март"; break;
case 4: b = "апрель"; break;
case 5: b = "май"; break;
case 6: b = "июнь"; break;
case 7: b = "июль"; break;
case 8: b = "август"; break;
case 9: b = "сентябрь"; break;
case 10: b = "октябрь"; break;
case 11: b = "ноябрь"; break;
case 12: b = "декабрь"; break;
default: b = "Ошибка!"; break;
}

cout « endl « b « endl;
return 0;
}


image
image
(13.4k баллов)