Προγραμματιστικές Ασκήσεις, Φυλλάδιο 2: Δείκτες & Δυναμική Ανάθεση Μνήμης

Σχετικά έγγραφα
Διαδικασιακός Προγραμματισμός

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

Άσκηση 1: Λύση: Για το άθροισμα ισχύει: κι επειδή οι μέσες τιμές των Χ και Υ είναι 0: Έτσι η διασπορά της Ζ=Χ+Υ είναι:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

Δομημένος Προγραμματισμός (ΤΛ1006)

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

Κεφάλαιο ΙV: Δείκτες και πίνακες. 4.1 Δείκτες.

Εισαγωγή στην Στατιστική (ΔΕ200Α-210Α)

Δομημένος Προγραμματισμός (ΤΛ1006)

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα;

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Προγραμματιστικό Περιβάλλον

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

Προγραμματισμός ΙI (Θ)

Προγραμματισμός Η/Υ (ΤΛ2007 )

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Τιμή Τιμή. σκορ. ζωές

Μάριος Αγγελίδης

Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα)

10 η Διάλεξη C++ - Πίνακες. Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός ΙI (Θ)

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Pascal. 15 Νοεμβρίου 2011

Προγραμματισμός 2 Σημειώσεις εργαστηρίου

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων;

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

Ανάπτυξη και Σχεδίαση Λογισμικού

1. Κατασκευάστε ένα διάνυσμα με στοιχεία τους ζυγούς αριθμούς μεταξύ του 31 και 75

3 ο Εργαστήριο Μεταβλητές, Τελεστές

ΦΥΛΛΟ ΑΠΑΝΤΗΣΗΣ 3 ης ΕΡΓΑΣΙΑΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

Διαδικασιακός Προγραμματισμός

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

Προγραμματισμός Η/Υ (ΤΛ2007 )

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Κεφάλαιο V: Δομές και ενώσεις. 5.1 Δομές.

Εισαγωγή στην Στατιστική (ΔΕ200Α-210Α)

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ ÊÁËÁÌÁÔÁ

Το πρόγραμμα συγχρηματοδοτείται 75% από το Ευρωπαϊκό κοινωνικό ταμείο και 25% από εθνικούς πόρους.

ΠΡΟΗΓΜΕΝΟΙ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ PROJECT 2: MEMORY MANAGEMENT

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών

ΕΡΓΑΣΤΗΡΙΟ ΙV. ΤΜΗΜΑ ΙΕΘΝΟΥΣ ΕΜΠΟΡΙΟΥ ΜΑΘΗΜΑΤΙΚΑ ΟΙΚΟΝΟΜΙΚΗΣ ΑΝΑΛΥΣΗΣ Ι Μονοβασίλης Θεόδωρος

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Α2. Να αναφέρετε ονομαστικά: i) τα αλγοριθμικά κριτήρια ii) τους τρόπους αναπαράστασης αλγορίθμου. (μονάδες 10)

8 FORTRAN 77/90/95/2003

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 27/11/11, 22:00

Δομημένος Προγραμματισμός

Ευθεία Mayer Θεωρία - Ασκήσεις

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Υπολογισμός - Συλλογή Δεδομένων - Πίνακες

Προγραμματισμός I (Θ)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2018 Β ΦΑΣΗ

Α2. Να γράψετε στο τετράδιο απαντήσεών σας το κατάλληλο τμήμα κώδικα, κάνοντας τις απαραίτητες αλλαγές σύμφωνα με την εκάστοτε εκφώνηση:

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσμία: Τετάρτη 23/11/2016, 21:00

ΣΤΑΤΙΣΤΙΚΟΙ ΠΙΝΑΚΕΣ. ΓΕΝΙΚΟΙ (περιέχουν όλες τις πληροφορίες που προκύπτουν από μια στατιστική έρευνα) ΕΙΔΙΚΟΙ ( είναι συνοπτικοί και σαφείς )

