Что не правильно в программе Задача такова: написать программу, которая по заданному числу выдает название месяца. Заранее спасибо
Answers & Comments
ЯковПервый
//Вы принимаете введенный символ в char, а в switch пытаетесь использовать двузначные числа (10, 11, 12). Даже если вы ввели "11", то в Char приходит только первый введенный символ, т.е "1", и выводится соответственно "январь". Чтобы использовать двузначные числа, нужно использовать переменную с другим типом данных, например int или string.
//Также я ввел поддержку русского языка в консоль, у меня во всяком случае консоль по умолчанию не поддерживает русские символы
//Еще я убрал переменную С, так как не понял, зачем вы ее вообще ввели (она нигде не используется)
#include <iostream> #include <locale>
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; }
Answers & Comments
//Также я ввел поддержку русского языка в консоль, у меня во всяком случае консоль по умолчанию не поддерживает русские символы
//Еще я убрал переменную С, так как не понял, зачем вы ее вообще ввели (она нигде не используется)
#include <iostream>
#include <locale>
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;
}