1405 - Desen Romb 2: Diferență între versiuni

De la Universitas MediaWiki
(Creat o pagină goală)
 
Linia 1: Linia 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>

Versiunea de la data 19 martie 2023 19:59

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

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