343 Ειςαγωγι ςτον Προγραμματιςμό

Σχετικά έγγραφα
343 Ειςαγωγι ςτον Προγραμματιςμό

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό

16. Πίνακεσ και Συναρτήςεισ

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

343 Ειςαγωγι ςτον Προγραμματιςμό

17. Πολυδιάςτατοι πίνακεσ

Δομθμζνοσ Προγραμματιςμόσ. Βαγγζλθσ Οικονόμου Εργαςτιριο 9

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

343 Ειςαγωγι ςτον Προγραμματιςμό

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

Η γλώςςα προγραμματιςμού C

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ

Μονάδες 6. Μονάδες ΓΑΨΕ Δεν υπάρχει ρίηα 2. ΑΝ Α>0 ΤΟΤΕ 3. ΤΕΛΟΣ_ΑΝ 4. ΑΛΛΙΩΣ 5. ίηα Τ_(Α)

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 19. Αλφαριθμητικά II. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

ςυςτιματα γραμμικϊν εξιςϊςεων

Οντοκεντρικόσ Προγραμματιςμόσ

Παράςταςη ςυμπλήρωμα ωσ προσ 1

Ανάπτυξη Εφαρμογών Σε Προγραμματιςτικό Περιβάλλον

343 Ειςαγωγι ςτον Προγραμματιςμό

ΔΟΜΗ ΑΠΛΗΣ ΕΠΙΛΟΓΗΣ Αςκήςεισ με ψευδογλώςςα/ διάγραμμα ροήσ. Αντώνης Μαϊργιώτης

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

Ένα πρόβλθμα γραμμικοφ προγραμματιςμοφ βρίςκεται ςτθν κανονικι μορφι όταν:

Πανεπιςτιμιο Κφπρου ΟΙΚ 223: Μακθματικά για οικονομολόγουσ ΙΙ Διδάςκων:

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

Βάςεισ Δεδομζνων Ι. Ενότθτα 10: Συνακροιςτικζσ ςυναρτιςεισ. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

ΥΡΟΝΣΙ ΣΗΡΙΟ Μ. Ε. ΚΑΙ ΚΕΝΣΡΟ ΙΔΙΑΙΣΕΡΩΝ ΜΑΘΗΜΑΣΩΝ «ΚΤΡΙΣ Η» ΔΙΑΓΩΝΙ ΜΑ ΑΕΠΠ

ΜΑΘΗΜΑΤΙΚΑ Α Γυμνασίου

Δισδιάστατοι Πίνακες (2D Arrays) Εισαγωγή στη C++

Η γραφικι παράςταςθ τθσ ςυνάρτθςθσ f(x)=αx+β είναι μια ευκεία με εξίςωςθ y=αx+β θ οποία τζμνει τον άξονα των y ςτο ςθμείο Β(0,β) και ζχει κλίςθ λ=α.

(Α3 1 ) Σασ δίνεται το παρακάτω αλγορικμικό τμιμα

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++

Πολυπλέκτες. 0 x 0 F = S x 0 + Sx 1 1 x 1

Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων

Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V

Γενικά Μαθηματικά ΙΙ

Άςκθςθ 1θ: Να γραφεί αλγόρικμοσ που κα δθμιουργεί με τθ βοικεια διπλοφ επαναλθπτικοφ βρόχου, τον ακόλουκο διςδιάςτατο πίνακα:

x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.

Ε. ε περίπτωςθ που θ διαφορά των δφο ηαριϊν είναι 3 τότε ο παίκτθσ ξαναρίχνει μόνο ζνα ηάρι.

343 Ειςαγωγι ςτον Ρρογραμματιςμό

Διάδοση θερμότητας σε μία διάσταση

1 ο Διαγώνιςμα για το Α.Ε.Π.Π.

Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό

Γενικά Μαθηματικά ΙΙ Αςκήςεισ 11 ησ Ενότητασ

ΕΡΓΑΣΗΡΙΟ ΕΦΑΡΜΟΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ

Γενικά Μαθηματικά ΙΙ

ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).

ΦΥΕ 14 ΑΚΑΔ. ΕΤΟΣ Η ΕΡΓΑΣΙΑ. Ημερομηνία παράδοςησ: 12 Νοεμβρίου (Όλεσ οι αςκιςεισ βακμολογοφνται ιςοτίμωσ με 10 μονάδεσ θ κάκε μία)

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

ΑΝΣΙΣΡΟΦΗ ΤΝΑΡΣΗΗ. f y x y f A αντιςτοιχίηεται ςτο μοναδικό x A για το οποίο. Παρατθριςεισ Ιδιότθτεσ τθσ αντίςτροφθσ ςυνάρτθςθσ 1. Η. f A τθσ f.

Ειςαγωγι ςτο Δομθμζνο Προγραμματιςμό. Βαγγζλθσ Οικονόμου

Οντοκεντρικόσ Ρρογραμματιςμόσ

Συναρτήσεις και Πίνακες

343 Ειςαγωγι ςτον Προγραμματιςμό

Αν η ςυνάρτηςη ƒ είναι ςυνεχήσ ςτο να προςδιορίςετε το α.

343 Ειςαγωγι ςτον Ρρογραμματιςμό

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

343 Ειςαγωγι ςτον Προγραμματιςμό

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ

Περιοριςμοί μιασ Β.Δ. ςτθν Access(1/3)

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

Ειδικά Θζματα Βάςεων Δεδομζνων

Πωσ δθμιουργώ φακζλουσ;

Δομές Επανάληψης. Εισαγωγή στη C++

1. Κατέβαςμα του VirtueMart

Προγραμματισμός Υπολογιστών με C++

Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Εργαςτιριο Βάςεων Δεδομζνων