Sheet1_2. - Δεν απελευθερώνεις τη δυναµικά δεσµευµένη µνήµη. - Η έξοδος του προγράµµατός σου δεν είναι ακριβώς όπως ζητούσε η άσκηση.

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C

Εισαγωγή στην Αριθμητική Ανάλυση

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Πέµπτη 17/12/2015, 22:00

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Γραφικά υπολογιστών Εργαστήριο 4 Εισαγωγή στις λίστες

Διαδικασιακός Προγραμματισμός

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η.

Εισαγωγή στην Στατιστική (ΔΕ200Α-210Α)

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

Περιεχόμενα. Δομές δεδομένων. Τεχνικές σχεδίασης αλγορίθμων. Εισαγωγή στον προγραμματισμό. Υποπρογράμματα. Επαναληπτικά κριτήρια αξιολόγησης

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο 2: Δείκτες & Δυναμική Ανάθεση Μνήμης Εκφώνηση: 2 Απριλίου 202 Παράδοση: Δευτέρα, 07/05/202, ώρα 09:59 Σας ζητείτε να γράψετε ένα πρόγραμμα σε C που θα αποθηκεύει και θα κάνει ανάλυση στατιστικών δεδομένων που αφορούν χώρες και βρίσκονται στο ste gapmnder.org. Μία σύντομη περιγραφή των πινάκων ακολουθεί: Βασικοί πίνακες. Πίνακας float **nflaton: Ετήσιος πληθωρισμός σε ποσοστό επί του Ακαθάριστου Εθνικού Προϊόντος ΑΕΠ. Π.χ., 990 99 992 993 994 995 996 997 998 999 2000 200 2002 Belgum 2.82 2.877 3.425 3.9933 2.0943.22 0.539.079 2.076 0.35.849 2.027.85 Chle 22.46 22.44 2.89.75 3.73 0.42 2.727 4.27.926 2.432 4.56 3.793 4.68 Greece 20.69 9.79 4.8 4.429.82 9.792 7.34 6.776 5.97 3.029 3.397 3.8 3.40 Japan 2.406 2.938.63 0.5298 0.0922-0.5-0.57 0.599 0.03 -.29 -.73 -.23 -.55 Zamba 06.4 92.65 65.5 43.66 65.409 38.04 22.9 25.97 9.49 2.35 30.04 24.3 2.7 2. Πίνακας float **aep_growth: Ετήσια αύξηση του ΑΕΠ. Π.χ., 990 99 992 993 994 995 996 997 998 999 2000 200 2002 Belgum.92 2.4 2.2 2.06 2.08 2.4 2.03 2.2.80.73.79.72.72 Chle 0.68 0.85 3.49 4.53 4.62 5.5 5.8 5.95 5.6 4.69 4.8 4.44 3.55 Greece 0.20 0.68 0.83 0.72 0.67 0.58 0.73.28.6..54.74 2.0 Japan 3.38 3.47 3.32 3.23 3.05 2.75 2.82 2.63.83.29.03 0.72 0.59 Zamba -.42 -.43 -.90-2.76-3.54-3.87-2.99-3.29-3.56-4.0-2.52-2.89 -.66 3. Πίνακας float **nvestments: Ποσοστό επί του ΑΕΠ των επενδύσεων ανά έτος. Π.χ., 990 99 992 993 994 995 996 997 998 999 2000 200 2002 Belgum 2.72 20.64 20.54 20.27 2.8 20.0 9.57 20.4 20.48 2. 2.83 20.49 9.22 Chle 25.8 22.38 24.3 26.93 24.85 26.8 27.38 27.72 26.9 20.9 2.86 22.09 2.66 Greece 2.67 28. 20.0 9.09 20.04 8.76 9.6 9.67 20.58 20.06 23.32 23.2 22.3 Japan 33.3 32.74 30.97 29.59 28.36 28.43 28.92 28.36 26.26 24.85 25.44 24.75 23.07 Zamba 7.28.02.89 5.04 4.4 5.92 2.85 4.57 6.39 6.2 7.43 9.0 2.9 4. Πίνακας char **countres: Θα αποθηκεύει τα ονόματα των χωρών. Θα πρέπει να υπάρχει αντιστοιχία μεταξύ των γραμμών του πίνακα countres και αυτόν των δεδομένων. Π.χ.,

