2029 - AfisareN
Cerinţa[edit | edit source]
Citindu-se un număr natural n şi un şir de caractere să se afişeze de n ori şirul de caractere. De fiecare dată se va trece pe rând nou.
Date de intrare[edit | edit source]
Fişierul de intrare afisarenin.txt conţine pe prima linie numărul n, iar pe a două şirul de caractere.
Date de ieșire[edit | edit source]
Fişierul de ieşire afisarenout.txt va afişa pe fiecare linie de la 1 la n şirul de caractere.
Restricţii şi precizări[edit | edit source]
- 1 ≤ n ≤ 50
- lungimea şirului de caractere este maxim 1.000.000
- daca n = 0 nu se va afisa nimic
Exemplu 1[edit | edit source]
- afisarenin.txt
3 AfisareN
- afisarenout.txt
Datele de intrare corespund restrictiilor impuse AfisareN AfisareN AfisareN
Exemplu 2[edit | edit source]
- afisarenin.txt
51 AfisareN
- afisarenout.txt
Datele de intrare nu corespund restrictiilor impuse
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line> def main():
with open('afisarenin.txt', 'r') as fin, open('afisarenout.txt', 'w') as fout: n = int(fin.readline().strip()) sir = fin.readline().strip()
# Verifică dacă numărul și șirul respectă restricțiile if not (1 <= n <= 50) or len(sir) > 1000000 or not all(c.isalpha() or c.isspace() for c in sir): fout.write("Datele de intrare nu corespund restrictiilor impuse\n") return
fout.write("Datele de intrare corespund restrictiilor impuse\n")
# Afișează șirul de n ori for _ in range(n): fout.write(sir + '\n')
if __name__ == "__main__":
main()
</syntaxhighlight>