1564 - Triunghi Dublu

De la Universitas MediaWiki

Cerința

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

Date de intrare

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

Date de ieșire

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

1 ≤ n ≤ 10

Exemplu:

Intrare

5

Ieșire

Date de intrare valide

*

**

***

****

*****

*

**

***

****

*****

Explicație

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

Rezolvare

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")

Explicatie cod:

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.