NPRG031 Programování 2/Zápočtový test Holan (2022)

Pokračování základního kursu programování pro studenty 1. ročníku bakalářského studia informatiky a učitelství informatiky. Výuka bezprostředně navazuje na předmět PRG030 Programování I výkladem dalších algoritmů a jejich programové realizace, postupů a technik užívaných při tvorbě programů. Posluchači se seznámi se základy objektového programování a práce v současných vývojových prostředích. Předpokládají se vstupní znalosti v rozsahu předmětu PRG030 Programování I.
lexajan

NPRG031 Programování 2/Zápočtový test Holan (2022)

Příspěvek od lexajan »

Jsou dána dvě data ve tvaru den měsíc rok, tzn. každé datum je zadáno jako trojice celých čísel. Všech šest čísel je na standardním vstupu uvedeno na jednom řádku, čísla jsou od sebe oddělena mezerami. Obě zadaná data jsou z období platnosti našeho současného Gregoriánského kalendáře, tedy od 15.10.1582 dále (maximálně do konce roku 2500). Obě data jsou zadána korektně, první z nich je starší než druhé. Program určí, kolik dní uplynulo nebo uplyne mezi oběma daty. Výsledkem vypsaným na standardní výstup bude jedno celé číslo - odpovídající počet dní.

Jednotlivé měsíce v roce mají po řadě 31, 28 (nebo 29), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 dní. V Gregoriánském kalendáři je přestupný každý rok, jehož číslo je násobkem 4, s výjimkou celých století, která přestupná nejsou. Roky, jejichž letopočet je dělitelný 400, ovšem přestupné jsou, ačkoliv to jsou celá století. Tedy například roky 1900 a 2100 nejsou přestupné, zatímco rok 2000 přestupný byl.

Upozornění:
Není povoleno získat výsledek tak, že byste celé zkoumané období procházeli po jednotlivých dnech. V ReCodExu sice za takové řešení můžete získat plný počet bodů, ale takto získané body vám budou dodatečně odečteny.

Upozornění 2:
Pro řešení nesmíte použít modul datetime, time, ani jinou knihovnu umožňující práci s daty. Na druhou stranu můžete takovou knihovnu použít k tomu, abyste si připravili data pro testování Vašeho programu.

Příklad 1:

Vstup:

1 1 2007 3 1 2007
Odpovídající výstup:

2
Příklad 2:

Vstup:

2 2 2000 2 2 2001
Odpovídající výstup:

366
Odpovědět

Zpět na „PRG031 Programování II“