Ζάννειο Πρότυπο Γυμνάσιο

2014-2015 => Συναντήσεις Ομίλου 2016-2017 => Μήνυμα ξεκίνησε από: evry στις Νοέμβριος 18, 2016, 04:57:38 μμ

Τίτλος: 5η Συνάντηση 5 Δεκεμβρίου
Αποστολή από: evry στις Νοέμβριος 18, 2016, 04:57:38 μμ
Σε αυτό το μάθημα θα ασχοληθούμε με το πρόβλημα εύρεσης του μεγίστου μεταξύ δυο ή περισσότερων αριθμών
Το παρακάτω πρόγραμμα σε C++ διαβάζει 2 ακέραιους αριθμούς από τον χρήστη και εμφανίζει τον μεγαλύτερο.
Προσοχή!! Αν οι αριθμοί είναι ίσοι π.χ. a = b = 10 τότε η μεγαλύτερη τιμή είναι το 10.
Κώδικας: cpp [Επιλογή]

#include <iostream>                         
using namespace std;
int main() {
   int a, b, max;     
   cout << "a = ";     cin >> a;     
   cout << "b = ";     cin >> b;   
   if (a > b) {           
       max = a;                       
   }
   else  {   
       max = b;             
   }

   cout << " max = " << max << endl;   
   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}

Να μεταφέρετε τα παραπάνω προγράμματα στο CodeBlocks (ξέρετε πως, επιλογή > Copy > Paste)
και στη συνέχεια να τα εκτελέσετε δίνοντας διάφορους αριθμούς για να εξοικειωθείτε με τη λειτουργία τους.

Το επόμενο βήμα που θα σας δυσκολέψει λίγο είναι να επεκτείνετε το παραπάνω πρόγραμμα για 3 αριθμούς. Δηλαδή θα διαβάζει 3 αριθμούς, θα καταχωρεί στη μεταβλητή max το μεγαλύτερο και θα το εμφανίζει μετά. Θα χρειαστεί να προσθέσετε μια ακόμα μεταβλητή c.

Υπόδειξη - Βοήθεια
Το προηγούμενο πρόγραμμα για τον υπολογισμό του μεγαλύτερου δυο αριθμών μπορεία να γραφτεί και με τον παρακάτω τρόπο!!!
Κώδικας: cpp [Επιλογή]

#include <iostream>                         
using namespace std;
int main() {
   int a, b, max;     
   cout << "a = ";     cin >> a;     
   max = a;     // στην αρχή το a είναι το μεγαλύτερο
   cout << "b = ";     cin >> b;   
   if (b > a) {           
       max = b;                       
   }
     // αλλιώς δεν κάνω τίποτα και το a παραμένει μέγιστο
   cout << " max = " << max << endl;   
   cout << "*** END OF PROGRAM ***" << endl;
   return 0;
}

Θα πρέπει να το επεκτείνετε για τρεις  ;)

Αφού το καταφέρετε για 3 αριθμούς ήρθε η ώρα να δοκιμάσετε για 4.
Σκεφτείτε έναν τρόπο ο οποίος θα σας επιτρέψει να χρησιμοποιήσετε την λύση σας για 3 αριθμούς. Δηλαδή ο αλγόριθμος εύρεσης του μεγίστου 4 αριθμών να χρησιμοποιεί τον αλγόριθμο εύρεσης των τριών. Μην ξαναγράψετε από την άρχη τον αλγόριθμο.
Μπορείτε να γενικεύεσετε για έστω 100 αριθμούς; ή ακόμα καλύτερα για Ν αριθμούς;

Εντολή Επανάληψης
Αν θέλουμε να επαναλάβουμε μια εντολή πολλές φορές χρησιμοποιούμε την εντολή for
Για παράδειγμα το παρακάτω τμήμα κώδικα εμφανίζει όλους τα τετράγωνα όλων των αριθμών από το 1 έως και το 100.
Να μελετήσετε την λειτουργία του.
Κώδικας: cpp [Επιλογή]

#include <iostream>
using namespace std;

int main() {
    int upperBound = 100;
    int i;
    for (i=0; i<upperBound; i++) {
        cout << i * i << ", " ;
    }
    cout << endl;
    return 0;

}

Ασκήσεις


Τα υπόλοιπα στο μάθημα ;D