343 Ειςαγωγι ςτον Προγραμματιςμό

Λαμβάνοντασ υπόψη ότι κατά την πρόςθεςη δφο δυαδικϊν ψηφίων ιςχφει: Κρατοφμενο

Προχωρθμζνα Θζματα Συςτθμάτων Ελζγχου

Δομές Δεδομένων & Αλγόριθμοι

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Πληροφορική 2. Αλγόριθμοι

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης

Θεςιακά ςυςτιματα αρίκμθςθσ

343 Ειςαγωγι ςτον Προγραμματιςμό

Δομζσ Δεδομζνων Πίνακεσ

ΗΛΕΚΣΡΟΝΙΚΗ ΤΠΗΡΕΙΑ ΑΠΟΚΣΗΗ ΑΚΑΔΗΜΑΪΚΗ ΣΑΤΣΟΣΗΣΑ

1. Αν θ ςυνάρτθςθ είναι ΠΟΛΤΩΝΤΜΙΚΗ τότε το πεδίο οριςμοφ είναι το διότι για κάκε x θ f(x) δίνει πραγματικό αρικμό.

Transcript:

343 Ειςαγωγι ςτον Προγραμματιςμό Σμιμα Μακθματικϊν Πανεπιςτιμιο Ιωαννίνων Ακαδθμαϊκό Ζτοσ 2016-2017 Χάρθσ Παπαδόπουλοσ 207δ, B όροφοσ e-mail: charis@cs.uoi.gr Ωρεσ Γραφείου: Πζμπτθ 11-13

Θ: διάλεξη (θεωρία) Ε: Εργαστήριο Q: Σεστ quiz Οκτώβριος 2016 Δ Σ Σ Π Π 3 4 5 6 7 Θ 10 11 12 13 14 Θ 17 18 19 20 21 Θ 24 Ε 25 Ε 26 27 28 Νοέμβριος 2016 Δ Σ Σ Π Π 1 2 3 4 Θ 7 Ε 8 Ε 9 10 11 Θ 14 Ε 15 16 17 18 Θ 21 Σ 22 23 24 25 Θ 28 Ε 29 Ε 30 Δεκέμβριος 2016 Δ Σ Σ Π Π 1 2 Θ 5 E 6 Ε 7 8 9 Θ 12 Q 13 14 15 16 Θ 19 20 Ε 21 22 23 Ιανουάριος 2017 Δ Σ Σ Π Π 2 3 4 5 6 9 10 11 12 13 Θ Ημερολόγιο Μακιματοσ Εβδομάδα Θζματα Ύλη βιβλιογραφίασ Πα, 7 Οκτωβρίου Εισαγωγικά μαθήματος & Δυαδική *1+: 1.1, Παράρτθμα 3 αναπαράσταση *2+: Κεφ. 1, Β, Δ Πα, 14 Οκτωβρίου Είσοδος/Έξοδος δεδομένων, τύποι δεδομένων & *1+: 1.2, 1.3, 1.4, 1.5, Παράρτθμα 1 μεταβλητών *2+: Κεφ. 2, Γ Πα, 21 Οκτωβρίου Προεπεξεργαστής, αριθμητικοί και λογικοί *1+: 2.1, Παράρτθμα 2 τελεστές *2+: 4.11, 4.12, Α, Σ Δε, Σρ, 24-25 Οκτ 1 ο Εργαστήριο Πα, 4 Νοεμβρίου Ροή ελέγχου: if/else, switch, for, while, do-while [1]: 2.2, 2.3 και ροή ελέγχου if/else *2+: Κεφ. 4, Κεφ. 5 Δε, Σρ, 7-8 Νοε 2 ο Εργαστήριο Πα, 11 Νοεμβρίου υναρτήσεις, εμβέλεια μεταβλητών και [1]: 3.1, 3.2, 3.3, 4.1, 4.2, 13.1, 13.2 αναδρομή *2+: Κεφ. 6 Δε, Σρ, 14-15 Νοε 3 ο Εργαστήριο Πα, 18 Νοεμβρίου Επανάληψη Εργαστηρίου [1]: 5.1, 5.2, 5.4 *2+: Κεφ. 7 Δε, 21 Νοε 1 ο Test (Ανάπτυξη κώδικα) Πα, 25 Νοεμβρίου Επανάληψη με Παραδείγματα [1]: 5.1, 5.2, 5.4 *2+: Κεφ. 7 Δε, Σρ, 28-29 Νοε 4 ο Εργαστήριο Πα, 2 Δεκεμβρίου Πίνακες (μονοδιάστατοι και πολυδιάστατοι) *1+: Παράρτθμα 4, 9.1, 9.2, 9.3 *2+: 6.7, 6.8, Κεφ. 18 Δε, Σρ, 5-6 Δεκ 5 ο Εργαστήριο Πα, 9 Δεκεμβρίου Εφαρμογές σε ταξινομήσεις και αναζήτηση *1+: Παράρτθμα 4, 9.1, 9.2, 9.3 στοιχείων *2+: 6.7, 6.8, Κεφ. 18 Δε, 12 Δεκ 2 ο Quiz (Ερωτήσεις πολλαπλών επιλογών) Πα, 16 Δεκεμβρίου υμβολοσειρές, εγγραφές, δομές και χρήση [1]: 6.1, 5.3, 12.1, 12.2, 12.4, 13.3 αρχείων *2+: Κεφ. 21, 7.7, 7.8, 17.1-17.10, 19 Δε, 19 Δεκ 6 ο Εργαστήριο (Προαιρετικό) Πα, 13 Ιανουαρίου Επανάληψη

Θ: διάλεξη (θεωρία) Ε: Εργαστήριο Q: Σεστ quiz Οκτώβριος 2016 Δ Σ Σ Π Π 3 4 5 6 7 Θ 10 11 12 13 14 Θ 17 18 19 20 21 Θ 24 Ε 25 Ε 26 27 28 Νοέμβριος 2016 Δ Σ Σ Π Π 1 2 3 4 Θ 7 Ε 8 Ε 9 10 11 Θ 14 Ε 15 16 17 18 Θ 21 Σ 22 23 24 25 Θ 28 Ε 29 Ε 30 Δεκέμβριος 2016 Δ Σ Σ Π Π 1 2 Θ 5 E 6 Ε 7 8 9 Θ 12 Q 13 14 15 16 Θ 19 20 Ε 21 22 23 Ιανουάριος 2017 Δ Σ Σ Π Π 2 3 4 5 6 9 10 11 12 13 Θ Ημερολόγιο Μακιματοσ Εβδομάδα Θζματα Ύλη βιβλιογραφίασ Πα, 7 Οκτωβρίου Εισαγωγικά μαθήματος & Δυαδική *1+: 1.1, Παράρτθμα 3 αναπαράσταση *2+: Κεφ. 1, Β, Δ Πα, 14 Οκτωβρίου Είσοδος/Έξοδος δεδομένων, τύποι δεδομένων & *1+: 1.2, 1.3, 1.4, 1.5, Παράρτθμα 1 μεταβλητών *2+: Κεφ. 2, Γ Πα, 21 Οκτωβρίου Προεπεξεργαστής, αριθμητικοί και λογικοί *1+: 2.1, Παράρτθμα 2 τελεστές *2+: 4.11, 4.12, Α, Σ Δε, Σρ, 24-25 Οκτ 1 ο Εργαστήριο Πα, 4 Νοεμβρίου Ροή ελέγχου: if/else, switch, for, while, do-while [1]: 2.2, 2.3 και ροή ελέγχου if/else *2+: Κεφ. 4, Κεφ. 5 Δε, Σρ, 7-8 Νοε 2 ο Εργαστήριο Πα, 11 Νοεμβρίου υναρτήσεις, εμβέλεια μεταβλητών και [1]: 3.1, 3.2, 3.3, 4.1, 4.2, 13.1, 13.2 αναδρομή *2+: Κεφ. 6 Δε, Σρ, 14-15 Νοε 3 ο Εργαστήριο Πα, 18 Νοεμβρίου Επανάληψη Εργαστηρίου [1]: 5.1, 5.2, 5.4 *2+: Κεφ. 7 Δε, 21 Νοε 1 ο Test (Ανάπτυξη κώδικα) Πα, 25 Νοεμβρίου Επανάληψη με Παραδείγματα [1]: 5.1, 5.2, 5.4 *2+: Κεφ. 7 Δε, Σρ, 28-29 Νοε 4 ο Εργαστήριο Πα, 2 Δεκεμβρίου Πίνακες (μονοδιάστατοι και πολυδιάστατοι) *1+: Παράρτθμα 4, 9.1, 9.2, 9.3 *2+: 6.7, 6.8, Κεφ. 18 Δε, Σρ, 5-6 Δεκ 5 ο Εργαστήριο Πα, 9 Δεκεμβρίου Εφαρμογές σε ταξινομήσεις και αναζήτηση *1+: Παράρτθμα 4, 9.1, 9.2, 9.3 στοιχείων *2+: 6.7, 6.8, Κεφ. 18 Δε, 12 Δεκ 2 ο Quiz (Ερωτήσεις πολλαπλών επιλογών) Πα, 16 Δεκεμβρίου υμβολοσειρές, εγγραφές, δομές και χρήση [1]: 6.1, 5.3, 12.1, 12.2, 12.4, 13.3 αρχείων *2+: Κεφ. 21, 7.7, 7.8, 17.1-17.10, 19 Δε, 19 Δεκ 6 ο Εργαστήριο (Προαιρετικό) Πα, 13 Ιανουαρίου Επανάληψη

Ενότθτεσ 1-24 ΕΠΑΝΑΛΗΨΗ 11-4

Γραπτζσ Εξετάςεισ Προςοχι ςτθν εκφϊνθςθ Δεν είναι απαραίτθτεσ οι εντολζσ using namespace std; system("pause"); ςε ολοκλθρωμζνα προγράμματα κεφτείτε ξεχωριςτά τον οριςμό των ςυναρτιςεων από τθν ςυνάρτθςθ main() ε επόμενο βιμα γράφετε τθν main() με ςτόχο να καλζςετε τθν ςυν/ςθ που φτιάξατε #include <iostream> void fun1( ); int fun2( ); int main( ) return 0; void fun1( ) int fun2() 11-5

Γραπτζσ Εξετάςεισ Προςοχι ςτθν εκφϊνθςθ Δεν είναι απαραίτθτεσ οι εντολζσ using namespace std; system("pause"); ςε ολοκλθρωμζνα προγράμματα κεφτείτε ξεχωριςτά τον οριςμό των ςυναρτιςεων από τθν ςυνάρτθςθ main() ε επόμενο βιμα γράφετε τθν main() με ςτόχο να καλζςετε τθν ςυν/ςθ που φτιάξατε #include <iostream> void fun1( ); int fun2( ); int main( ) return 0; void fun1( ) β) υποερϊτθμα int fun2() γ) υποερϊτθμα α) υποερϊτθμα 11-6

Μ.Ο. τριϊν ακεραίων Να γραφεί ζνα πρόγραμμα που διαβάηει τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων 11-7

Μ.Ο. τριϊν ακεραίων Να γραφεί ζνα πρόγραμμα που διαβάηει τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων #include <iostream> int main( ) int x, y, z, sum; double avg; cout << "Enter x,y,z:"; cin >> x >> y >> z; sum = x + y + z; avg = static_cast<double>(sum)/3; // ή avg = sum / 3.0 ; cout << "Avg: " << avg; return 0; 11-8

Μ.Ο. τριϊν ακεραίων Να γραφεί ζνα πρόγραμμα που διαβάηει τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων. Κατά τθν είςοδο να γίνεται επαναλθπτικόσ ζλεγχοσ τιμϊν. 11-9

Μ.Ο. τριϊν ακεραίων Να γραφεί ζνα πρόγραμμα που διαβάηει τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων. Κατά τθν είςοδο να γίνεται επαναλθπτικόσ ζλεγχοσ τιμϊν. #include <iostream> int main( ) int x, y, z, sum; double avg; do cout << "Enter x,y,z:"; cin >> x >> y >> z; while( (x < 0) (y < 0) (z <0) ); sum = x + y + z; avg = static_cast<double>(sum)/3; // ή avg = sum / 3.0 ; cout << "Avg: " << avg; 11-10

Μ.Ο. τριϊν ακεραίων Να γραφεί μια ςυνάρτθςθ που δζχεται τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων. main(): Καλζςτε από τθν main() τθν ςυνάρτθςθ που φτιάξατε αφοφ πρϊτα διαβάςετε τουσ αρικμοφσ. Θα πρζπει κατά τθν είςοδο να ελζγχετε (επαναλθπτικά) για επιτρεπτζσ τιμζσ. 11-11

#include <iostream> double avg(int x, int y, int z); int main( ) int x, y, z; double avg; do cout << "Enter x,y,z:"; cin >> x >> y >> z; while( (x < 0) (y < 0) (z <0) ); cout << "Avg: " << avg(x, y, z); double avg(int x, int y, int z) int sum; sum = x + y + z; return ( static_cast<double>(sum) / 3 ); 11-12

Μ.Ο. τριϊν ακεραίων Να γραφεί ζνα πρόγραμμα που διαβάηει τρεισ κετικοφσ ακεραίουσ και υπολογίηει το μζςο όρο των τριϊν ακεραίων. Θα πρζπει να χρθςιμοποιιςετε τουλάχιςτον τρεισ ςυν/ςεισ: μια για διάβαςμα μια για υπολογιςμό μια για εκτφπωςθ Θα πρζπει κατά τθν είςοδο να ελζγχετε (επαναλθπτικά) για επιτρεπτζσ τιμζσ. 11-13

#include <iostream> void read(int &x, int &y, int &z); double avg(int x, int y, int z); void print(double a); int main( ) int x, y, z; double mo; read(x,y,z); mo = avg(x,y,z); print(mo); void read(int &x, int &y, int &z) do cout << "Enter x,y,z:"; cin >> x >> y >> z; while( (x < 0) (y < 0) (z <0) ); void print(double a) cout << "Avg: " << a << endl; double avg(int x, int y, int z) int sum; sum = x + y + z; return ( static_cast<double>(sum) / 3 ); 11-14

Γενικά Όλεσ οι προθγοφμενεσ παραλλαγζσ ςτισ εκφωνιςεισ απαιτοφν και διαφορετικό τρόπο επίλυςθσ Πρόγραμμα Πρόγραμμα με ςυναρτιςεισ Πρόγραμμα με ςυναρτιςεισ και ζλεγχο δεδομζνων Πρόγραμμα με επιμζρουσ ςυναρτιςεισ (προςοχι ςτισ &παραμζτρουσ) Πρόγραμμα με επιμζρουσ ςυναρτιςεισ και επαναλθπτικό υπολογιςμό Θα πρζπει να τουσ καταλαβαίνουμε από τθν εκφϊνθςθ ποιο ολοκλθρωμζνο πρόγραμμα ηθτάμε τα υπόλοιπα παραδείγματα μόνο κάποια κατθγορία ηθτάμε και επιλφουμε Θα πρζπει ωςτόςο να μποροφμε να διαχειριςτοφμε και τισ υπόλοιπεσ κατθγορίεσ 11-15

Τπολογιςμόσ υνάρτθςθσ Δθμιουργιςτε μια ςυνάρτθςθ που δζχεται δφο ακζραιεσ τιμζσ x και n, και επιςτρζφει τθν τιμι τθσ ακόλουκθσ ςυνάρτθςθσ 3 5 x 2x 4x ( n 1) x n x n i 3,( 2) ( i 1) x i main(): Καλζςτε από τθν main() τθν ςυνάρτθςθ που φτιάξατε αφοφ πρϊτα διαβάςετε τα x και n και εκτυπϊςτε το ανάλογο αποτζλεςμα τθσ ςυνάρτθςθσ. Θα πρζπει κατά τθν είςοδο να ελζγχετε επαναλθπτικά αν το n είναι περιττό. 11-16

Τπολογιςμόσ υνάρτθςθσ Δθμιουργιςτε μια ςυνάρτθςθ που δζχεται δφο ακζραιεσ τιμζσ x και n, και επιςτρζφει τθν τιμι τθσ ακόλουκθσ ςυνάρτθςθσ 3 5 x 2x 4x ( n 1) x n x n i 3,( 2) ( i 1) x i main(): Καλζςτε από τθν main() τθν ςυνάρτθςθ που φτιάξατε αφοφ πρϊτα διαβάςετε τα x και n και εκτυπϊςτε το ανάλογο αποτζλεςμα τθσ ςυνάρτθςθσ. Θα πρζπει κατά τθν είςοδο να ελζγχετε επαναλθπτικά αν το n είναι περιττό. 11-17

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; 3 5 x 2x 4x ( n while( n % 2 == 0 ); cout << fun(x, n); return 0; 1) x n x n i 3,( 2) ( i 1) x i double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-18

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-19

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-20

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-21

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-22

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; Μπορεί να ηθτοφςαμε και ξεχωριςτι ςυνάρτηςη για το διάβαςμα double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; return sum; 11-23

