1564 - Triunghi Dublu

From Bitnami MediaWiki

Cerința[edit | edit source]

Se dă un număr n. Afișați figura din exemplu.

Date de intrare[edit | edit source]

Programul citește de la tastatură numărul n.

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 figura. În cazul în care datele nu respectă restricțiile, se va afișa pe ecran: "Date de intrare invalide".

Restricții și precizări[edit | edit source]

1 ≤ n ≤ 10

Exemplu:[edit | edit source]

Intrare

5

Ieșire

Date de intrare valide

*

**

***

****

*****

*

**

***

****

*****

Explicație[edit | edit source]

S-au afișat 2 triunghiuri, formate din 15 steluțe fiecare.

Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line="1"> def validare(n):

   if 1 <= n <= 10:
       return True
   else:
       return False


def afisare_triunghi(n):

   for i in range(1, n + 1):
       for j in range(1, i + 1):
           print('*', end=)
       print()
   for i in range(1, n + 1):
       for j in range(1, 2 * n + 1):
           if j >= n + i:
               print('*', end=)
           else:
               print(' ', end=)
       print()


if __name__ == '__main__':

   n = int(input("Introduceti un numar: "))
   if validare(n):
       print("Date de intrare valide")
       afisare_triunghi(n)
   else:
       print("Date de intrare invalide")

</syntaxhighlight>

Explicatie cod:[edit | edit source]

Funcția validare(n) verifică dacă valoarea n se află în intervalul [1, 10]. Dacă valoarea n respectă restricțiile, funcția returnează True. În caz contrar, returnează False. Funcția afisare_triunghi(n) afișează triunghiul format din caractere "" utilizând două bucle for. Prima buclă for parcurge de la 1 până la n și afișează un triunghi format din "". A doua buclă for parcurge de la 1 până la n și afișează restul triunghiului prin afișarea spațiilor și a "*" în funcție de poziția celulei. În blocul if __name__ == '__main__':, se citște valoarea n de la utilizator folosind funcția input() și se validează această valoare utilizând funcția validare(n). Dacă valoarea introdusă este validă, se afișează un mesaj de confirmare și se apelează funcția afisare_triunghi(n) pentru a afișa triunghiul corespunzător. Dacă valoarea introdusă nu este validă, se afișează un mesaj de eroare.