Вопрос задан 14.07.2023 в 10:46. Предмет Информатика. Спрашивает Мартынов Владимир.

Помогите Написать алгоритм нахождения числа дней в месяце, если даны: Номер месяца n – целое число

иа, равное 1 для високосного года и равное 0 в противном случае. На с++ используя оператор выбора вот код ( но ошибку выдает)#include #include using namespace std;int main(){setlocale(LC_ALL,"Rus"); int n,a;n>0;n<=12;cout<<"Введите месяц "<cin>>n;cout<<"Введите высакосный год ";cin>>a;switch (a,n){case 0:{ if(n=1 && n=3 && n=5 && n=7 && n=8 && n=10 && n=12) {cout <<"31 день"< } else if (n=4 && n=6&& n=9 && n=11) {cout <<"30 дней"< } else (n=2){ cout<<"28 дней"; } break;}case 1:{ if(n=1 && n=3&& n=5 && n=7&& n=8&&n=10&& n=12) {cout <<"31 день"< } else (n=4 && n=6&& n=9 && n=11) {cout <<"30 дней"< } else (n=2){ cout<<"29 дней"; } break;}}return 0;}
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Савиновских Анастасия.

Ответ:

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "Rus");

int n, a;

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

cin >> n;

cout << "Введите высакосный год ";

cin >> a;

switch (a) {

case 0: {

 if (n == 1 || n == 3 || n == 5 || n == 7 || n == 8 || n == 10 || n == 12) {

  cout << "31 день";

 }

 else

  if (n == 4 || n == 6 || n == 9 || n == 11) {

   cout << "30 дней";

  }

  else {

   cout << "28 дней";

  }

 break;

}

case 1:

{

 if (n == 1 || n == 3 || n == 5 || n == 7 || n == 8 || n == 10 || n == 12) {

  cout << "31 день";

 }

 else

  if (n == 4 || n == 6 || n == 9 || n == 11) {

   cout << "30 дней";

  }

  else {

   cout << "29 дней";

  }

 break;

}

}

return 0;

}

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

I see a few issues in your code. Let's go through them step by step and fix them:

  1. Incorrect condition in n > 0 and n <= 12: The code seems to have a misunderstanding of how to use the conditions. Instead, we should check whether n is greater than 0 and less than or equal to 12, like this: (n > 0 && n <= 12).

  2. Incorrect usage of cin: The code should use the >> operator instead of &gt;&gt;. Similarly, cout should be used instead of &lt;&lt;.

  3. Logical operator errors: The code uses = instead of == to check for equality in the if and else if statements. Additionally, there should be no condition in the else statements. We can simply use else.

  4. Comma operator misuse: The usage of the comma operator in the switch statement is incorrect. Instead of (a,n), we should use just n.

Here's the corrected C++ code for finding the number of days in a month:

cpp
#include <iostream> using namespace std; int main() { setlocale(LC_ALL, "Rus"); int n, a; cout << "Введите месяц: "; cin >> n; cout << "Введите высокосный год: "; cin >> a; switch (n) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: { cout << "31 день"; break; } case 4: case 6: case 9: case 11: { cout << "30 дней"; break; } case 2: { if (a == 1) { cout << "29 дней"; } else { cout << "28 дней"; } break; } default: { cout << "Неправильный номер месяца"; break; } } return 0; }

With these corrections, the code should work as expected and give you the number of days in the specified month.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос