Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα,

 

έχω scores = zeros(1,n);

κι ένα διάνυσμα index το οποίο υποδυκνείει ποια στοιχεία του scores να αυξήσω κατά ένα.

μπορώ να κάνω scores[index] = scores[index] +1 ;

 

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

 

πως μπορώ να αποφύγω το for loop?

Δημοσ.

Για να το κάνεις αυτό άμεσα δεν ξέρω κάποιο τρόπο.

 

Θα μπορούσες να βρεις τα unique στοιχεία του πίνακα index και αυτά να τα κάνεις +1 ενώ για τα άλλα να βρίσκεις τις εμφανίσεις τους (με length(find(....)) ) και να τα κάνεις + τόσο.. δηλαδή:

 

>
>> scores{scores==exampleValue) = scores(scores==exampleValue) + length(index == exampleValue);

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...