4275 - Para 2

De la Universitas MediaWiki

Cerinta:

Se citește numărul natural n, şi un caracter c. Să se afișeze următorul paralelogram:

     c
    cc
   ccc
  ....ccc...c
ccc...c
cc...c
....
cc
c

Date de intrare:

Programul citește de la tastatură numărul n şi caracterul c .

Date de ieşire:

Programul afișează pe ecran figura descrisă în enunț.

Restricţii şi precizări:

1 ≤ n ≤ 20 c este un caracter cu codul ASCII cuprins între 33 şi 126, inclusiv.

Exemplu:

Intrare 4 *

Ieșire

  *
 **
***

Rezolvare

def validare(n, c):
    if not n.isdigit() or int(n) < 1 or int(n) > 20:
        return False
    if not 33 <= ord(c) <= 126:
        return False
    return True


def rezolvare(n, c):
    for i in range(1, n):
        print(" " * (n - i) + c * i)
    for i in range(n, 0, -1):
        print(" " * (n - i) + c * i)


def main():
    n = input("Introduceti numarul n: ")
    c = input("Introduceti caracterul c: ")

    if not validare(n, c):
        print("Date de intrare invalide!")
        return

    rezolvare(int(n), c)


if __name__ == '__main__':
    main()