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

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • 0
sasa limnaou

ΑΠΕΛΠΙΣΜΕΝΗ MATLAB

Ερώτηση

Γεια σε όλους! αντιμετωπίζω προβληματακι με προγραμματισμό στο matlab!έχω πίνακα στήλη, με 1980 σειρές και πρέπει να φτιάξω loop που να προσθέτει το πρώτο στοιχείο του πίνακα μου με τα επόμενα 20,το δεύτερο στοιχείο του πίνακα με τα επόμενα του 20(δηλαδή να προθέτει από το 2ο μέχρι το 21ο στοιχείο) και πάει λέγοντας...

 

καμιά ιδέα? θα ήμουν αιωνίως ευγνώμον!!!

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

6 απαντήσεις σε αυτή την ερώτηση

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

Γεια σε όλους! αντιμετωπίζω προβληματακι με προγραμματισμό στο matlab!έχω πίνακα στήλη, με 1980 σειρές και πρέπει να φτιάξω loop που να προσθέτει το πρώτο στοιχείο του πίνακα μου με τα επόμενα 20,το δεύτερο στοιχείο του πίνακα με τα επόμενα του 20(δηλαδή να προθέτει από το 2ο μέχρι το 21ο στοιχείο) και πάει λέγοντας...

 

καμιά ιδέα? θα ήμουν αιωνίως ευγνώμον!!!

 

 

>b = zeros(1, 1960);

for i=1:1960
  for j = 1: 20
      b[1,i] = b[1,i] + a[1,i + j];
  end;
end;

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Βελτιστοποιημένη έκδοση, αν σε ενδιαφέρει κάτι τέτοιο εφόσον ασχολείσαι με θέματα απόδοσης:

 

>
b = zeros(1, 1960);

i=1;
for j = 1: 20
   b[1,i] = b[1,i] + a[1,i + j];
end;

for i=2:1960
      b[1,i] = b[1,i - 1]  - a[1,i - 1] + a[1, i + 20] ;
end;

 

Όπου αν και τρέχει στον ίδιο χρόνο ασυμπτωτικά, έχεις πετύχει πολύ καλύτερη constant.

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
Γεια σε όλους! αντιμετωπίζω προβληματακι με προγραμματισμό στο matlab!έχω πίνακα στήλη, με 1980 σειρές και πρέπει να φτιάξω loop που να προσθέτει το πρώτο στοιχείο του πίνακα μου με τα επόμενα 20,το δεύτερο στοιχείο του πίνακα με τα επόμενα του 20(δηλαδή να προθέτει από το 2ο μέχρι το 21ο στοιχείο) και πάει λέγοντας...

 

καμιά ιδέα? θα ήμουν αιωνίως ευγνώμον!!!

 

Σε C# θα το έκανα (νομίζω) έτσι:

for ( int i=0; i< table.Rows.Count; i++ ){

int place = table.Rows;

for( int k=i; k<20+i; k++){

place += table.Rows[k]

}

table.Rows = place;

}

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Τεσπά, επειδή edit ΔΕΝ μπορώ να κάνω, το παραθέτω διορθωμένο

 

 

for ( int i=0; i< table.Rows.Count; i++ ){

int place = table.Rows[0];

for( int k=i; k<20+i; k++){

place += table.Rows[k][0];

}

table.Rows = place;

}

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
×
×
  • Δημιουργία νέου...