Liczba dni w miesiącu (rok nieprzestępny)

Zadanie 5 z 9 · rozdział 3Trudność: 1 z 3iftablicewalidacja

Treść zadania

Wczytaj numer miesiąca m. Zakładając rok nieprzestępny, wypisz liczbę dni w tym miesiącu:

  • 31 dni: styczeń (1), marzec (3), maj (5), lipiec (7), sierpień (8), październik (10), grudzień (12),
  • 30 dni: kwiecień (4), czerwiec (6), wrzesień (9), listopad (11),
  • 28 dni: luty (2).

Jeśli m nie jest w zakresie 1–12, wypisz:
Niepoprawny numer miesiąca.

Dane wejściowe

  • 1 linia: m — liczba całkowita, $0 \le m \le 1000$

Dane wyjściowe

Jedna linia: liczba dni albo komunikat o błędzie.

Przykład

Wejście
2
Wyjście
28

Potrzebujesz teorii?

Zasady obowiązujące w rozdziale 3

Zadania w tym rozdziale dotyczą walidacji i obliczeń na datach w kalendarzu gregoriańskim.

Konwencje wspólne:

  • Każde zadanie to osobny program: czyta standardowe wejście i wypisuje wynik na standardowe wyjście.
  • Liczby wczytuj z osobnych linii, w kolejności z opisu. Data jest zawsze podawana jako trzy liczby: dzień, miesiąc, rok.
  • Komunikaty wypisuj dokładnie jak w treści (kropki, polskie znaki, wielkość liter, spacje).
  • Jeśli zadanie mówi „nie wypisuj nic” — program kończy się bez żadnego wyjścia.
  • Program nie wypisuje komunikatów typu „Podaj liczbę:”. Tekst podany w input("…") jest ignorowany przez sprawdzarkę.
  • We wszystkich zadaniach obowiązuje kalendarz gregoriański (także dla lat sprzed 1582 roku). Rok jest przestępny, gdy jest podzielny przez 4 i nie jest podzielny przez 100, albo gdy jest podzielny przez 400 (np. 2024 i 2000 są przestępne, a 2023 i 1900 — nie). Luty ma w roku przestępnym 29 dni, a w nieprzestępnym 28.

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
1
Oczekiwane wyjście
31

Test 2

Nie uruchomiono
Wejście
13
Oczekiwane wyjście
Niepoprawny numer miesiąca.

Test 3

Nie uruchomiono
Wejście
4
Oczekiwane wyjście
30

Test 4

Nie uruchomiono
Wejście
12
Oczekiwane wyjście
31

Test 5

Nie uruchomiono
Wejście
0
Oczekiwane wyjście
Niepoprawny numer miesiąca.

Test 6

Nie uruchomiono
Wejście
9
Oczekiwane wyjście
30

Test 7

Nie uruchomiono
Wejście
11
Oczekiwane wyjście
30

Test 8

Nie uruchomiono
Wejście
7
Oczekiwane wyjście
31

Test 9

Nie uruchomiono
Wejście
8
Oczekiwane wyjście
31
Uruchom z własnymi danymi