Ανάθεση τιμής για strngs Γραμμή 0 B e l g u m \0 strcpy(countres[0], Belgum ); Γραμμή C h l e \0 Αντίστοιχα Γραμμή 2 G r e e c e \0 Γραμμή 3 J a p a n \0 Γραμμή 4 Z a m b a \0 5. Πίνακας nt *years: Θα αποθηκεύει τα ονόματα των ετών για τα οποία διατηρούμε στατιστικά. Θα πρέπει να υπάρχει αντιστοιχία μεταξύ των εγγραφών στον πίνακα years και των στηλών των δεδομένων. Π.χ., 990 99 992 993 994 995 996 997 998 999 2000 200 2002 Βασικές λειτουργίες της man 0. Η man ξεκινά με δέσμευση μνήμης για τους βασικούς πίνακες με κατάλληλες εντολές malloc. Εισάγετε με copy paste από το αρχείο http://www.cs.uo.gr/~cs423/exercses/hw2_dataentry.asc τις τιμές για τους βασικούς πίνακες -3 (για τους άλλους δύο πίνακες κάντε το data entry εσείς προσοχή στις συμβολοσειρές). /* Είναι ακόμα καλύτερα να ορίσετε μια συνάρτηση μέσα στην οποίa κάνετε αυτή τη δουλειά, αρκεί να περάσετε τους πίνακες και τις διαστάσεις τους ως παραμέτρους */ Στη συνέχεια, η man μέσω ενός μενού, επιτρέπει στο χρήστη να διαλέξει ή έξοδο, ή κάποια από τις παρακάτω λειτουργίες. Κάθε μία από τις παρακάτω λειτουργίες υποστηρίζεται από μια συνάρτηση (και κάποιες εντολές στη man).. Υπολογισμός μέσων, μεγίστων και ελαχίστων τιμών: Θα υλοποιήσετε μια συνάρτηση calc_stats() που θα παίρνει ως ορίσματα τους κατάλληλους πίνακες και τα μεγέθη τους, και θα υπολογίζει τη μέγιστη, ελάχιστη και μέση τιμή ανά χώρα, για κάθε μία από τις ποσότητες των βασικών πινάκων. Για το σκοπό αυτό, πριν κληθεί η σχετική συνάρτηση, πρέπει να κατασκευαστούν δυναμικά οι εξής πίνακες: Πίνακες float *avg_nflaton, *avg_aep_growth, *avg_nvestments: Θα έχουν διάσταση όσος και ο αριθμός των χωρών. Στη θέση θα αποθηκεύεται ο μέσος όρος της αντίστοιχης στατιστικής ποσότητας για τη χώρα που βρίσκεται στην γραμμή του πίνακα countres και συνεπώς στην γραμμή του πίνακα δεδομένων. 2

