0213 - Gen Mat 4
Cerința[edit | edit source]
Scrieţi un program care citeşte de la tastatură un număr natural n şi construieşte în memorie o matrice cu n linii şi n coloane ale cărei elemente vor primi valori după cum urmează: elementul din linia i şi coloana j primeşte ca valoare ultima cifră a produsului i*j (1≤i≤n şi 1≤j≤n).
Date de intrare[edit | edit source]
Programul citește de la tastatură numărul n.
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse".
Restricții și precizări[edit | edit source]
2≤n≤24
Exemplu 1[edit | edit source]
- Intrare
- 4
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 1 2 3 4
- 2 4 6 8
- 3 6 9 2
- 4 8 2 6
Exemplu 2[edit | edit source]
- Intrare
- 1
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line="1">
- Gen Mat 4
def verificare_restrictii(n): # functia de verificare a datelor de intrare
if 2 <= n <= 24: return True else: return False
def genmat4(n):
matrice = [] # creem matricea cu n linii si n coloane for i in range(1, n+1): linie = [] for j in range(1, n+1): linie.append(0) matrice.append(linie)
for linia in range(1, n+1): for coloana in range(1, n + 1): # in cerinta, se foloseste numerotarea liniilor de la 1 deci aplicam +1 si -1 in consecinta matrice[linia-1][coloana-1] = (linia * coloana) % 10 # introducem ultima cifra a produsului
for linie in matrice: # afisarea for element in linie: print(element, end=" ") print()
if __name__ == '__main__':
# ne asteptam ca datele de intrare sa fie gresite fapt care ar genera o eroare de tipul ValueError # pe care o tratam corespunzator try: nr_linii = int(input("Introduceti numarul de linii: ")) # citirea lui n if verificare_restrictii(nr_linii): # verificarea datelor de intrare print("Datele de intrare corespund restrictiilor impuse.") genmat4(nr_linii) # apelul functiei de rezolvare else: print("Datele de intrare nu corespund restrictiilor impuse.") except ValueError: print("Datele de intrare nu corespund restrictiilor impuse.")
</syntaxhighlight>