#include <iostream> #include <cmath> double fun(int x, int n); int main() int x, n; do cout << "Give x, odd n "; cin >> x >> n; while( n % 2 == 0 ); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; void read(int& x, int& n) do cin >> x >> n; while( n%2==0 ); return sum; 11-24

#include <iostream> #include <cmath> double fun(int x, int n); void read(int& x, int& n); int main() int x, n; read(x,n); cout << fun(x, n); return 0; double fun(int x, int n) double sum; sum = x; for(int i = 3; i <= n; i = i + 2) sum = sum + (i-1) * pow(x, i) ; void read(int& x, int& n) do cin >> x >> n; while( n%2==0 ); return sum; 11-25

Πλικοσ ςυγκεκριμζνων ςτοιχείων ενόσ πίνακα Να γραφεί μια ςυνάρτθςθ που κα δζχεται ζναν μονοδιάςτατο πίνακα τφπου int και κα επιςτρζφει το πλικοσ των ςτοιχείων που ζχουν τιμι μεταξφ τθσ τιμισ του πρϊτου ςτοιχείου και του τελευταίου. Ενςωματϊςτε τθν ςυνάρτθςθ ςε ζνα κατάλλθλο πρόγραμμα: Θα διαβάηετε τα ςτοιχεία ενόσ πίνακα με μζγεκοσ 100 Θα εκτυπϊνετε το αποτζλεςμα τθσ ςυνάρτθςθσ 11-26

#include <iostream> int count(int x[], int n); int main() const int SIZE = 100; int x[size]; for(int i = 0; i < SIZE; i++) cin >> x[i]; cout << count(x, SIZE); return 0; int count(int x[], int n) int p; p = 0; for(int i = 0; i < n; i++) if( ( x[0] < x[i] && x[i] < x[n-1]) ( x[0] > x[i] && x[i] > x[n-1]) ) p++; return p; 11-27

#include <iostream> int count(int x[], int n); int main() const int SIZE = 100; int x[size]; for(int i = 0; i < SIZE; i++) cin >> x[i]; cout << count(x, SIZE); return 0; int count(int x[], int n) int p; p = 0; for(int i = 0; i < n; i++) if( ( x[0] < x[i] && x[i] < x[n-1]) ( x[0] > x[i] && x[i] > x[n-1]) ) p++; return p; 11-28

Πλικοσ ςυγκεκριμζνων ςτοιχείων ενόσ πίνακα Να γραφεί μια ςυνάρτθςθ που κα δζχεται ζναν μερικώσ ςυμπληρωμζνο μονοδιάςτατο πίνακα τφπου int και κα επιςτρζφει το πλικοσ των ςτοιχείων που ζχουν τιμι μεταξφ τθσ τιμισ του πρϊτου ςτοιχείου και του τελευταίου. Ενςωματϊςτε τθν ςυνάρτθςθ ςε ζνα κατάλλθλο πρόγραμμα: Θα διαβάηετε τα ςτοιχεία ενόσ πίνακα με μζγεκοσ μζχρι 100 Θα εκτυπϊνετε το αποτζλεςμα τθσ ςυνάρτθςθσ 11-29

#include <iostream> int count(int x[], int my_n, int n); int main() const int SIZE = 100; int x[size], new_n; do cin >> new_n; while (new_n <= 0 new_n > SIZE); for(int i = 0; i < new_n; i++) cin >> x[i]; 1 οσ τρόποσ: Διαβάηει πρϊτα το Ν (μζγεκοσ του πίνακα) και ςτθ ςυνζχεια διαβάηει τα Ν ςτοιχεία cout << count(x, new_n, SIZE); return 0; int count(int x[], int my_n, int n) int p; p = 0; for(int i = 0; i < my_n; i++) if((x[0]<x[i] && x[i]<x[my_n-1]) (x[0]>x[i] && x[i]>x[my_n-1])) p++; return p; 11-30

#include <iostream> int count(int x[], int my_n, int n); int main() const int SIZE = 100; int x[size], new_n = 0, next; cin >> next; while( next!= -1 new_n < SIZE) x[new_n] = next; new_n++; cin >> next; cout << count(x, new_n, SIZE); return 0; int count(int x[], int my_n, int n) int p; p = 0; for(int i = 0; i < my_n; i++) if((x[0]<x[i] && x[i]<x[my_n-1]) (x[0]>x[i] && x[i]>x[my_n-1])) p++; return p; 2 οσ τρόποσ: Διαβάηει το επόμενο ςτοιχείο μζχρι το "-1" παρακολουκεί το πλικοσ των ςτοιχείων 11-31

Πλικοσ ςυγκεκριμζνων ςτοιχείων ενόσ πίνακα Να γραφεί μια ςυνάρτθςθ που κα δζχεται ζναν μερικώσ ςυμπληρωμζνο μονοδιάςτατο πίνακα τφπου int και κα επιςτρζφει το πλικοσ των ςτοιχείων που ζχουν τιμι μεταξφ τθσ τιμισ του πρϊτου ςτοιχείου και του τελευταίου. Ενςωματϊςτε τθν ςυνάρτθςθ ςε ζνα κατάλλθλο πρόγραμμα: Θα ορίςετε και κα χρθςιμοποιείτε μια επιπλζον ςυνάρτθςθ για το διάβαςμα των ςτοιχείων του πίνακα Θα εκτυπϊνετε το αποτζλεςμα τθσ ςυνάρτθςθσ 11-32

