1630 - Morisca: Difference between revisions
Paul Ungur (talk | contribs) |
Paul Ungur (talk | contribs) No edit summary |
||
Line 42: | Line 42: | ||
def rezolvare(n): | def rezolvare(n): | ||
for i in range(1, n+1): | # Prima parte a figurii | ||
for i in range(1, n + 1): | |||
for j in range(1, i + 1): | |||
print('*', end='') | |||
for k in range(1, n * 3 - i * 2 + 1): | |||
print(' ', end='') | |||
for f in range(1, i + 1): | |||
print('*', end='') | |||
print() | |||
# A doua parte a figurii | |||
for i in range(1, n + 1): | |||
for j in range(1, n + 1): | |||
print(' ', end='') | |||
for k in range(1, n + 1): | |||
print('*', end='') | |||
print() | |||
# A treia parte a figurii | |||
for i in range(n, 0, -1): | for i in range(n, 0, -1): | ||
print( | for j in range(1, i + 1): | ||
print('*', end='') | |||
for k in range(1, n * 3 - i * 2 + 1): | |||
print(' ', end='') | |||
for f in range(1, i + 1): | |||
print('*', end='') | |||
print() | |||
if __name__ == '__main__': | |||
n = int(input("Introduceti valoarea pentru n: ")) | n = int(input("Introduceti valoarea pentru n: ")) | ||
if validare(n): | if validare(n): | ||
print("Date de intrare valide") | |||
rezolvare(n) | rezolvare(n) | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 15:58, 26 April 2023
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
Programul va afișa pe ecran figura.
Restricții și precizări
1 ≤ n ≤ 10
Exemplu:
Intrare
4
Ieșire
* * ** ** *** *** **** **** **** **** **** **** **** **** *** *** ** ** * *
Explicație
S-au afișat 4 triunghiuri și un pătrat, figuri formate din caracterul steluță.
Rezolvare
<syntaxhighlight lang="python" line="1"> def validare(n):
if n < 1 or n > 10: print("Valoarea introdusa pentru n este incorecta!") return False return True
def rezolvare(n):
# Prima parte a figurii for i in range(1, n + 1): for j in range(1, i + 1): print('*', end=) for k in range(1, n * 3 - i * 2 + 1): print(' ', end=) for f in range(1, i + 1): print('*', end=) print()
# A doua parte a figurii for i in range(1, n + 1): for j in range(1, n + 1): print(' ', end=) for k in range(1, n + 1): print('*', end=) print()
# A treia parte a figurii for i in range(n, 0, -1): for j in range(1, i + 1): print('*', end=) for k in range(1, n * 3 - i * 2 + 1): print(' ', end=) for f in range(1, i + 1): print('*', end=) print()
if __name__ == '__main__':
n = int(input("Introduceti valoarea pentru n: ")) if validare(n): print("Date de intrare valide") rezolvare(n)
</syntaxhighlight>