1894 - Floarea: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Enunt == O floare abia plantată se notează cu 0. În fiecare lună, aceasta crește cu un rând de petale, separate prin spațiu, notate cu cifra vârstei sale in acea lună. == Cerința == Se dă un număr natural n. Construiți și afișați o matrice ce reprezintă floarea dupa n luni. == Date de intrare == Programul citește de la tastatură numărul n. == Date de ieșire == Programul va afișa pe ecran matricea construită, reprezentând floarea dupa n luni. == Rest...
 
Line 54: Line 54:
         print_matrix(result_matrix)
         print_matrix(result_matrix)
     else:
     else:
         print("Nu sunt respectate cerintele impuse.")
         print("Nu au fost respectate cerintele impuse.")


</syntaxhighlight>
</syntaxhighlight>

Revision as of 18:40, 12 December 2023

Enunt

O floare abia plantată se notează cu 0. În fiecare lună, aceasta crește cu un rând de petale, separate prin spațiu, notate cu cifra vârstei sale in acea lună.

Cerința

Se dă un număr natural n. Construiți și afișați o matrice ce reprezintă floarea dupa n luni.

Date de intrare

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

Date de ieșire

Programul va afișa pe ecran matricea construită, reprezentând floarea dupa n luni.

Restricții și precizări

  • 1 ⩽ n ⩽ 9

Exemplu 1

Intrare
3
Ieșire
3 3 3 3 3 3 3
3 2 2 2 2 2 3
3 2 1 1 1 2 3
3 2 1 0 1 2 3
3 2 1 1 1 2 3
3 2 2 2 2 2 3
3 3 3 3 3 3 3
Explicație
În 3 luni floarea crește cu 3 rânduri de petale.


Exemplu 2

Intrare
0
Ieșire
Nu au fost respectate cerintele impuse


Rezolvare

<syntaxhighlight lang="python" line>

  1. 1894 - Floarea

def generate_flower_matrix(n):

   size = n * 2 + 1
   flower_matrix = [[0] * size for _ in range(size)]
   for i in range(size):
       for j in range(size):
           distance_to_border = min(i, j, size - i - 1, size - j - 1)
           flower_matrix[i][j] = n - distance_to_border
   return flower_matrix

def print_matrix(matrix):

   for row in matrix:
       print(" ".join(map(str, row)))

if __name__ == "__main__":

   n = int(input("Introduceți n: "))
   if 1 <= n <= 9:
       result_matrix = generate_flower_matrix(n)
       print_matrix(result_matrix)
   else:
       print("Nu au fost respectate cerintele impuse.")

</syntaxhighlight>