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

C++(μια μικρη καθοδηγηση)


hchat

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

Δημοσ.

Καλησπερα παιδιά.

Ειμαι νέος στον χώρο του προγραμματισμου και στην c++ και θα ήθελα να κάνω μια ερώτηση.

Πώς μπορουμε απο 4 αριθμους (integer) να κανει ελεγχο ποιοι ειναι οι 2 μεγαλυτεροι απο τους 4 και να τους εμφανιζω στον χρηστη?

 

 

ευχαριστω προκαταβολικα...:-)

Δημοσ.

Μια απλή λύση είναι να βάλεις τους αριθμούς σε ένα πίνακα, να ταξινομήσεις τον πίνακα κατα φθίνουσα σειρά και να πάρεις τις 2 πρώτες τιμές.

 

Μια άλλη λύση είναι να εφαρμόσεις έναν αλγόριθμο εύρεσης μεγίστου 2 φορές, μια για 4 στοιχεία και μια για τα υπόλοια 3.

Δημοσ.
Μια απλή λύση είναι να βάλεις τους αριθμούς σε ένα πίνακα, να ταξινομήσεις τον πίνακα κατα φθίνουσα σειρά και να πάρεις τις 2 πρώτες τιμές.

 

Μια άλλη λύση είναι να εφαρμόσεις έναν αλγόριθμο εύρεσης μεγίστου 2 φορές, μια για 4 στοιχεία και μια για τα υπόλοια 3.

 

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

 

Ευχαριστω για την βοηθεια φιλε μου

Δημοσ.

Η μπορείς απλά να μετατρέψεις τον κλασικό αλγόριθμο μεγίστου να βρίσκει τα δύο πρώτα μέγιστα με πολυπλοκότητα Ν και όχι 2Ν ( όχι οτι έχει διαφορά και τα δύο Ν θεωρούνται )

 

>
[b]αριθμος[/b] πινακας[Α] = {3,50,800,1, ... , 336783} // μέγεθος Ν
[b]αριθμος[/b] μεγιστος1=πινακας[0],μεγιστος2=πινακας[1];

[i]Για[/i] [b]αριθμος[/b] χ [i]απο[/i] 2 [i]εως[/i] Ν-1
    [i]Αν[/i] πινακας[χ]>μεγιστος1 [i]τοτε[/i]
         [i]Αν[/i] μέγιστος2>μεγιστος1 [i]τότε[/i]
              μεγιστος1 = πινακας[χ];
         [i]Αλλιώς[/i]
              μεγιστος2 = μεγιστος1;
              μεγιστος1 = πίνακας[χ];
    [i]Αλλιώς_Αν[/i] πίνακας[χ]>μεγιστος2 [i]τότε[/i] μεγιστος2 = πίνακας[χ];

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

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

  • Δημιουργία νέου...