2987 - Buletin
Cerință[edit | edit source]
Se dă un număr natural n cu exact 13 cifre reprezentând un cod numeric personal. Să se afișeze anul, luna și ziua nașterii deținătorului.
Date de intrare[edit | edit source]
Programul citește de la tastatură numărul natural n, reprezentând codul.
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran numărul A, reprezentând anul nașterii, L, reprezentând luna nașterii și Z, reprezentând ziua nașterii, separate prin spații. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări[edit | edit source]
n este un număr natural cu exact 13 cifre; A, L, Z, vor fi afișate sub forma AA LL ZZ. Dacă unul dintre numere x este de o cifră, se va afișa sub forma 0x.
Exemplul 1[edit | edit source]
- Intrare
- 5070521071145
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 07 05 21
Exemplul 2[edit | edit source]
- Intrare
- 2961103042367
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 96 11 03
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1"> def validare(n):
# Verifică dacă numărul are 13 cifre și conține doar cifre if len(n) != 13 or not n.isdigit(): return False else: return True
def afisare_data(n):
# Extrage anul, luna și ziua din numărul dat a = n[1:3] if len(n[1:3]) == 2 else '0' + n[1] l = n[3:5] if len(n[3:5]) == 2 else '0' + n[3] z = n[5:7] if len(n[5:7]) == 2 else '0' + n[5]
# Afișează data în formatul specificat print(f"{a} {l} {z}")
if __name__ == "__main__":
# Primește input-ul de la utilizator n = input("Introduceti numarul de 13 cifre: ")
# Verifică dacă input-ul este valid și afișează rezultatul if validare(n): print("Datele de intrare corespund restricțiilor impuse.") afisare_data(n) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>