ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ: ΘΕΜΑ 1: 2.5 μονάδες Τι εκτυπώνουν τα παρακάτω κομμάτια κώδικα θεωρώντας ότι πληκτρολογούμε τους αριθμούς 0, 4 και -2; #include <stdio.h> #include <stdlib.h> int function1(int x); void function2(int x); int main(void) int a, x; printf("give value: "); scanf("%d", &a); x = function1(a); printf("world_%d", x); return 0; int function1(int x) while (x>0) function2(x); x--; return x; void function2(int x) int i=x; do printf("hello_%d\t", i); i--; while (i>0); printf("\n");
ΘΕΜΑ 2: 2.5 μονάδες Μια εταιρεία ενοικίασης αυτοκινήτων χρεώνει τους πελάτες της ως εξής: Α) Ένα πάγιο τέλος φακέλου 10. Β) Για τις πρώτες 4 ημέρες ενοικίασης του αυτοκινήτου, το κόστος είναι 35 /ημέρα. Γ) Για τις επόμενες 3 ημέρες ενοικίασης, το κόστος είναι 30 /ημέρα. Δ) Για τις επόμενες 2 ημέρες ενοικίασης, το κόστος είναι 25 /ημέρα. Ε) Για κάθε επόμενη μέρα ενοικίασης, το κόστος είναι 20 /ημέρα. Να γραφεί ένα πρόγραμμα το οποίο να διαβάζει από το πληκτρολόγιο τις ημέρες ενοικίασης του αυτοκινήτου και να εμφανίζει το τελικό ποσό χρέωσης. Δεν απαιτείται έλεγχος της εισαγόμενης από το πληκτρολόγιο τιμής. ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ:
ΘΕΜΑ 3: 2.5 μονάδες Ορίστε έναν πίνακα Υ με Ν=20 στοιχεία, τα οποία πρέπει να πάρουν τις τιμές 2 i 2 i N N 2 Y[ i] sin sin, 0 i N α) Εκτυπώστε τα στοιχεία του πίνακα. β) Βρείτε και εκτυπώστε τη μέγιστη τιμή των στοιχείων του πίνακα. Οδηγία: Για τον υπολογισμό της τιμής του ημιτόνου ενός αριθμού x απαιτείται η συνάρτηση sin(x). Η χρησιμοποίηση της συγκεκριμένης συνάρτησης προϋποθέτει την εισαγωγή της βιβλιοθήκης <math.h> στον κώδικα σας. ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #1:
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #2: ΘΕΜΑ 4: 2.5 μονάδες Γράψτε μια συνάρτηση average που δέχεται ως ορίσματα δύο δεκαδικούς αριθμούς και επιστρέφει το μέσο όρο τους. Εν συνεχεία, αναπτύξτε ένα πρόγραμμα για την καταχώρηση 20 τιμών θερμοκρασίας περιβάλλοντος από το πληκτρολόγιο (χρησιμοποιώντας βρόχο επανάληψης) και τον υπολογισμό του μέσου όρου των θερμοκρασιών με δύο τρόπους ανάλογα με την επιλογή του χρήστη που θα εισάγεται από το πληκτρολόγιο: 1 ος τρόπος: Υπολογίζοντας τη μέση τιμή των στοιχείων του πίνακα (στη συνάρτηση main). 2 ος τρόπος: Χρησιμοποιώντας τη συνάρτηση average με ορίσματα την ελάχιστη και μέγιστη τιμή θερμοκρασιών. Αν η επιλογή του χρήστη από το πληκτρολόγιο είναι εσφαλμένη να εμφανίζεται μήνυμα λάθους στην οθόνη και να δίνεται η ευκαιρία στο χρήστη να εισάγει εκ νέου την επιλογή.
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #1:
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #2:
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Β ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ: ΘΕΜΑ 1: 2.5 μονάδες Τι εκτυπώνουν τα παρακάτω κομμάτια κώδικα θεωρώντας ότι πληκτρολογούμε (όπου χρειάζεται) τους αριθμούς 4 και 8; Παράδειγμα 1 Παράδειγμα 2 #include <stdio.h> int main() int x,y,k; float z,w; printf("δώσε 1o αριθμό:"); scanf("%f", &z); printf("δώσε 2o αριθμό:"); scanf("%d", &x); if((z>0) (z<0)) w=x+x/z; printf("%0.1f\n", w); y=(float)2*x/3+3; k=y/3*2; printf("%d %.2f\n", y%2, y); printf("%d %.2f\n", k, k+2); #include <stdio.h> int main() int x, i, k; for(i=0;i<2;i++) k=10; while(k>1) x=i*k; if(x>1) printf("%d\n", x); k=k-2;
ΘΕΜΑ 2: 2.5 μονάδες Μια εταιρεία ενοικίασης αυτοκινήτων χρεώνει τους πελάτες της ως εξής: Α) Ένα πάγιο τέλος φακέλου 15. Β) Για τα πρώτα 5000km που θα διανύσει το αυτοκίνητο, το κόστος είναι 0,04 /km. Γ) Για επόμενα 3000km, το κόστος είναι 0,03 /km. Δ) Για επόμενα 2000km, το κόστος είναι 0,02 /km. Ε) Για όλα τα επόμενα χιλιόμετρα, το κόστος είναι 0,015 /km. Να γραφεί ένα πρόγραμμα το οποίο να διαβάζει από το πληκτρολόγιο τα χιλιόμετρα που διήνυσε ένα αυτοκίνητο και να εμφανίζει το τελικό ποσό χρέωσης. Δεν απαιτείται έλεγχος της εισαγόμενης από το πληκτρολόγιο τιμής. ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ:
ΘΕΜΑ 3: 2.5 μονάδες Να γραφεί ένα πρόγραμμα που να διαβάζει από το πληκτρολόγιο και να αποθηκεύει σε πίνακα την τιμή της μέσης ημερήσιας θερμοκρασίας από 20 διαφορετικούς μετεωρολογικούς σταθμούς. Στη συνέχεια, το πρόγραμμα να εμφανίζει το μέσο όρο από τις θερμοκρασίες που έχουν εισαχθεί στον πίνακα, καθώς και τους σταθμούς (δηλαδή, τη θέση τους στον πίνακα καταχώρησης) που έχουν θερμοκρασίες μικρότερη από το μέσο όρο. Δεν απαιτείται να γίνει κανένας έλεγχος των εισαγομένων από το πληκτρολόγιο τιμών στις μεταβλητές. ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #1:
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #2:
ΘΕΜΑ 4: 2.5 μονάδες Να γραφεί ένα πρόγραμμα που να διαβάζει δύο float αριθμούς x και y, καθώς και μια επιλογή c (ακέραιος αριθμός). Αναλόγως της τιμής του c, το πρόγραμμα θα υπολογίζει το άθροισμα x+y (για c=1) ή το γινόμενο x*y (για c=2) μεταξύ του x και y. Εν συνεχεία θα τυπώνει το αποτέλεσμα στην οθόνη. Για οποιαδήποτε άλλη τιμή του c θα εμφανίζεται μήνυμα σφάλματος. Οδηγία: Κάθε μία από τις ενέργειες (πρόσθεση, γινόμενο) θα γίνεται σε ξεχωριστή συνάρτηση, ενώ η εμφάνιση του αποτελέσματος ή του μηνύματος σφάλματος στην οθόνη θα γίνεται αποκλειστικά στη συνάρτηση main. ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #1:
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ #2: