Dzień roku (liczba dni od 1 stycznia, włącznie)

Zadanie 7 z 9 · rozdział 3Trudność: 2 z 3sumowanietabliceprzestępny

Treść zadania

Wczytaj datę d, m, y i oblicz numer dnia w roku, tzn. ile dni minęło od 1 stycznia do tej daty włącznie (1 stycznia to dzień 1, 31 grudnia to dzień 365 albo 366 w roku przestępnym).

Dane wejściowe

3 liczby całkowite, każda w osobnej linii: d, m, y.

Dane wyjściowe

Jedna liczba całkowita: numer dnia w roku.

Ograniczenia

  • Podana data jest poprawna (nie musisz jej sprawdzać).
  • $1 \le y \le 9999$

Uwagi

  • Wygodnie jest skorzystać z łańcucha if/elif, w którym dla każdego miesiąca zapisujesz, ile dni roku nieprzestępnego upłynęło przed jego początkiem: styczeń 0, luty 31, marzec 59, kwiecień 90, maj 120, czerwiec 151, lipiec 181, sierpień 212, wrzesień 243, październik 273, listopad 304, grudzień 334. Do tej liczby dodaj d.
  • W roku przestępnym luty ma 29 dni, więc dla dat od 1 marca dodaj jeszcze 1.
  • Po rozdziale o pętlach możesz te sumy obliczać w pętli, dodając długości kolejnych miesięcy.

Przykład

Wejście
14
2
1482
Wyjście
45

31 dni stycznia + 14 dni lutego = 45.

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
29
2
2020
Oczekiwane wyjście
60

Test 2

Nie uruchomiono
Wejście
31
12
2021
Oczekiwane wyjście
365

Test 3

Nie uruchomiono
Wejście
31
12
2020
Oczekiwane wyjście
366

Test 4

Nie uruchomiono
Wejście
1
1
2023
Oczekiwane wyjście
1

Test 5

Nie uruchomiono
Wejście
1
3
1900
Oczekiwane wyjście
60

Test 6

Nie uruchomiono
Wejście
1
3
2000
Oczekiwane wyjście
61

Test 7

Nie uruchomiono
Wejście
15
8
2024
Oczekiwane wyjście
228

Test 8

Nie uruchomiono
Wejście
28
2
2024
Oczekiwane wyjście
59
Uruchom z własnymi danymi