0013 - Prefixe
Cerința
Se dă un şir de caractere reprezentând un cuvânt. Să se afişeze lista prefixelor şi lista sufixelor cuvântului dat.
Date de intrare
Programul citeşte de la tastatură un şir de caractere
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa lista prefixelor, câte unul pe un rând al ecranului, şi lista sufixelor, câte unul pe un rând al ecranului. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse".
Restricții și precizări
- şirul de caractere citit va conţine cel mult 10 litere mici ale alfabetului englez
Exemplu 1
- Intrare
- program
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- program
progra
progr
prog
pro
pr
p
program
rogram
ogram
gram
ram
am
m
Exemplu 2
- Intrare
- $$%$%% 1234567898765432
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line>
- 0013 Prefixe
def validare(cuvant):
if len(cuvant) > 10: raise ValueError
for litera in cuvant: if litera < 'a' or litera > 'z': raise ValueError
print("Datele de intrare corespund restrictiilor impuse") return True
def prefixe(cuvant):
aux = len(cuvant)
while aux: print(cuvant[:aux]) aux -= 1
aux = 0 while aux < len(cuvant): print(cuvant[aux:]) aux += 1
if __name__ == '__main__':
try: cuv = input(f"Introduceti textul ") validare(cuv) prefixe(cuv)
except ValueError: print("Datele de intrare nu corespund restrictiilor impuse") except IndexError: print("Datele de intrare nu corespund restrictiilor impuse")
</syntaxhighlight>