#include <iostream> void read(int x[], int& my_n, int n); int count(int x[], int my_n, int n); int main() const int SIZE = 100; int x[size], new_n = 0, next; read(x, new_n, SIZE); cout << count(x, new_n, SIZE); return 0; int count(int x[], int my_n, int n) int p; p = 0; for(int i = 0; i < my_n; i++) if((x[0]<x[i] && x[i]<x[my_n-1]) (x[0]>x[i] && x[i]>x[my_n-1])) p++; return p; 11-33

#include <iostream> void read(int x[], int& my_n, int n); int count(int x[], int my_n, int n); int main() const int SIZE = 100; int x[size], new_n = 0, next; read(x, new_n, SIZE); cout << count(x, new_n, SIZE); return 0; int count(int x[], int my_n, int n) int p; p = 0; for(int i = 0; i < my_n; i++) if((x[0]<x[i] && x[i]<x[my_n-1]) (x[0]>x[i] && x[i]>x[my_n-1])) p++; return p; void read(int x[], int& my_n, int n) cin >> next; while( next!= -1 my_n < n) x[my_n] = next; my_n++; cin >> next; 11-34

Πλθςιζςτερο ςτο μζςο όρο Να γραφεί ζνα πρόγραμμα που κα διαβάηει ζναν μερικϊσ ςυμπλθρωμζνο πίνακα τφπου double και κα επιςτρζφει τθν τιμι του ςτοιχείου που είναι το πληςιέςτερο ςτον μζςο όρο όλων των ςτοιχείων. Θα πρζπει να χρθςιμοποιιςετε τουλάχιςτον τρείσ ςυν/ςεισ: μια για διάβαςμα του πίνακα μζχρι 100 ςτοιχείων δφο για υπολογιςμό 11-35

double closer(double a[], int my_n, int n) double p, mo; mo = avg(a,my_n,n); p = a[0]; for(int i = 0; i < my_n; i++) if( fabs(a[i]-mo) < fabs(p-mo) ) p = a[i]; return p; 11-36

double avg(double a[], int my_n, int n) double sum; sum = 0.0; for(int i = 0; i < my_n; i++) sum = sum + a[i]; if(my_n <= 0) cout << "No avg!"; return -1.0; return (sum / my_n); double closer(double a[], int my_n, int n) double p, mo; mo = avg(a,my_n,n); p = a[0]; for(int i = 0; i < my_n; i++) if( fabs(a[i]-mo) < fabs(p-mo) ) p = a[i]; return p; 11-37

double avg(double a[], int my_n, int n) double sum; sum = 0.0; for(int i = 0; i < my_n; i++) sum = sum + a[i]; if(my_n <= 0) cout << "No avg!"; return -1.0; return (sum / my_n); double closer(double a[], int my_n, int n) double p, mo; mo = avg(a,my_n,n); p = a[0]; for(int i = 0; i < my_n; i++) if( fabs(a[i]-mo) < fabs(p-mo) ) p = a[i]; return p; #include <cmath> 11-38

void read(double a[], int& my_n, int n) cin >> next; while( next!= -1 my_n < n) a[new_n] = next; my_n++; cin >> next; 11-39

#include <iostream> #include <cmath> void read(double a[], int& my_n, int n); double avg(double a[], int my_n, int n); double closer(double a[], int my_n, int n); int main() const int SIZE = 100; double a[size], int new_n = 0; read(a, new_n, SIZE); cout << closer(a, new_n, SIZE); return 0; void read(double a[], int& my_n, int n)... double closer(double a[], int my_n, int n)... double avg(double a[], int my_n, int n)... δεν χρειάηεται να τα ξαναγράψουμε ςτο ερϊτθμα που αφορά τθ main() 11-40

#include <iostream> #include <cmath> void read(double a[], int& my_n, int n); double avg(double a[], int my_n, int n); double closer(double a[], int my_n, int n); χρειάηονται ωςτόςο οι δθλϊςεισ των ςυναρτιςεων int main() const int SIZE = 100; double a[size], int new_n = 0; read(a, new_n, SIZE); cout << closer(a, new_n, SIZE); return 0; void read(double a[], int& my_n, int n)... double closer(double a[], int my_n, int n)... double avg(double a[], int my_n, int n)... δεν χρειάηεται να τα ξαναγράψουμε ςτο ερϊτθμα που αφορά τθ main() 11-41

Ελάχιςτθ απόλυτθ τιμι Να γραφεί μια ςυνάρτθςθ θ οποία κα δζχεται ζναν μονοδιάςτατο πίνακα τφπου double και κα επιςτρζφει τθν ελάχιςτθ από τισ απόλυτεσ τιμζσ των ςτοιχείων του 11-42

Ελάχιςτθ απόλυτθ τιμι Να γραφεί μια ςυνάρτθςθ θ οποία κα δζχεται ζναν μονοδιάςτατο πίνακα τφπου double και κα επιςτρζφει τθν ελάχιςτθ από τισ απόλυτεσ τιμζσ των ςτοιχείων του double closerabs(double a[], int n) double u; u = fabs(a[0]); for(int i = 0; i < n; i++) if( fabs(a[i]) < u ) u = fabs(a[i]); return u; 11-43

