0617 - Piese
Cerința
Într-un tărâm îndepărtat, un inginer auto trebuie să organizeze piese de schimb într-o fabrică. Piesele sunt aranjate într-o matrice pătratică, iar fiecare celulă a matricei reprezintă un tip de piesă. Inginerul trebuie să genereze această matrice și să afișeze piesele în ordinea dorită.
Date de intrare
Programul citește de la tastatură:
Un număr întreg n reprezentând dimensiunea matricei pătratice (n x n).
Date de ieșire
Pe ecran se va afișa matricea generată, fiecare rând al matricei fiind pe o linie separată.
Restricții și precizări
- 1 ⩽ n ⩽ 1000
Valorile din matrice sunt numere întregi generate automat în intervalul [0, 10]
Exemplu 1
- Intrare
3
- Iesire
8 3 4
1 5 4
3 1 0
Exemplu 2
- Intrare
0
- Iesire
Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line> import random
def citeste_dimensiune():
try: n = int(input("Introduceți dimensiunea matricii pătratice (n): ")) return n except ValueError: return None
def valideaza_dimensiune(n):
return 1 <= n <= 100
def genereaza_matrice(n):
matrice = [] for i in range(n): rand = [random.randint(-1000, 1000) for _ in range(n)] matrice.append(rand) return matrice
def afiseaza_matrice(matrice):
for rand in matrice: print(" ".join(map(str, rand)))
def main():
n = citeste_dimensiune() if n is None or not valideaza_dimensiune(n): print("Datele de intrare nu corespund restricțiilor impuse.") return print("Datele de intrare corespund restricțiilor impuse.") matrice = genereaza_matrice(n) afiseaza_matrice(matrice)
if __name__ == "__main__":
main()
</syntaxhighlight>