0077 - Ultima Cifra Para
Sursa: [1]
Cerinţa
Să se scrie un program care să determine ultima cifră pară a unui număr natural citit de la tastatură.
Date de intrare
Programul va citi de la tastatură un număr natural.
Date de ieşire
Programul va afişa pe ecran ultima cifră pară a numărului citit.
Restricții și precizări
- numărul citit va fi mai mic decât 2.000.000.000
- dacă numărul citit nu conține cifre pare se va afișa valoarea -1
Exemplu
- Intrare
- 1265
- Ieșire
- 6
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line>
def determina_ultima_cifra_para(numar):
# Inițializăm o variabilă care va reține ultima cifră pară ultima_cifra_para = None
# Parcurgem cifrele numărului de la dreapta la stânga while numar > 0: cifra = numar % 10 if cifra % 2 == 0: # Dacă cifra este pară ultima_cifra_para = cifra break # Oprim căutarea, am găsit ultima cifră pară numar = numar // 10
return ultima_cifra_para
def main():
# Citim numărul de la tastatură numar = int(input("Introduceți un număr natural: "))
# Verificăm dacă numărul este valid if numar <= 0: print("Numărul introdus nu este valid. Introduceți un număr natural.") else: # Determinăm ultima cifră pară ultima_cifra_para = determina_ultima_cifra_para(numar)
# Afisăm rezultatul if ultima_cifra_para is not None: print("Datele sunt introduse corect.") print(f"Ultima cifră pară a lui {numar} este {ultima_cifra_para}.") else: print(f"Lipsește ultima cifră pară a lui {numar}.")
if __name__ == "__main__":
main()
</syntaxhighlight>
Rezolvare ver. 2
<syntaxhighlight lang="python" line>
- Citim numărul de la tastatură
numar = int(input("Introduceți un număr natural: "))
- Verificăm dacă numărul este valid
if numar <= 0:
print("Numărul introdus nu este valid. Introduceți un număr natural.")
else:
# Inițializăm o variabilă care va reține ultima cifră pară ultima_cifra_para = None
# Parcurgem cifrele numărului de la dreapta la stânga while numar > 0: cifra = numar % 10 if cifra % 2 == 0: # Dacă cifra este pară ultima_cifra_para = cifra break # Oprim căutarea, am găsit ultima cifră pară numar = numar // 10
# Afisăm rezultatul if ultima_cifra_para is not None: print("Datele sunt introduse corect.") print(f"Ultima cifră pară a lui {numar} este {ultima_cifra_para}.") else: print(f"Lipsește ultima cifră pară a lui {numar}.")
</syntaxhighlight>