0177 - Bisect
Cerință
Să se scrie un program care verifică dacă un an calendaristic precizat este bisect. Un an este bisect dacă se divide cu 4 și nu se divide cu 100 sau se divide cu 400.
Date de intrare
Programul citește de la tastatură numărul n, reprezentând anul.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran mesajul bisect, dacă anul este bisect, sau nebisect, în caz contrar. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări
0 < n < 5000
Exemplul 1
- Intrare
- 2000
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- bisect
Exemplul 2
- Intrare
- 1990
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- nebisect
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1">
- Definim o funcție pentru a valida dacă numerele se încadrează în intervalul impus
def validare(n):
if 0 < n < 5000: return True else: return False
- Definim o funcție pentru a determina daca anul este bisect
def bisect(n):
if n % 4 == 0 and n % 100 != 0 or n % 400 == 0: print("bisect") else: print("nebisect")
- Începem programul principal
if __name__ == '__main__':
n = int(input("Introduceți anul: ")) # Citim anul de la tastatură și îl convertim în numar întreg if validare(n): # Verificăm dacă numărul este valid print("Datele de intrare corespund restricțiilor impuse.") # Dacă da, afișăm un mesaj corespunzător bisect(n) # Apelăm funcția pentru a determina daca anul este bisect else: print("Datele de intrare nu corespund restricțiilor impuse.") # Dacă nu, afișăm un mesaj corespunzător
</syntaxhighlight>