Διαγώνιος πίνακα με χρήση εμφωλευμένων βρόγχων for στο Octave/matlab

Να βρεθούν τα στοιχεία της διαγωνίου ενός πίνακα.

Η άσκηση αυτή δίνεται καθαρά για λόγους επίδειξης και εκμάθησης. Μη χρησιμοποιείται ανάλογες διαδικασίες για παραγωγικούς σκοπούς.

Ας υποθέσουμε πως έχουμε ένα πίνακα 3x3:

octave:> a = [ 3 1 -2; 
4 5 1
2 -3 0]

a =

   3   1  -2
   4   5   1
   2  -3   0

Για να τοποθετήσουμε τα στοιχεία της διαγωνίου [3 5 0] σε ένα διάνυσμα, πχ d, κάνουμε το εξής:

for i=1:3
  for j=1:3
    if (i==j)
      d(i) = a(i,j);
    end
  end
end

Μπορούμε να δούμε το αποτέλεσμα:

octave:> d
d =

   3   5   0

Εναλλακτικά, μπορούμε να χρησιμοποιήσουμε την ενσωματωμένη συνάρτηση diag: octave:> diag(a)

ans =

   3
   5
   0

Συνδεθείτε για περισσότερες δυνατότητες αλληλεπίδρασης,
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.

Creative Commons License
Εκπαιδευτικό υλικό από τον Αθανάσιο Σταυρακούδη σας παρέχετε κάτω από την άδεια Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.