Πίνακες float *mn_nflaton, *max_nflaton, *mn_aep_growth, *max_avg_growth, *mn_nvestments, *max_nvestments: αντίστοιχα, για τις μέγιστες && ελάχιστες τιμές. 2. Υπολογισμός συμμεταβλητότητας: Έστω δυο πίνακες παρατηρήσεων Χ και Υ (στα πλαίσια της άσκησης θα μπορούσαν X = πληθωρισμός της Ελλάδας από το 990 έως το 2003 και Υ = αύξηση του ΑΕΠ από το 990 έως το 2003). Τότε η συσχέτιση των δύο ποσοτήτων cov(x, Y) δίνεται από τους παρακάτω τύπους: X = cov( X, Y) = X, Y = Y X Y XY Μην ξεχνάτε ότι τις μέσες τιμές X, Y τις έχετε υπολογίσει για όλες τις χώρες στους πίνακες avg_nflaton και avg_aep_growth. Η συμμεταβλητότητα δυο ποσοτήτων που μεταβάλλονται στο χρόνο, είναι ένα μέτρο της συσχέτισης τους. Ισχύει το εξής: cov(x, Y) είναι κοντά στο μηδέν: Οι ποσότητες είναι ανεξάρτητες cov(x, Y) είναι αρνητικό: Όσο η Χ αυξάνεται η Υ μειώνεται και αντίστροφα cov(x, Y) είναι θετικό: Όσο η Χ αυξάνεται η Υ αυξάνεται Στη man θα πρέπει ο χρήστης να ερωτάται (α) για ποια γραμμή (δηλ., χώρα) και (β) για ποια ποσότητα (δηλ., πίνακα) ενδιαφέρεται. Η man με αυτή την πληροφορία θα καλεί τη σχετική συνάρτηση υπολογισμού συμμεταβλητότητας, περνώντας τα σωστά ορίσματα. /* Ουσιαστικά, πρέπει να διαλέξετε δύο από τους 3 βασικούς πίνακες και μια γραμμή (ίδια και στους δύο πίνακες). Μπορείτε να το κάνετε με μια f, αλλά είναι πιο εύκολο να χρησιμοποιήσετε ένα ponter */ Η συνάρτηση που θα ορίσετε (α) θα περνά το αποτέλεσμα του υπολογισμού σε μια μεταβλητή της man, ΥΠΟΧΡΕΩΤΙΚΑ by reference (β) θα επιστρέφει 0,-, ανάλογα με τους παραπάνω κανόνες Η man θα τυπώνει τα σχετικά διαγνωστικά στο χρήστη Έτσι λοιπόν θα μπορείτε να διαπιστώσετε αν, για παράδειγμα: Στην Ελλάδα ο πληθωρισμός και το ποσοστό αύξησης του ΑΕΠ συσχετίζονται αρνητικά. Στην Ελλάδα το ποσοστό αύξησης του ΑΕΠ κινούνται και το ποσοστό επενδύσεων συσχετίζονται θετικά. 3

3. Διδιάστατη εκτύπωση στην κονσόλα: Προσπαθήστε να αποδώσετε τις στατιστικές ποσότητες ανά χώρα σε ένα μονοδιάστατο γράφημα στην κονσόλα. Πχ. Πληθωρισμός της Ελλάδας από 990-2003. Αυτό σημαίνει ότι ο χρήστης πρέπει να ερωτηθεί (α) για ποιο πίνακα ενδιαφέρεται και (β) για ποια γραμμή (δηλ., χώρα) του πίνακα αυτού. Μετά καλείται μια vod συνάρτηση plot(), με τα κατάλληλα ορίσματα, η οποία διενεργεί την γραφική απεικόνιση. Για το προαναφερθέν παράδειγμα, έστω Μετρήσεις στον πίνακα nflaton (κατ έτος) 990 99 992 993 994 995 996 997 998 999 2000 200 2002 990 20,69 9,79 4,8 4,429,82 9,792 7,34 6,776 5,97 3,029 3,397 3,8 3,40 3,66 Αναπαράσταση Inflaton (Greece) * * * * * * 90 9 92 93 94 95 96 97 98 99 00 0 02 03 Η βασική ιδέα έχει ως εξής. Ζητάμε από το χρήστη ένα αριθμό για τις μετρήσεις που θα ζωγραφίσουμε. Στο παράδειγμά μας έχουμε 3 χρονιές. Αυτό μας φτιάχνει ένα πίνακα 3Χ3 κελιών στα οποία θα πρέπει να απεικονίσουμε τη γραφική παράσταση. Ο πίνακας, έστω plotskeleton, αρχικοποιείται σε μια ουδέτερη τιμή. Επίσης ζητούμε και ένα εύρος για την οθόνη μας (π.χ., 80 χαρακτήρες). Παρατηρείστε ότι στην εκτύπωση, για κάθε κελί θα έχουμε 80/3 =6 χαρακτήρες για κάθε κελί. Βολεύει να πάρετε τον πρώτο περιττό αριθμό χαρακτήρων που είναι μικρότερος από το παραπάνω όριο, π.χ., εδώ, 5. Θα ονομάσουμε την ποσότητα αυτή pxelgroup. Στη συνέχεια, πρέπει απεικονίσουμε κάθε ζεύγος τιμών σε ένα κελί του πίνακα plotskeleton. Για τον άξονα των x θεωρούμε ότι οι τιμές είναι διακριτές και κάθε στοιχείο απεικονίζεται στην αντίστοιχη θέση (εδώ: το 990 στο 0, το 99 στο, κοκ). Για κάθε γραμμή στον άξονα των y να αντιστοιχισθεί ένα εύρος τιμών. Για να γίνει αυτό, αφαιρούμε τη μέγιστη από την ελάχιστη τιμή και διαιρούμε δια του αριθμού των γραμμών (εδώ: (20.690-3.66) / 3). Αυτό είναι το εύρος τιμών κάθε γραμμής (έστω lnerange). Με βάση αυτό μπορούμε να ξέρουμε σε ποια γραμμή αντιστοιχίζεται κάθε μέτρηση (πώς?). 4