Τπολογιςμόσ πολυωνφμου Για να υπολογίςουμε τθν τιμι ενόσ πολυωνφμου ς' ζνα ςθμείο x, πρζπει να υπολογίςουμε το άκροιςμα: v 0 + v 1 x + v 2 x 2 + v 3 x 3 +... Να γραφεί μια ςυνάρτθςθ θ οποία α) Θα δζχεται ζναν μονοδιάςτατο πίνακα v τφπου double και μια τιμι x, επίςθσ double. β) Θα υπολογίηει και κα επιςτρζφει τθν τιμι του πολυωνφμου. 11-44

Τπολογιςμόσ πολυωνφμου Για να υπολογίςουμε τθν τιμι ενόσ πολυωνφμου ς' ζνα ςθμείο x, πρζπει να υπολογίςουμε το άκροιςμα: v 0 + v 1 x + v 2 x 2 + v 3 x 3 +... Να γραφεί μια ςυνάρτθςθ θ οποία α) Θα δζχεται ζναν μονοδιάςτατο πίνακα v τφπου double και μια τιμι x, επίςθσ double. β) Θα υπολογίηει και κα επιςτρζφει τθν τιμι του πολυωνφμου. double compute(double v[], int n, double x) double s; s = 0; for(int i = 0; i < n; i++) s = s + v[i]*pow(x,i); return s; 11-45

Εφρεςθ max από 2 πίνακεσ Να γραφεί ςυνάρτθςθ που δζχεται δφο πίνακεσ a,b και επιςτρζφει ποιοσ πίνακασ από τουσ δφο ζχει το μεγαλφτερο άκροιςμα. κεφτείτε πρϊτα τθν διλωςθ τθσ ςυνάρτθςθσ τι κα επιςτρζφει; 11-46

Εφρεςθ max από 2 πίνακεσ Να γραφεί ςυνάρτθςθ που δζχεται δφο πίνακεσ a,b και επιςτρζφει ποιοσ πίνακασ από τουσ δφο ζχει το μεγαλφτερο άκροιςμα. κεφτείτε πρϊτα τθν διλωςθ τθσ ςυνάρτθςθσ τι κα επιςτρζφει; Θεωροφμε ότι αν θ ςυνάρτθςθ επιςτρζφει 1 τότε αναφερόμαςτε ςτον πίνακα a (sum(a) > sum(b)), 2 τότε αναφερόμαςτε ςτον πίνακα b (sum(a) < sum(b)), και 3 τότε αναφερόμαςτε και ςτουσ 2 πίνακεσ (sum(a)=sum(b)) 11-47

int maxab(int a[], int na, int b[], int nb) int i, suma=0, sumb=0; for(i = 0; i < na; i++) suma = suma + a[i]; for(i = 0; i < nb; i++) sumb = sumb + b[i]; if(suma > sumb) return 1; if(suma < sumb) return 2; if(suma == sumb) return 3; 11-48

Σο τρίγωνο του Pascal Να γραφεί μια ςυνάρτθςθ που κα δζχεται ζναν διςδιάςτατο ακζραιο πίνακα με το πολφ 100 ςτιλεσ και κα τον γεμίηει με τισ τιμζσ των ςτοιχείων του τριγϊνου του Pascal. Σο τρίγωνο του Pascal περιζχει ςε κάκε γραμμι τουσ ςυντελεςτζσ τθσ ανάπτυξθσ του (Α+Β) Κ, όπου Κ είναι ο αρικμόσ τθσ γραμμισ: Κ = 1 1 1 Κ = 2 1 2 1 Κ = 3 1 3 3 1 Κ = 4 1 4 6 4 1 Κ = 5 1 5 10 10 5 1 Η γραμμι Κ του τριγϊνου ζχει Κ+1 ςτοιχεία. Σο πρϊτο και το τελευταίο είναι μονάδα. Κάκε ενδιάμεςο ςτοιχείο ςχθματίηεται ςαν άκροιςμα των δυο ςτοιχείων τθσ προθγοφμενθσ γραμμισ που βρίςκονται ακριβϊσ πάνω από αυτό και ςτθν αμζςωσ προσ αριςτερά κζςθ. Φυςικά, αυτόσ ο κανόνασ δεν ιςχφει για τθν πρϊτθ γραμμι που δεν ζχει ενδιάμεςα ςτοιχεία, οφτε υπάρχει προθγοφμενθ γραμμι. 1 θ γραμμι: p[0][0] =1; p[0][1] = 1; Σα υπόλοιπα ςτοιχεία του πίνακα ζχουν τιμι 0. 11-49

Σο τρίγωνο του Pascal Να γραφεί μια ςυνάρτθςθ που κα δζχεται ζναν διςδιάςτατο ακζραιο πίνακα με το πολφ 100 ςτιλεσ και κα τον γεμίηει με τισ τιμζσ των ςτοιχείων του τριγϊνου του Pascal. Σο τρίγωνο του Pascal περιζχει ςε κάκε γραμμι τουσ ςυντελεςτζσ τθσ ανάπτυξθσ του (Α+Β) Κ, όπου Κ είναι ο αρικμόσ τθσ γραμμισ: Κ = 1 1 1 Κ = 2 1 2 1 Κ = 3 1 3 3 1 Κ = 4 1 4 6 4 1 Κ = 5 1 5 10 10 5 1 Πϊσ κα "γεμίηαμε" τθν κάκε γραμμι p[ ][ j ] αν ξεκινοφςαμε με δεδομζνθ τθν προθγοφμενθ γραμμι p[ ] [ j 1 ]; Η γραμμι Κ του τριγϊνου ζχει Κ+1 ςτοιχεία. Σο πρϊτο και το τελευταίο είναι μονάδα. Κάκε ενδιάμεςο ςτοιχείο ςχθματίηεται ςαν άκροιςμα των δυο ςτοιχείων τθσ προθγοφμενθσ γραμμισ που βρίςκονται ακριβϊσ πάνω από αυτό και ςτθν αμζςωσ προσ αριςτερά κζςθ. Φυςικά, αυτόσ ο κανόνασ δεν ιςχφει για τθν πρϊτθ γραμμι που δεν ζχει ενδιάμεςα ςτοιχεία, οφτε υπάρχει προθγοφμενθ γραμμι. 1 θ γραμμι: p[0][0] =1; p[0][1] = 1; Σα υπόλοιπα ςτοιχεία του πίνακα ζχουν τιμι 0. 11-50

