1006 - Pal Munte

From Bitnami MediaWiki

Cerința[edit | edit source]

Să se afișeze pe ecran, în ordine crescătoare, toate palindromurile de tip munte cu exact 9 cifre.

Un palindrom este de tip munte dacă cifrele sale sunt în ordine strict crescătoare până la jumătatea numărului.

Date de intrare[edit | edit source]

Nu există!

Date de ieșire[edit | edit source]

Dacă datele sunt introduse corect, pe ecran se va afișa: "Date de intrare valide.", apoi programul va afișa pe ecran în ordine crescătoare, toate palindromurile de tip munte cu exact 9 cifre. În cazul în care datele nu respectă restricțiile, se va afișa pe ecran: "Date de intrare invalide".

Exemplu:[edit | edit source]

Ieșire

Date de intrare valide
123454321
123464321
123474321

...

457898754
467898764
567898765

Explicație[edit | edit source]

Lista palindromurilor din exemplu nu este completă.

Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line> def palindrom():

   for i in range(1, 6):
       for j in range(i + 1, 7):
           for n in range(j + 1, 8):
               for m in range(n + 1, 9):
                   for k in range(m + 1, 10):
                       print(i, j, n, m, k, m, n, j, i)


if __name__ == '__main__':

   palindrom()

</syntaxhighlight>

Explicatie cod:[edit | edit source]

Funcția palindrom generează și afișează toate palindroamele de lungime 9 compuse din cifrele de la 1 la 9. Un palindrom este un număr sau o secvență care poate fi citită în aceeași ordine și în ordine inversă.

Explicația funcției:

Funcția palindrom nu primește niciun argument. Folosind instrucțiunea for, se realizează bucle înlănțuite pentru fiecare cifră în intervalul de la 1 la 5 pentru variabila i, de la i + 1 la 6 pentru variabila j, de la j + 1 la 7 pentru variabila n, de la n + 1 la 8 pentru variabila m, și de la m + 1 la 9 pentru variabila k. În interiorul buclelor înlănțuite, se afișează palindromul format din valorile variabilelor i, j, n, m, k, m, n, j, i. Ordinea acestor cifre generează un palindrom de lungime 9, deoarece palindroamele sunt citite în aceeași ordine și în ordine inversă.