1564 - Triunghi Dublu: Difference between revisions
Paul Ungur (talk | contribs) |
Paul Ungur (talk | contribs) No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
==Date de ieșire== | ==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== | ==Restricții și precizări== | ||
Line 14: | Line 14: | ||
Intrare | Intrare | ||
5 | : 5 | ||
Ieșire | Ieșire | ||
: Date de intrare valide | |||
<nowiki>*</nowiki> | <nowiki>*</nowiki> | ||
Line 43: | Line 43: | ||
==Rezolvare== | ==Rezolvare== | ||
<syntaxhighlight lang="python" line="1"> | <syntaxhighlight lang="python" line="1"> | ||
def | def validare(n): | ||
if 1 <= n <= 10: | if 1 <= n <= 10: | ||
return True | return True | ||
Line 50: | Line 50: | ||
def | def afisare_triunghi(n): | ||
for i in range(1, n+1): | for i in range(1, n + 1): | ||
for j in range(1, i+1): | for j in range(1, i + 1): | ||
print( | print('*', end='') | ||
print() | print() | ||
for i in range(1, n + 1): | |||
for j in range(1, 2 * n + 1): | |||
for i in range(n | if j >= n + i: | ||
for j in range(1, | print('*', end='') | ||
print( | else: | ||
print(' ', end='') | |||
print() | print() | ||
if __name__ == '__main__': | |||
n = int(input("Introduceti un numar: ")) | n = int(input("Introduceti un numar: ")) | ||
if | if validare(n): | ||
print(" | print("Date de intrare valide") | ||
afisare_triunghi(n) | |||
else: | |||
print("Date de intrare invalide") | |||
</syntaxhighlight> | </syntaxhighlight> | ||
==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. |
Latest revision as of 18:32, 29 June 2023
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.