Σο τρίγωνο του Pascal void pascal(int p[][100], int n1) int i,j; for(i = 0; i < n1; i++) for(j = 0; j < 100; j++) p[i][j]=0; p[1][0]=1; p[1][1]=1; for(i=2; i<n1; i++) p[i][0]=1; for(j = 1; j < 100; j++) p[i][j] = p[i-1][j-1] + p[i-1][j]; 11-51

Ανάςτροφοσ Να γραφεί μια μζκοδοσ θ οποία κα δζχεται ζναν μερικϊσ ςυμπλθρωμζνο διςδιάςτατο τετράγωνο πίνακα τφπου double με το πολφ 100 ςτιλεσ και κα αναςτρζφει τον πίνακα εςωτερικά, μζςα ςτον ίδιο πίνακα. 11-52

Ανάςτροφοσ Να γραφεί μια μζκοδοσ θ οποία κα δζχεται ζναν μερικϊσ ςυμπλθρωμζνο διςδιάςτατο τετράγωνο πίνακα τφπου double με το πολφ 100 ςτιλεσ και κα αναςτρζφει τον πίνακα εςωτερικά, μζςα ςτον ίδιο πίνακα. void reversed(int a[][100], int n1) for(int i = 0; i < n1; i++) for(int j = 0; j < i; j++) double z=a[i][j]; a[i][j]=a[j][i]; a[j][i]=z; 11-53

Ανάςτροφοσ Να γραφεί μια μζκοδοσ θ οποία κα δζχεται ζναν μερικϊσ ςυμπλθρωμζνο διςδιάςτατο τετράγωνο πίνακα τφπου double με το πολφ 100 ςτιλεσ και κα αναςτρζφει τον πίνακα εςωτερικά, μζςα ςτον ίδιο πίνακα. void reversed(int a[][100], int n1) for(int i = 0; i < n1; i++) for(int j = 0; j < i; j++) double z=a[i][j]; a[i][j]=a[j][i]; a[j][i]=z; ΠΡΟΟΧΗ: Αν είχαμε a[i][j]=a[j][i]; τότε κα καταςτρζφαμε τον πίνακα a. 11-54

Ανάςτροφοσ Να γραφεί μια μζκοδοσ θ οποία κα δζχεται ζναν μερικϊσ ςυμπλθρωμζνο διςδιάςτατο τετράγωνο πίνακα τφπου double με το πολφ 100 ςτιλεσ και κα αναςτρζφει τον πίνακα εςωτερικά, μζςα ςτον ίδιο πίνακα. void reversed(int a[][100], int n1) for(int i = 0; i < n1; i++) for(int j = 0; j < i; j++) double z=a[i][j]; a[i][j]=a[j][i]; a[j][i]=z; ΠΡΟΟΧΗ: Αν αντί για j < i γράψουμε j<100, τότε θ ςυν/ςθ δεν κα δουλζψει. Προςπακιςτε να εντοπίςετε τθν αιτία τθσ αποτυχίασ. ΠΡΟΟΧΗ: Αν είχαμε a[i][j]=a[j][i]; τότε κα καταςτρζφαμε τον πίνακα a. 11-55

Εφρεςθ γραμμισ μεγίςτου ςτοιχείου Να γραφεί μια ςυνάρτθςθ θ οποία κα δζχεται ζναν πίνακα τφπου double με 50 ςτιλεσ και κα επιςτρζφει τον αρικμό τθσ γραμμισ ςτθν οποία ανικει το μεγαλφτερο ςτοιχείο. 11-56

Εφρεςθ γραμμισ μεγίςτου ςτοιχείου Να γραφεί μια ςυνάρτθςθ θ οποία κα δζχεται ζναν πίνακα τφπου double με 50 ςτιλεσ και κα επιςτρζφει τον αρικμό τθσ γραμμισ ςτθν οποία ανικει το μεγαλφτερο ςτοιχείο. int maxline(int a[][50], int n1) int i,j,im,jm; im = 0; jm = 0; for(i = 0; i < n1; i++) for(j = 0; j < 50; j++) if( b[i][j] > b[im][jm] ) im=i; jm=j; return im; 11-57

Βιβλιογραφία Καλι Μελζτθ [1] W. Savitch, Πλιρθσ C++, Εκδόςεισ Σηιόλα, 2011 [2+ Η. Deitel and P. Deitel, C++ Προγραμματιςμόσ 6θ Εκδοςθ, Εκδόςεισ Μ. Γκιοφρδασ, 2013 Ύλη βιβλιογραφίασ [1]: Κεφάλαια: 1, 2, 3, 4, 5, 9, 13 Ενότθτεσ: 6.1 Παραρτιματα: 1, 2, 3 [2]: Κεφάλαια: 1, 2, 4, 5, 6, 7, 18, 19, 21 Ενότθτεσ: 8.6, 17.1-17.10 Παραρτιματα: Α, Β, Γ, Δ, Σ 11-58