1405 - Desen Romb 2

From Bitnami MediaWiki

Cerința

Se dă n un număr natural. Să se afișeze un romb de latură n umplut cu caractere * iar spațiul spațiul exterior umplut cu #, ca în exemplu.

Date de intrare

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

Date de ieșire

Programul va afișa pe ecran rombul cerut.

Restricții și precizări

1 ≤ n ≤ 10

Exemplu:

Intrare

5

Ieșire

####*####

###***###

##*****##

#*******#

*********

#*******#

##*****##

###***###

####*####

Rezolvare

<syntaxhighlight lang="python" line="1"> n = int(input("Introduceți un număr: "))

  1. Desenarea primelor n/2 linii

for i in range(n//2):

   # Desenarea spațiilor la început
   for j in range(n//2 - i):
       print("#", end="")
   # Desenarea stelelor
   for j in range(i*2 + 1):
       print("*", end="")
   # Desenarea spațiilor la sfârșit
   for j in range(n//2 - i):
       print("#", end="")
   print()
  1. Desenarea ultimelor n/2 linii

for i in range(n//2, n):

   # Desenarea spațiilor la început
   for j in range(i - n//2 + 1):
       print("#", end="")
   # Desenarea stelelor
   for j in range((n-i)*2 - 1):
       print("*", end="")
   # Desenarea spațiilor la sfârșit
   for j in range(i - n//2 + 1):
       print("#", end="")
   print()

</syntaxhighlight>