Θυμηθείτε ότι οι μετρήσεις μας είναι της μορφής (x,y), π.χ., εδώ, μια μέτρηση είναι το (992, 4.8). Με βάση τις συντεταγμένες αυτές, και τις παραπάνω απεικονίσεις λοιπόν αναθέτουμε τιμή στο αντίστοιχο κελί του πίνακα plotskeleton. Η συνάρτηση εκτύπωσης (α) τυπώνει μια κεφαλίδα (σκεφθείτε πώς θα την φτιάξετε, περνώντας κατάλληλες παραμέτρους στη συνάρτησή σας) (β) για κάθε γραμμή, τυπώνει (προαιρετικά: το εύρος τιμών), μετά το σύμβολο " (για τον άξονα των y, και, για κάθε κελί της γραμμής Είτε τόσα spaces όσα λέει η τιμή pxelgroup, αν το κελί είναι άδειο Είτε pxelgroup/2 spaces, ένα *, και άλλα τόσα spaces, αλλιώς (γ) τόσες "-" όσες χρειάζεται για τον άξονα των x (δ) τις τιμές του άξονα των x Μπορείτε να προβλέψετε και για λίγα κενά εκατέρωθεν των αξόνων. Προσέξτε: ο πίνακας plotskeleton μπορεί να είτε πίνακας χαρακτήρων, είτε πίνακας πραγματικών με την αντίστοιχη επίπτωση στο τι αποθηκεύουμε μέσα του (τροφή για σκέψη). ΓΙΑ ΝΑ ΕΝΤΡΥΦΗΣΕΤΕ ΠΕΡΑΙΤΕΡΩ Ένας επιστήμονας, πριν προβεί σε πάσης φύσεως κρίσεις (δηλ., κριτικούς, υποκειμενικούς, ποιοτικούς χαρακτηρισμούς), πρέπει να έχει σαφή αντίληψη των αντικειμενικών δεδομένων που χαρακτηρίζουν το πρόβλημά του. Άρα προϋπόθεση της διαδικασίας κρίσης είναι η συλλογή αξιόπιστων δεδομένων που χαρακτηρίζουν αντικειμενικά μια κατάσταση. Στο http://www.gapmnder.org/data/ μπορείτε να βρείτε πλήθος ενδιαφερόντων δεδομένων για μια μεγάλη ποικιλία θεμάτων. Επίσης, στο ste αυτό, μπορείτε να εντρυφήσετε στις σχετικές παρουσιάσεις και στις αναπαραστάσεις των ποσοτήτων, όπως εξελίσσονται στο χρόνο. Τα vdeos είναι πολύ ενδιαφέροντα και διδακτικά. Enjoy! 5