Έξυπνη φυσσαλίδα: Τρέχει σωστά ο κώδικας στη γλωσσομάθεια;

Ξεκίνησε από katkal, 31 Ιαν 2020, 12:15:16 ΠΜ

« προηγούμενο - επόμενο »

katkal

Καλησπέρα. Δοκίμασα να τρέξω στη γλωσσομάθεια τον κώδικα για την έξυπνη φυσσαλίδα που βρίσκεται στη σελιδα 72 του ΠΑΡΑΡΤΗΜΑΤΟΣ Α -ΟΔΗΓΙΕΣ ΜΕΛΕΤΗΣ ΜΑΘΗΤΗ. Και αναφέρει πως:  Στην περίπτωση αυτή αναπτύσσεται ο αλγόριθμος ταξινόμησης με τη μέθοδο της φυσαλίδας καλύτερα  και  εξυπνότερα.  Δηλ.  όταν  ο  πίνακας  είναι  ταξινομημένος,  τότε  σταματά  ο  έλεγχος  των  στοιχείων για ταξινόμηση.
Τα δεδομένα που έβαλα  στον πίνακα ήταν 1,2,3,4,5 , επίτηδες για να δω αν θα  σταματήσει ο αλγόριθμος, στην  περίπτωση που δεν υπάρχει καμία αντιμετάθεση. Όμως δεν σταμάτησε,  ίσα-ίσα που το i έφτασε μέχρι το 6 και έκανε όλους τους ελέγχους.

σ.σ. το πρόγραμμα το έγραψα σωστά.
Προσπαθώ να καταλάβω το λάθος.....


petrosp13

Αν θέλεις, δώσε τον κώδικα σου για να το ελέγξουμε κι εμείς..
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

George Eco

#2
Η έξυπνη φυσαλίδα τρέχει όσο γίνεται ταξινόμηση συν μία φορά που ΔΕ θα γίνει ταξινόμηση, αλλά θα επηρεάσει μία λογική μεταβλητή. Τσέκαρε μήπως κάτι δε πάει καλά με αυτή τη μεταβλητή και το πώς τη θέτεις ΑΛΗΘΗ ή ΨΕΥΔΗ (αναλόγως το πώς το έγραψες).
Δε τσεκάρεις και το συγκριτικό τελεστή; Παίζει ρόλο αν θέτεις το sort από τα μικρότερα στα μεγαλύτερα ή αντίστροφα.

Επίσης, δε ξέρω αν έγραψες σωστά τον κώδικα εφ όσον τον έχεις τροποποιήσει.
Όπως είπε κι ο συνάδελφος, δε μας κάνεις μια επικόλληση τον κώδικά σου;
Κάτι μου λέει πως σου έχει ξεφύγει κάτι και το πρόγραμμα δε το έχεις υλοποιήσει σωστά.

katkal

Τελικά είχα ένα μικρό λαθάκι στον κώδικα! κάπου στην όσο-επανάλαβε.
Ευχαριστώ πολύ!