0133 - Nume Prenume
Cerința[edit | edit source]
Scrieți un program care citește de la tastatură două șiruri formate fiecare din cel mult 20 de caractere. Primul șir reprezintă numele unei persoane, iar al doilea șir reprezintă prenumele aceleiași persoane. Atât numele, cât și prenumele sunt formate doar din litere ale alfabetului englez și fiecare conține cel puțin o consoană. Programul construiește în memorie și afișează pe ecran un al treilea șir de caractere, care va conține consoanele din prenumele citit dispuse în ordinea în care apar în prenume, urmate de exact un spațiu și de numele citit.
Date de intrare[edit | edit source]
Programul citeşte de la tastatură cele două șiruri.
Date de ieșire[edit | edit source]
Programul afişează pe ecran șirul construit după regula precizată.
Exemplul 1[edit | edit source]
- Intrare
- Popescu Vasile
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- Vsl Popescu
Exemplul 2[edit | edit source]
- Intrare
- aaaaaa Vasile
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line="1">
- 0133 - Nume Prenume
def verifica_sir(sir):
# verificăm dacă șirul conține doar litere if not sir.isalpha(): return False
consoane = "bcdfghjklmnpqrstvwxyz" # verificăm dacă șirul conține cel puțin o consoană for litera in sir.lower(): if litera in consoane: return True
return False
def construieste_sir(nume, prenume):
sir_final = ""
# verificăm fiecare literă din prenume și adăugăm doar consoanele în șirul final for litera in prenume: if litera.lower() in "bcdfghjklmnpqrstvwxyz": sir_final += litera
# adăugăm numele la finalul șirului sir_final += " " + nume
return sir_final
if __name__ == '__main__':
# citim numele și prenumele de la tastatură nume = input("Introduceți numele: ") prenume = input("Introduceți prenumele: ")
# verificarea restricțiilor if verifica_sir(nume) and verifica_sir(prenume): # construim și afișăm șirul final sir_final = construieste_sir(nume, prenume) print(sir_final) print("Datele de intrare corespund restricțiilor impuse.") else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>