In Python wordt een matrix weergegeven als een geneste lijst.
De matrix m =
$$
\left[
\begin{array}{ccc}
1 & 2 & 3\\
4 & 5 & 6\\
7 & 8 & 9\\
10 & 11 & 12\\
\end{array} \right]
$$
wordt in Python de lijst
m = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
Een geneste lijst m is een representatie van een wiskundige matrix als elke element van de hoofdlijst opnieuw een lijst is. Elk van deze sublijsten moet een gelijk aantal elementen hebben.
Als in de opgave hieronder een matrix gegeven wordt, mag je ervan uitgaan dat dit een geneste lijst is, die daaraan voldoet.
kolom
Schrijf een functie kolom met twee argumenten: een matrix en een geheel getal i (>= 0).
De functie geeft de i-de kolom van de matrix als een lijst. Hierbij beginnen we te tellen vanaf nul. Als de matrix minder dan i+1 kolommen telt, dan retourneert de functie de string "onmogelijk".
som_kwadraat
Schrijf een functie som_kwadraat met één argument: een matrix met gehele getallen
De functie geeft een getal terug, zijnde de som van de kwadraten van alle elementen van de matrix.
is_matrix
Schrijf een functie is_matrix met één argument: een geneste lijst
De functie gaat na of de geneste lijst een matrix is, i.e. of alle elementen van de hoofdlijst opnieuw lijsten zijn met telkens hetzelfde aantal elementen. De functie retourneert de Boolean waarde True of False.
>>> kolom([[52, 433, 155, 103], [265, 249, 203, 333], [292, 180, 18, 437]], 2) [155, 203, 18] >>> kolom([[52, 433, 155, 103], [265, 249, 203, 333], [292, 180, 18, 437]], 12) "onmogelijk" >>> som_kwadraat([[0, 0, 1], [3, 5, 1], [1, 1, 2]]) 42 >>> som_kwadraat([]) 0 >>> is_matrix([[2, 1, 2], [3, 2, 2], [0, 3]]) False >>> is_matrix([[2, 1, 2], [3, 2, 2], [0, 3, 7]]) True >>> is_matrix([[2, 1, 2]]) True >>> is_matrix([]) True