Βοηθεια σε Matlab!!

Γενικά θέματα για τις γλώσσες προγραμματισμού που δεν καλύπτονται από τις άλλες περιοχές της κατηγορίας.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 21 Ιαν 2012 18:51

Παιδια τα φωτα σας, θελω να βαλω τα στοιχεία του πίνακα X, Χ=[1 9 6 9 2 6 8 10 11]σε αύξουσα σειρά χρησιμοποιώντας "Selection Sort"

http://en.wikipedia.org/wiki/Selection_sort«The algorithm finds the minimum value, swaps it with the value in the first position, and repeats these steps for the remainder of the list.»

Σας ευχαριστω εκ των προτερων...!!!

Άβαταρ μέλους
adiaforosgr
Δημοσιεύσεις: 1339
Εγγραφή: 19 Ιούλ 2004 17:52
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από adiaforosgr » 21 Ιαν 2012 18:52

To help το Matlab το κοίταξες;

DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 21 Ιαν 2012 19:00

adiaforosgr έγραψε:To help το Matlab το κοίταξες;
το κοιταξα αλλα δεν με βοηθησε και πολυ!


DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 21 Ιαν 2012 19:57

function list = selectionSort(list)

listSize = numel(list);

for i = (1:listSize-1)

minElem = list(i);
minIndex = i;

for j = (i:listSize)
if list(j) <= minElem
minElem = list(j);
minIndex = j;
end
end

if i ~= minIndex
list([minIndex i]) = list();
end

end
end

Βαζω selectionsort( [4 3 1 5 6 2] )

και μου λεει το εξης

??? function list = selectionSort( [4 3 1 5 6 2] )
|
Error: Function definitions are not permitted in this context.

Τι κανω λαθος;;

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από gvre » 21 Ιαν 2012 20:03

Τα functions πρέπει να μπαίνουν σε χωριστό αρχείο το οποίο θα έχει το ίδιο όνομα με τη συνάρτηση. Φτιάξε ένα νέο function file και δώσε του όνομα selectionSort.m

Για περισσότερα δες εδώ
http://www.mathworks.com/help/techdoc/ref/function.html

DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 21 Ιαν 2012 20:21

Το κανω αλλα παλι τα ιδια μου βγαζει!! Οοο θα τρελαθωω... :-?

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από gvre » 21 Ιαν 2012 20:23


DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 21 Ιαν 2012 20:32

μηπως μπορεις να μου πεις τι να γραψω γιατι ειλικρινα δεν βγαζω ακρη!!

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από gvre » 22 Ιαν 2012 00:07

Στείλε ό,τι έχεις γράψει και θα βγει άκρη.

DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 22 Ιαν 2012 11:20

gvre έγραψε:Στείλε ό,τι έχεις γράψει και θα βγει άκρη.
function list = selectionSort([4 3 1 5 6 2])

listSize = numel(list);

for i = (1:listSize-1)

minElem = list(i);
minIndex = i;

for j = (i:listSize)
if list(j) <= minElem
minElem = list(j);
minIndex = j;
end
end

if i ~= minIndex
list([minIndex i]) = list();
end

end
end

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από gvre » 22 Ιαν 2012 11:39

Μπορείς να επισυνάψεις τα 2 m files που έχεις φτιάξει;

DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 22 Ιαν 2012 22:51

gvre έγραψε:Μπορείς να επισυνάψεις τα 2 m files που έχεις φτιάξει;
αυτο που εγραψα παραπανω εχω δωσει μονο!

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Βοηθεια σε Matlab!!

Δημοσίευση από gvre » 22 Ιαν 2012 23:20

Ξαναδές το παράδειγμα στη σελίδα http://rosettacode.org/wiki/Sorting_alg ... ort#MATLAB . Τη συνάρτηση θα την αποθηκεύσεις σε ένα αρχείο με όνομα selectionSort.m (μετά την αποθήκευση μπορείς να κλείσεις το παράθυρο). Για να την καλέσεις, δες το Sample Usage από το παραπάνω url.
Είναι πολύ ξεκάθαρο αυτό που πρέπει να κάνεις, αρκεί να ξέρεις να δουλεύεις συναρτήσεις.
Καλό είναι να διαβάσεις τα παρακάτω. Είναι αρκετά κατατοπιστικά και χρήσιμα.

http://www.mathworks.com/help/techdoc/ref/function.html
http://web.cecs.pdx.edu/~gerry/MATLAB/p ... asics.html

DIDO9
Δημοσιεύσεις: 8
Εγγραφή: 21 Ιαν 2012 18:44

Βοηθεια σε Matlab!!

Δημοσίευση από DIDO9 » 22 Ιαν 2012 23:28

gvre έγραψε:Ξαναδές το παράδειγμα στη σελίδα http://rosettacode.org/wiki/Sorting_alg ... ort#MATLAB . Τη συνάρτηση θα την αποθηκεύσεις σε ένα αρχείο με όνομα selectionSort.m (μετά την αποθήκευση μπορείς να κλείσεις το παράθυρο). Για να την καλέσεις, δες το Sample Usage από το παραπάνω url.
Είναι πολύ ξεκάθαρο αυτό που πρέπει να κάνεις, αρκεί να ξέρεις να δουλεύεις συναρτήσεις.
Καλό είναι να διαβάσεις τα παρακάτω. Είναι αρκετά κατατοπιστικά και χρήσιμα.

http://www.mathworks.com/help/techdoc/ref/function.html
http://web.cecs.pdx.edu/~gerry/MATLAB/p ... asics.html
δεν ξερω να δουλευω συναρτησεις αυτο ειναι το θεμα!! αν μπορουσες να μου στειλεις τον αλγοριθμο θα σου ημουν υποχρεος

Απάντηση

Επιστροφή στο “γλώσσες προγραμματισμού - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης