Автор - 5845198

Напишите программу, которая вводит с клавиатуры номер месяца и день,

и определяет, сколько дней осталось до Нового года. При вводе неверных

данных должно быть выведено сообщение об ошибке. Считается, что год

невисокосный.
Через case.

Ответ

Автор - mribraew

#include <iostream>

using namespace std;


int main()

{

setlocale(LC_ALL, "Russian");

short int year[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

int month = 0, day = 0, daysUntilNewYear = 0;

while (month == 0)

{

 cout << "Введите месяц: ";

 cin >> month;

 if (month < 1 || month > 12)

 {

  month = 0;

  cout << "В году лишь 12 месяцев, повторите ввод" << endl;

 }

}

while (day == 0)

{

 cout << "Введите день: ";

 cin >> day;

 if (day > year[month - 1] || day < 1)

 {

  day = 0;

  cout << "В выбранном месяце " << year[month - 1] << " дней, повторите ввод" << endl;

 }

}


for (int i = month - 1; i < 12; i++)

{

 daysUntilNewYear += year[i];

}

daysUntilNewYear -= day - 1;

cout << "До Нового Года осталось " << daysUntilNewYear << " дней"<< endl;

system("pause");

return 0;

}

Если через case делать, то будет больше кода и он будет менее понятен - смысла в этом нет, поэтому сделал через while.

Ответы и объяснения

Сервис носит ознакомительный характер, вся информация, а в частности вопросы и ответы, которые задают и отвечают пользователи.
© 2026 Все права защищены Политика конфиденциальности Контакты
search points attachment profile arrow left arrow right star heart verified symbols equation arrow-down question mark check menu accountancyadministrationagriculturalalgebraallarabicartart_musicbelarusbelarus_altbiologybusinesscatalachemistrychineseeconomicsegzamenglishentrepreneurshipenvironmentethicseuskarafirst_aidfrenchgalegogeographygeologygeometrygermangrammarhealthhistoryindia_langindonesian_langinformaticsitalianjapanesekazachkazach_altkoreanlanguagelatinlawlife_scienceliteraturelogicmathematicsmusicnigerian_langother_languagesotherspedagogicsphilosophyphysical_educationphysicspoliticspsychologyreligionrpa_langrussianrussian_altsciencesecurityskillssocial_sciencesociologyspanishstatisticstechnologytourismtrafficukrainianukrainian_altukrainian_literaturewos_civilisation accountancyadministrationagriculturalalgebraall_1arabicartart_music_2belarusbelarus_altbiologybusiness_2catalachemistry_1chineseeconomicsexam_3englishentrepreneurshipenvironment_2ethicseuskarasecurity_1frenchgalegogeography_4geology_4geometrygermangrammarhealthhistoryindia-langindonesian-langinformaticsitalianjapanesekazachAsset 230koreanlanguagelatinlawlife-scienceliteraturelogic_2mathematicsmusicnigerian-langotherlanguagesother_1pedagogicsphilosophyphysical_educationphysicspoliticspsychologyreligion_1rpa-langrussianrussian_altsciencesecurity_3_mskills_1allsocial_science_5_msociologyspanishstatisticstechnologytourismtrafficukrainianukrainian_altukrainian_literaturewos_civilisation