1405 - Desen Romb 2: Difference between revisions

From Bitnami MediaWiki
Paul Ungur (talk | contribs)
Creat o pagină goală
 
Paul Ungur (talk | contribs)
Line 1: Line 1:
==Cerința==
Se dă n un număr natural. Să se afișeze un romb de latură <span style="color: red;"> n</span> umplut cu caractere <span style="color: red;"> *</span> iar spațiul spațiul exterior umplut cu <span style="color: red;"> #</span>, ca în exemplu.


==Date de intrare==
Programul citește de la tastatură numărul <span style="color: red;"> n</span>.
==Date de ieșire==
Programul va afișa pe ecran rombul cerut.
==Restricții și precizări==
<span style="color: red;"> 1 ≤ n ≤ 10</span>
==Exemplu:==
Intrare
5
Ieșire
####*####
###***###
##*****##
#*******#
*********
#*******#
##*****##
###***###
####*####
==Rezolvare==
<syntaxhighlight lang=“python” line>
n = int(input("Introduceți un număr: "))
# 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()
# 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>

Revision as of 19:59, 19 March 2023

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