Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης"

Transcript

1 Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης 30 Μαρτίου Ομάδα Α - Ερωτήσεις Γενικών Γνώσεων 1. (ΕΓΓ.103) Να γραφεί πρόγραμμα σε C που να υπολογίζει τη μέση τιμή ακέραιων αριθμών, όταν εισάγονται από το πληκτρολόγιο. Η εισαγωγή τερματίζεται όταν δοθεί σαν τιμή ακέραιου το 0. 5 int a, sum = 0, count = 0; 6 7 do { scanf("%d", &a); 9 sum += a; 10 if (a) 11 ++count; 1 } while (a); printf("h mesn timn eivai %f\n", sum / ( float) count); return 0; 17 }. (ΕΓΓ.104) Να αναφέρετε τους βασικούς τύπους δεδομένων της C. Να γραφεί πρόγραμμα όπου θα εκτυπώνονται οι τιμές των μεταβλητών που όρισε ο χρήστης. Οι βασικοί τύποι της C είναι οι int, float, double και char¹. # include <limits.h> 3 # include <float.h> 4 5 int main() ¹Μπορείτε να αναφέρετε και τους specifiers που έχετε στις σημειώσεις σας (short, long, signed και unsigned αν και δεν μου φαίνεται απαραίτητο 1

2 6 { 7 int i; float f; 9 double d; 10 char c; 11 1 printf("dwse evav int: "); scanf("%d", &i); 13 printf("dwse evav float: "); scanf("%f", &f); 14 printf("dwse evav double: "); scanf("%lf", &d); 15 getchar(); 16 printf("dwse evav char: "); scanf("%c", &c); 17 1 printf("int: %d\n", i); 19 printf("float: %f\n", f); 0 printf("double: %lf\n", d); 1 printf("char: %c\n", c); } 3. (ΕΓΓ.105) Να γραφεί πρόγραμμα σε C που θα τυπώνει μήνυμα και θα ζητάει να πληκτρολογηθούν τρεις ακέραιοι. Θα διαβάζει τους αριθμούς αυτούς από το πληκτρολόγιο και θα τους αποθηκεύει σε τρεις μεταβλητές. Θα εναλλάσσει τις τιμές των μεταβλητών με ολίσθηση προς τα δεξιά (δηλαδή η δεύτερη μεταβλητή θα παίρνει την τιμή της πρώτης, η τρίτη της δεύτερης και η πρώτη της τρίτης, οπότε αν αρχικά οι μεταβλητές είχαν τιμές 10, 0 και 30, μετά το βήμα αυτό θα έχουν 30, 10 και 0 αντίστοιχα). Τέλος θα τυπώνει τις νέες τιμές των μεταβλητών στην οθόνη. 5 int v1, v, v3, t; 6 7 printf(" Dwse tnv prwtn metablntn: "); scanf("%d", &v1); 9 printf(" Dwse tnv deutern metablntn: "); 10 scanf("%d", &v); 11 printf(" Dwse tnv tritn metablntn: "); 1 scanf("%d", &v3); t = v3; 15 v3 = v; 16 v = v1; 17 v1 = t; 1 19 printf("h vea prwtn metablntn: %d\n", v1); 0 printf("h vea deutern metablntn: %d\n", v); 1 printf("h vea tritn metablntn: %d\n", v3); 3 return 0;

3 4 } 4. (ΕΓΓ.106) Να γραφεί πρόγραμμα σε C που θα υπολογίζει την δύναμη, υποθέτοντας ότι ο χρήστης εισάγει την βάση και τον εκθέτη. Να καλυφθούν όλες οι πιθανές περιπτώσεις τιμών του εκθέτη. 5 int vasi, ekthetis; 6 double result; 7 int i; 9 printf("dwse tnv basn: "); 10 scanf("%d", &vasi); 11 1 printf(" Dwse tov eketn: "); 13 scanf("%d", &ekthetis); result = 1; 16 for (i = 0; i < abs( ekthetis); ++i) 17 result *= vasi; 1 19 if ( ekthetis < 0) 0 result = 1 / result; 1 printf(" To apotelesma eivai: % lf \n", result); 3 4 return 0; 5 } 5. (ΕΓΓ.107) Με χρήση κατάλληλου προγράμματος να επεξηγήσετε τη διαφορά μεταξύ των εντολών break και continue. Η εντολή break σταματάει εντελώς την εκτέλεση ενός βρόχου, δηλαδή η τρέχουσα επανάληψη διακόπτεται στο σημείο που βρίσκεται η break και αφενός δεν εκτελούνται οι υπόλοιπες εντολές της τρέχουσας επανάληψης αφετέρου δεν πραγματοποιείται καμία επανάληψη περαιτέρω. Η continue διακόπτει την τρέχουσα επανάληψη του βρόχου αλλά συνεχίζει στην επόμενη επανάληψη. Δηλαδή παρακάμπτονται οι εντολές του σώματος του βρόχου για την τρέχουσα επανάληψη και μόνο. Στο παρακάτω πρόγραμμα για παράδειγμα, ο βρόχος που ξεκινάει στη γραμμή 7 θα έπρεπε αν δεν υπήρχε η break να εκτελέσει 10 επαναλήψεις. Σε κάθε μία από αυτές θα τύπωνε την τιμή του i δηλαδή τον αριθμό της τρέχουσας επανάληψης και μετά μία τελεία. Αυτό θα συμβεί στις 5 πρώτες επαναλήψεις στις οποίες το i είναι μικρότερο ή ίσο από το 5. Στην 6η όμως επανάληψη αφού εκτελεστεί η printf της γραμμής, θα ισχύει η συνθήκη της if και θα εκτελεστεί η break οπότε θα τερματιστεί εντελώς η εκτέλεση του βρόχου και τελικά θα τυπωθεί αφού δεν θα εκτελεστεί ούτε η γραμμή 11 της 6ης επανάληψης ούτε θα εκτελεστούν οι επόμενες επαναλήψεις. 3

4 Ο δεύτερος βρόχος των γραμμών 16-1, θα λειτουργήσει με τον ίδιο τρόπο στις πρώτες 5 επαναλήψεις θα τυπωθεί δηλαδή σε αυτές το Στην 6η επανάληψη θα εκτελεστεί η γραμμή 17 τυπώνοντας το 6 αλλά καθώς η συνθήκη της if θα ισχύει, θα εκτελεστεί η continue η οποία θα προχωρήσει στην επόμενη επανάληψη του βρόχου, παρακάμπτοντας τη γραμμή 0. Το ίδιο θα συμβεί και στις επόμενες επαναλήψεις οπότε τελικά από την 6η επανάληψη μέχρι το τέλος του βρόχου θα τυπωθεί το int i; 6 7 for (i = 1; i <= 10; ++i) { printf("%d", i); 9 if (i > 5) 10 break; 11 printf("."); 1 } printf("\n"); for (i = 1; i <= 10; ++i) { 17 printf("%d", i); 1 if (i > 5) 19 continue; 0 printf("."); 1 } 3 return 0; 4 } 6. (ΕΓΓ.10) Να γραφεί πρόγραμμα σε C που θα διαβάζει δυο ακεραίους αριθμούς από το πληκτρολόγιο και θα εκτυπώνει το άθροισμά τους στην οθόνη. Το αποτέλεσμα να φαίνεται επίσης σε οκταδική και δεκαεξαδική μορφή. 5 int a, b, sum; 6 7 printf(" Dwse tov prwto arimo: "); scanf("%d", &a); 9 10 printf(" Dwse tov deutero arimo: "); 11 scanf("%d", &b); 1 13 sum = a + b; 14 4

5 15 printf(" To aroisma eivai ( dekadiko): %d\n", sum); 16 printf(" To aroisma eivai ( oktadiko): %o\n", sum); 17 printf(" To aroisma eivai ( dekae3adiko): %x\n", sum); 1 19 return 0; 0 } 7. (ΕΓΓ.109) Να γραφεί πρόγραμμα σε C που θα υπολογίζει το μέσο όρο πραγματικών αριθμών. Ο υπολογισμός της μέσης τιμής να γίνει με τη δημιουργία ξεχωριστής συνάρτησης. 3 float mo( float a, float b) 5 return (a+b) / ; 6 } 7 int main() 9 { 10 float a, b; 11 1 printf(" Dwse ton eva arimo: "); 13 scanf("%f", &a); 14 printf(" Dwse ton allo arimo: "); 15 scanf("%f", &b); printf("o mesos oros eivai %f\n", mo(a, b)); 1 19 return 0; 0 }. (ΕΓΓ.110) Να γραφεί πρόγραμμα σε C που θα διαβάζει το όνομα του χρήστη και θα εκτυπώνει φιλικό χαιρετισμό. 5 char p[100]; 6 7 printf("pws se leve? "); gets(p); 9 printf("geia sou, %s!\n", p); return 0; 1 } 5

6 9. (ΕΓΓ.111) Να γραφεί πρόγραμμα σε C που θα μετατρέπει μονάδες μήκους από εκατοστά σε ίντσες. Να εκτυπωθεί το ύψος σας ανά 0 εκατοστά σε ίντσες (1 ίντσα =,5 εκ.). 5 int height, i; 6 7 printf(" Dwste to ypsos sas se ekatosta: "); scanf("%d", &height); 9 printf(" cm inches\n"); 10 printf(" \n"); 11 for (i = 0; i <= height; i += 0) 1 printf("%3d %5.f\n", i, i /.5); return 0; 15 } 10. (ΕΓΓ.11) Να γραφεί πρόγραμμα σε C που θα εκτυπώνει πίνακα αντιστοίχισης μονάδων θερμοκρασίας από Φαρενάιτ σε Κελσίου ανά 0 βαθμούς (ο τύπος μετατροπής είναι C = 5(F 3)/9. 5 int i; 6 printf(" F C\n"); 7 printf(" \n"); for (i = 0; i <= 300; i += 0) { 9 printf("%3d %7.f\n", i, (5. * (i-3)) / 9.); 10 } 11 1 return 0; 13 } 11. (ΕΓΓ.113) Να γραφεί πρόγραμμα σε C που θα εκτυπώνει το όνομα και τον τελικό βαθμό του μαθητή με βάση το βαθμό του γραπτού και το βαθμό των ασκήσεων. (Με δεδομένο ότι ότι ο βαθμός του γραπτού είναι >= 4, τότε ο τελικός βαθμός σχηματίζεται από το 30% του βαθμού άσκησης και 70% από το βαθμό γραπτού, διαφορετικά δεν λαμβάνεται υπόψη η άσκηση. Εάν από το συνυπολογισμό του βαθμού της άσκησης ο τελικός βαθμός είναι μικρότερος από το βαθμό του γραπτού, ο βαθμός της άσκησης δεν υπολογίζεται. Αν είναι μεγαλύτερος από το βαθμό του γραπτού, τότε ο μαθητής πριμοδοτείται με μισή μονάδα. 6

7 5 int grapto; 6 int askisi; 7 float telikos; 9 printf(" Dose bamo graptou: "); 10 scanf("%d", &grapto); 11 printf(" Dose bamo asknsns: "); 1 scanf("%d", &askisi); if ( grapto < 4) 15 printf(" Kobetai\n"); 16 else { 17 telikos =.3 * askisi +.7 * grapto; 1 if ( telikos < grapto) 19 telikos = grapto; 0 else 1 telikos += 0.5; } 3 printf(" Telikos bamos: %.f\n", telikos); 4 5 return 0; 6 } 1. (ΕΓΓ.114) Να γράψετε ένα πρόγραμμα σε γλώσσα C, το οποίο να διαβάζει από το πληκτρολόγιο μία σειρά χαρακτήρων και να μετρά το πλήθος των αριθμητικών χαρακτήρων, των κενών και των αλφαβητικών χαρακτήρων και να εμφανίζει στην οθόνη τα αποτελέσματα. Σημείωση: Στο παρακάτω γράφονται αναλυτικά οι συνθήκες ελέγχου του κάθε χαρακτήρα. Στο πακέτο με τις λύσεις των θεμάτων πιστοποίησης μπορείτε να δείτε κάποιες συναρτήσεις που παρέχονται από τη βιβλιοθήκη της C για αυτό το σκοπό, συγκεκριμένα τις isblank, isalpha και isdigit που επιστρέφουν true αν ο χαρακτήρας που τους δίνεται είναι κενό, αλφαβητικός ή αριθμητικός αντίστοιχα. 5 char s[100]; 6 int numbers = 0; 7 int alphas = 0; int blanks = 0; 9 int i; printf(" Dose symboloseira: "); 1 gets(s); for (i = 0; i < strlen(s); ++i) { 15 if (s[i] == ' ') 7

8 16 blanks ++; 17 else if (s[i] >= '0' && s[i] <= '9') 1 numbers ++; 19 else if (( s[i] >= 'a' && s[i] <= 'z') (s[i] >= 'A' && s[i] <= 'Z')) 0 alphas ++; 1 } 3 printf(" Alfabntikoi: %d\n", alphas); 4 printf(" Arimntikoi: %d\n", numbers); 5 printf(" Keva: %d\n", blanks); 6 7 return 0; } 13. (ΕΓΓ.115) Να γράψετε πρόγραμμα που να εμφανίζει μια οθόνη επιλογής με τις τέσσερις πράξεις: 1. Πρόσθεση,. Αφαίρεση, 3. Πολλαπλασιασμός και 4. Διαίρεση. Ο χρήστης θα επιλέγει την πράξη και θα δίδει τους αριθμούς. Ο υπολογιστής θα εκτελεί την αντίστοιχη πράξη και θα εμφανίζει το αποτέλεσμα. (Υπόδειξη: Το πρόγραμμα να γίνει με χρήση της εντολής case. Επίσης να γίνεται έλεγχος ώστε να μη γίνεται διαίρεση με μηδέν και σε τέτοια περίπτωση να εμφανίζεται κατάλληλο μήνυμα.) 5 float a, b; 6 int choice; 7 printf("dwse tov prwto telesteo: "); scanf("%f", &a); 9 printf("dwse tov deutero telesteo: "); scanf("%f", &b); printf(" 1. Prosthesi\n"); 1 printf(". Afairesh\n"); 13 printf(" 3. Pollaplasiasmos\n"); 14 printf(" 4. Diairesn\n"); 15 printf("diale3e pra3n: "); scanf("%d", &choice); switch ( choice) { 1 case 1: 19 printf("%f + %f = %f\n", a, b, a + b); 0 break; 1 case : printf("%f - %f = %f\n", a, b, a - b); 3 break; 4 case 3: 5 printf("%f * %f = %f\n", a, b, a * b); 6 break; 7 case 4: if (b == 0)

9 9 printf(" Den epitrepetai n diairesn me to mndev\n"); 30 else 31 printf("%f / %f = %f\n", a, b, a / b); 3 break; 33 default: 34 printf(" Eprepe va diale3eis 1,, 3 n 4\ n"); 35 } return 0; 3 } 14. (ΕΓΓ.116) Να γραφεί συνάρτηση της C με όνομα power που θα δέχεται δύο ακέραιες παραμέτρους base και n και θα επιστρέφει τον ακέραιο base υψωμένο στη n-οστή δύναμη. Να γραφεί πρόγραμμα C που θα καλεί τη συνάρτηση power. Ο χρήστης του προγράμματος αυτού θα μπορεί να καθορίζει παραμετρικά την τιμή των base και n. 3 int power(int base, int n) 5 int result = 1; 6 int i; 7 for (i = 0; i < n; ++i) 9 result *= base; return result; 1 } int main() 15 { 16 int base, n; 17 1 printf("dose tn basn: "); 19 scanf("%d", &base); 0 printf(" Dose tov eketn: "); 1 scanf("%d", &n); 3 printf(" To %d eis tnv %d eivai %d\n", base, n, power( base, n)); 4 5 return 0; 6 } 15. (ΕΓΓ.117) Να γραφτεί συνάρτηση της C με όνομα min(n, m) που να επιστρέφει τον μικρότερο από τους ακέραιους n και m. Να χρησιμοποιηθεί ο τελεστής?: για τον υπολογισμό του μικρότερου. 9

10 3 int min(int n, int m) 5 return (n < m)? n : m; /* Oi pareveseis dev eivai aparaitntes */ 6 } 7 int main() 9 { 10 int a, b; 11 1 printf("dose ton prwto: "); scanf("%d", &a); 13 printf("dose ton deutero: "); scanf("%d", &b); printf("o mikroteros eivai o %d\n", min(a, b)); return 0; 1 } 16. (ΕΓΓ.11) Έστω ότι οι παρακάτω εντολές αποτελούν μέρος ενός προγράμματος της C. a = 4;, b = ;, c = a;, d = ++a;, e = --b;, f = a++;, c++; Να αναφέρετε τις τελικές τιμές των μεταβλητών του προγράμματος. a:6, b:7, c:5, d:5, e:7, f:5 17. (ΕΓΓ.119) Να γραφεί πρόγραμμα σε C που θα εκτυπώνει στην οθόνη τον ASCII χαρακτήρα των αγγλικών κεφαλαίων γραμμάτων (π.χ. letter A -> Ascii code 65)² 5 char c; 6 7 for (c = 'A'; c <= 'Z'; ++c) printf(" Letter %c -> Ascii code %d\n", c, c); 9 10 return 0; 11 } 1. (ΕΓΓ.10) Να γραφεί πρόγραμμα C που θα δέχεται ως παραμέτρους (command line arguments) το ποσό του κεφαλαίου και το ετήσιο επιτόκιο. Θα υπολογίζει τον ετήσιο τόκο και θα τα τυπώνει στην έξοδο, όπως στο εξής παράδειγμα: Κεφάλαιο:1000 Επιτόκιο: 4% Τόκος:40 ² Προφανώς το θέμα εννοεί τον χαρακτήρα και τον ASCII κωδικό. 10

11 3 int main(int argc, char* argv[]) 5 printf(" Kefalaio: %d\n", atoi( argv[1])); 6 printf("epitokio: %d\%\n", atoi(argv[])); 7 printf("tokos: %.f\n", (atoi(argv[1]) / 100.) * atoi(argv[])); 9 return 0; 10 } 19. (ΕΓΓ.11) Να γραφεί συνάρτηση της C που θα αντιμεταθέτει τις τιμές των δύο ακεραίων παραμέτρων της κάνοντας χρήση αναφοράς. 3 void swap(int* a, int* b) 5 int c; 6 c = *a; 7 *a = *b; *b = c; 9 } int main() 1 { 13 int a =, b = 4; 14 swap(&a, &b); 15 printf("a: %d, b: %d\n", a, b); return 0; 1 } 0. (ΕΓΓ.1) Να γραφεί πρόγραμμα C που θα προσθέτει τους άρτιους αριθμούς από το 11 μέχρι το 131 και θα εμφανίζει στην οθόνη το αποτέλεσμα. Επίσης να εμφανίζει σε πεντάδες τους αριθμούς που προστέθηκαν. (Σ= ) 3 4 int main() 5 { 6 int i; 7 int sum = 0; int count = 0; 9 10 for (i = 1; i <= 130; i += ) { 11 sum += i; 1 printf("%d ", i); 13 if (++ count % 5 == 0) 14 printf("\n"); 11

12 15 } printf(" To aroisma eivai %d\n", sum); 1 return 0; 19 } 1. (ΕΓΓ.13) Να γραφεί συνάρτηση της C που με τη χρήση της αναδρομής υπολογίζει το μέγιστο κοινό διαιρέτη δύο ακεραίων. 3 // Ypoetei oti a > b 4 int mkd(int a, int b) 5 { 6 if (a % b == 0) 7 return b; else 9 return mkd(b, a % b); 10 } 11 1 int main() 13 { 14 int a, b; printf("dose ton a: "); 17 scanf("%d", &a); 1 printf("dose ton b: "); 19 scanf("%d", &b); 0 1 printf("o MKD einai %d\n", a < b? mkd(b,a) : mkd(a,b)); 3 return 0; 4 }. (ΕΓΓ.14) Να γραφεί συνάρτηση της C που με τη χρήση της αναδρομής υπολογίζει το παραγοντικό των 10 πρώτων ακεραίων αριθμών. (Υπόδειξη: Το παραγοντικό ενός αριθμού είναι το γινόμενο του αριθμού επί όλων των αριθμών μέχρι τον αριθμό αυτό, όπου k! = k (k 1)! και 0! = 1). 3 int factorials(int n) 5 int result; 6 7 if (n == 0) result = 1; 9 else 1

13 10 result = n * factorials(n-1); 11 1 printf("%d! = %d\n", n, result); 13 return result; 14 } int main() 17 { 1 factorials (10); 19 0 return 0; 1 } 3. (ΕΓΓ.15) Υποθέτοντας ότι μια πόλη έχει πληθυσμό κάτοικους με ετήσιο ρυθμό αύξησης 3,3%, να γραφεί πρόγραμμα C που θα υπολογίζει τον πληθυσμό για τα επόμενα πέντε έτη. 5 float plith = ; 6 int i; 7 for (i = 0; i < 5; ++i) { 9 plith += plith * 3.3 / 100; 10 printf(" Etos %d, plnysmos: %.0f\n", i+1, plith); 11 } 1 13 return 0; 14 } 4. (ΕΓΓ.16) Να γραφεί πρόγραμμα C που θα δέχεται στην είσοδο θετικό ακέραιο αριθμό και θα εμφανίζει στην έξοδο τον αριθμό αυτό αντεστραμμένο (π.χ. αν δοθεί ο αριθμός 134, θα εμφανιστεί το 431). 5 int a; 6 7 printf(" Dose tov arimo: "); scanf("%d", &a); 9 10 do { 11 printf("%d", a % 10); 1 a = a / 10; 13

14 13 } while (a); return 0; 16 } 5. (ΕΓΓ.17) Να γραφεί πρόγραμμα C που θα εμφανίζει στην οθόνη τον πίνακα της προπαίδειας των αριθμών από το 1 μέχρι το int i, j; 6 7 printf(" "); for (j = 1; j <= 10; ++j) 9 printf("%4d", j); 10 printf("\n"); 11 for (j = 1; j <= 43; ++j) 1 printf("-"); 13 printf("\n"); for (i = 1; i <= 10; ++i) { 16 printf("%d ", i); 17 for (j = 1; j <= 10; ++j) 1 printf("%4d", i * j); 19 printf("\n"); 0 } 1 return 0; 3 } 6. (ΕΓΓ.1) Να γραφεί πρόγραμμα στη C το οποίο θα μετρά και θα εμφανίζει πόσες φορές πληκτρολογήσατε έναν αριθμητικό χαρακτήρα. το πρόγραμμα σταματά όταν πληκτρολογηθεί το πλήκτρο Q. 5 int count = 0; 6 int c; 7 while ((c = fgetc(stdin))!= 'Q') { 9 if (isdigit(c)) 10 ++count; 11 } 1 printf(" Arimoi: %d\n", count); 13 14

15 14 return 0; 15 } 7. (ΕΓΓ.19) Να γραφεί πρόγραμμα στη C που με κατάλληλη χρήση των δομών επανάληψης θα εμφανίζει στην οθόνη το παρακάτω: int i, j; 6 7 for (i = 1; i <=5; ++i) { for (j = 0; j < i; ++j) 9 printf("%d",i); 10 printf("\n"); 11 } 1 13 return 0; 14 }. (ΕΓΓ.130) Να γραφεί πρόγραμμα στη C το οποίο θα βρίσκει τον μικρότερο αριθμό από ένα μονοδιάστατο πίνακα 10 ακεραίων αριθμών. 5 int p[10]; 6 int i; 7 int m; 9 for (i = 0; i < 10; ++i) { 10 printf(" Dose ton arimo %d: ", i+1); 11 scanf("%d", &p[i]); 1 } m = p[0]; 15 for (i = 1; i < 10; ++i) 16 if (p[i] < m) 17 m = p[i]; 1 15

16 19 printf("o mikroteros eivai o %d\n", m); 0 1 return 0; } 9. (ΕΓΓ.131) Να γραφεί πρόγραμμα σε C που θα γεμίζει ένα δισδιάστατο πίνακα ακεραίων 10Χ10 με όνομα pinax ως εξής: Αν i+j είναι άρτιος τότε το pinax[i,j]=1. Αν i+j είναι περιττός τότε το pinax[1,j]=-1. Αν i=j τότε pinax[i,j] = 0. 5 int pinax [10][10]; 6 int i, j; 7 for (i = 0; i < 10; ++i) 9 for (j = 0; j < 10; ++j) 10 if ( i == j) 11 pinax[i][ j] = 0; 1 else if ( (i+j) % == 0 ) 13 pinax[i][ j] = 1; 14 else 15 pinax[i][ j] = -1; return 0; 1 } 30. (ΕΓΓ.13) Να γραφεί πρόγραμμα σε C που θα υπολογίζει το άθροισμα των περιττών μόνο ακεραίων αριθμών μονοδιάστατου πίνακα 10 θέσεων που έχει πάρει τα στοιχεία του από εισαγωγή του χρηστη. 5 int p[10]; 6 int i; 7 int sum =0; 9 for (i = 0; i < 10; ++i) { 10 printf(" Dose ton arimo %d: ", i+1); 11 scanf("%d", &p[i]); 1 } for (i = 0; i < 10; ++i) 15 if (p[i] % ) 16 sum += p[i]; 16

17 17 1 printf(" To aroisma twv perittwv eivai %d\n", sum); 19 0 return 0; 1 } 31. (ΕΓΓ.133) Να γράψετε πρόγραμμα που να διαβάζει το επώνυμο και το βαθμό 10 μαθητών και να τα αποθηκεύει σε ένα πίνακα του οποίου κάθε στοιχείο θα είναι μια κατάλληλη δομή. Στη συνέχεια για κάθε μαθητή θα τυπώνει στην οθόνη το επώνυμό του, το βαθμό του, καθώς και το χαρακτηρισμό επίδοσης ανάλογα με το βαθμό του. Ο χαρακτηρισμός επίδοσης είναι: 0-9 αποτυχών, 10-1 μέτρια, καλά, 16-1 πολύ καλά, 19-0 άριστα. Στο τέλος να τυπωθεί το πλήθος των μαθητών κάθε κατηγορίας επίδοσης, δηλαδή άριστα 7 μαθητές κτλ. 3 typedef struct { 4 char onoma [100]; 5 int bathmos; 6 } mathitis_t; 7 10 int oria[5] = { 9, 1, 15, 1, 0 }; 9 char* chep[5] = { "apotyxia", "metria", "kala", "poly kala", "arista" }; 11 // pairvei parametro eva bamo kai epistrefei 1 // to xaraktnrismo (0: apotyxia, 1: metria, : kala, ktl 13 int getchep(int grade) 1 15 int i; 16 for (i = 0; i < 5; ++i) 17 if (grade <= oria[i]) 1 return i; 19 } 0 1 int main() { 3 int counts[5] = { 0, 0, 0, 0, 0 }; 4 mathitis_t mathites [10]; 5 int i; 6 7 for (i = 0; i < 10; ++i) { printf(" Mathitis %d\n", i+1); 9 printf(" Dose to onoma: "); gets( mathites[i]. onoma); 30 printf("dose to bathmo: "); scanf("%d", &mathites[i].bathmos); getchar(); 31 counts[ getchep( mathites[i]. bathmos )]++; 3 } for (i = 0; i < 10; ++i) { 35 printf(" Mathitis %d\n", i+1); 17

18 36 printf(" Onoma: %s\n", mathites[i]. onoma); 37 printf(" Bathmos: %d\n", mathites[i]. bathmos); 3 printf(" Xaraktnrismos epidosns: %s\n", chep[ getchep( mathites[i]. bathmos )]); 39 printf("\n"); 40 } 41 4 for (i = 0; i < 5; ++i) { 43 printf("%d mathites pnrav %s\n", counts[i], chep[i]); 44 } return 0; 47 } 3. (ΕΓΓ.134) Να γραφεί συνάρτηση της C με όνομα reverse(str) που να αναστρέφει τη σειρά των χαρακτήρων του string str. 3 void reverse(char str[]) 5 int i, j; char c; 6 i = 0; j = strlen(str) - 1; 7 while (i < j) { 9 c = str[i]; str[i] = str[j]; str[j] = c; 10 ++i; --j; 11 } 1 } int main() 15 { 16 char str[100]; 17 printf(" Dose tn symvoloseira: "); 1 gets(str); 19 reverse(str); 0 printf("h avestramevn str eivai: %s\n", str); 1 return 0; 3 } 33. (ΕΓΓ.135) Να γραφεί συνάρτηση της C με όνομα strlen(s) που να επιστρέφει το μήκος του string s. 3 int strlen(char s[]) 5 int i = 0; 6 1

19 7 while (s[i]) ++i; 9 return i; 10 } 11 1 int main() 13 { 14 char s[100]; 15 printf(" Dose tn symvoloseira: "); 16 gets(s); 17 printf(" To mnkos tns eivai %d\n", strlen(s)); 1 19 return 0; 0 } 34. (ΕΓΓ.136) Να γραφεί πρόγραμμα C όπου θα επεξηγείται η έννοια του δείκτη (pointer) καθώς και η έννοια του τελεστή & 5 int a = ; 6 int b = 4; 7 int *p; 9 printf("a: %d, b:%d\n", a, b); 10 p = &a; 11 *p = 5; 1 p = &b; 13 *p = 10; 14 printf("a: %d, b:%d\n", a, b); return 0; 17 } 35. (ΕΓΓ.137) Να γραφεί πρόγραμμα C όπου ο χρήστης θα γεμίζει από το πληκτρολόγιο δισδιάστατο πίνακα ακεραίων 3Χ3 και θα εμφανίζει στην οθόνη τα στοιχεία και το άθροισμα της διαγωνίου. 5 int p[3][3]; 6 int sum = 0; 7 int i, j; 9 for (i = 0; i < 3; ++i) { 19

20 10 for (j = 0; j < 3; ++j) { 11 printf(" Dose to stoixeio %d,% d:", i+1, j+1); 1 scanf("%d", &p[i][j]); 13 } 14 } for (i = 0; i < 3; ++i) { 17 printf("p[%d,%d]: %d\n", i+1, i+1, p[i][i]); 1 sum += p[i][i]; 19 } 0 printf(" To aroisma tns diagwviou eivai %d\n", sum); 1 return 0; } 36. (ΕΓΓ.13) Έστω οι παρακάτω δηλώσεις αποτελούν μέρος ενός προγράμματος της C: 1 int p[10]; int *pp; 3 int m, n; 4 for (i = 0; i <= 10; ++i) 5 p[i] = i+1; 6 pp = &p[0]; 7 m = *(pp+3); n = *(pp+5); m: 4, n: (ΕΓΓ.139) Να γραφεί συνάρτηση της C που θα μετατρέπει ένα string αριθμών στο αριθμητικό του ισοδύναμο (δηλαδή το string 134 να μετατραπεί στον αριθμό 134). 3 int convertstr(char s[]) 5 int multiplier = 1; /* H trexousa dyvamn toy 10 */ 6 int number = 0; /* O telikos arithmos */ 7 int i; 9 i = strlen(s) - 1; 10 while (i >= 0) { 11 number += multiplier * (s[i] - '0'); 1 multiplier *= 10; 13 --i; 14 } return number; 17 } 1 19 int main() 0

21 0 { 1 char s[100]; printf(" Dose tn symvoloseira: "); 3 gets(s); 4 printf(" To arithmitiko tis isodynamo eivai %d\n", convertstr(s)); 5 6 return 0; 7 } 3. (ΕΓΓ.140) Να γραφεί συνάρτηση της C που θα ελέγχει αν δύο συμβολοσειρές είναι ίσες. Δύο εκδοχές της συνάρτησης. Η πρώτη είναι πιο "επαγγελματική", η δεύτερη πιο κατανοητή. 3 int strcmp1( char* s1, char * s) 5 while (*s1 && *s && *s1++ == *s++) ; 6 return * s1 == * s; 7 } 9 int strcmp(char* s1, char* s) 10 { 11 int i, len; 1 if (strlen(s1)!= strlen(s)) 13 return 0; 14 else { 15 while (*s1) { 16 if (*s1!= *s) 17 return 0; 1 ++ s1; s; 0 } 1 return 1; } 3 } 4 5 int main() 6 { 7 char s1[100]; char s[100]; 9 30 printf(" Dwse tnv prwtn symboloseira: "); gets( s1); 31 printf(" Dwse tnv deutern symboloseira: "); gets( s); 3 33 if (strcmp(s1, s)) 34 printf(" Eivai idies\n"); 35 else 36 printf(" Dev eivai idies\n"); 37 3 return 0; 39 } 1

22 39. (ΕΓΓ.141) Να γραφεί συνάρτηση της C που θα μετρά το πλήθος των αριθμών σε μια συμβολοσειρά (δηλαδή να βρει ότι στη συμβολοσειρά ff45ggt6 υπάρχουν τρεις αριθμοί. 3 int countnum(char* s) 5 int count = 0; 6 7 while (*s) { if (isdigit(*s)) 9 ++count; 10 ++s; 11 } 1 return count; 13 } int main() 16 { 17 char s[100]; 1 19 gets(s); 0 printf(" Yparxouv %d arimoi\n", countnum(s)); 1 return 0; 3 } 40. (ΕΓΓ.14) Να περιγράψετε τι κάνει το παρακάτω τμήμα κώδικα: 1 void mystery1( char *s1, const char * s) { 3 while (*s1!= '\0') 4 ++ s1; 5 for ( ; *s1 = *s; s1++, s++) ; 6 } Η παραπάνω συνάρτηση αντιγράφει τη συμβολοσειρά s στο τέλος της s1. Οι γραμμές 3 και 4 προχωρούν το δείκτη s1 μέχρι να φτάσει στο χαρακτήρα τερματισμού της πρώτης συμβολοσειράς. Το for της γραμμής 5: Δεν έχει αρχική εντολή. Σε κάθε επανάληψη ελέγχεται η συνθήκη *s1 = *s η οποία είναι αληθής όσο το *s είναι αληθές όσο δηλαδή ο s δεν δείχνει το τέλος της δεύτερης συμβολοσειράς. Επίσης, ο χαρακτήρας στον οποίο δείχνει ο s αντιγράφεται στη θέση που δείχνει ο s1. Στην πρώτη επανάληψη δηλαδή, ο πρώτος χαρακτήρας της δεύτερης συμβολοσοειράς αντιγράφεται στη θέση που βρισκόταν ο χαρακτήρας τερματισμού της πρώτης, δηλαδή στο τέλος της. Το σώμα του βρόχου είναι κενό, οπότε η επανάληψη τελειώνει με το βήμα το οποίο προχωράει τους δύο δείκτες κατά μία θέση. Οι επαναλήψεις συνεχίζονται, δηλαδή αντιγράφεται ο δεύτερος χαρακτήρας της δεύτερης συμβολοσειράς μία θέση μετά το τέλος της πρώτης, ο τρίτος δύο θέσεις μετά το τέλος της πρώτης κοκ. Κάποια στιγμή, όταν ο δείκτης s δείξει στο χαρακτήρα τερματισμού της δεύτερης συμβολοσειράς

23 αυτός θα αντιγραφεί στη θέση στην οποία δείχνει ο δείκτης s1 θέτοντας το νέο τέλος της πρώτης γραμματοσειράς. Επίσης η τιμή της συνθήκης θα είναι η τιμή του *s, δηλαδή '\0', δηλαδή ψευδής οπότε ο βρόχος και η συνάρτηση θα τερματιστούν. 41. (ΕΓΓ.143) Να περιγράψετε τι κάνει το παρακάτω τμήμα κώδικα: 1 void mystery( const char* s1, const char* s) { 3 for ( ; *s1!= '\0' && *s!= '\0'; s1++, s++) ; 4 if (*s1!= *s) 5 return 0; 6 return 1; 7 } Η συνάρτηση δέχεται δύο παραμέτρους, τους δείκτες σε δύο συμβολοσειρές. Το for με κενή αρχική εντολή, εκτιμά πριν από κάθε επανάληψη τη συνθήκη η οποία είναι αληθής όταν ο s1 δεν δείχνει το τέλος της πρώτης συμβολοσειράς και ο s δεν δείχνει το τέλος της δεύτερης. Με άλλα λόγια η συνθήκη παύει να ισχύει όταν κάποιος από τους δύο δείκτες δείξει το τέλος της αντίστοιχης συμβολοσειράς. Όσο η συνθήκη ισχύει εκτελείται το σώμα που είναι κενό και μετά το βήμα s1++, s++ δηλαδή οι δύο δείκτες προχωρούν κατά μία θέση. Η διαδικασία επαναλαμβάνεται μέχρι κάποιος από τους δύο δείκτες να δείξει το τέλος της αντίστοιχης συμβολοσειράς. Τότε ελέγχεται το if το οποίο ελέγχει αν τα *s1 και *s είναι ίσα. Εφόσον όμως ο βρόχος for σταμάτησε επειδή κάποιος από τους δύο δείκτες έδειχνε στο τέλος της συμβολοσειράς του, η συνθήκη της if θα ισχύει αν και ο άλλος δείκτης δείχνει το τέλος της αντίστοιχης συμβολοσειράς, δηλαδή αν οι δύο συμβολοσειρές έχουν το ίδιο μήκος. Σε αυτήν την περίπτωση επιστρέφεται η τιμή 0. Αλλιώς επιστρέφεται η τιμή 1. Τελικά η συνάρτηση επιστρέφει 0 αν οι δύο συμβολοσειρές έχουν το ίδιο μήκος ή 1 στην αντίθετη περίπτωση. 4. (ΕΓΓ.144) Να γραφεί πρόγραμμα C που θα ζητά από το χρήστη 3 ακεραίους ώστε να αρχικοποιήσει τις ακέραιες μεταβλητές της ημέρας, του μήνα και του έτους σε μια δομή ημερομηνίας (struct date). Στη συνέχεια ζητείται να απεικονισθεί η ημερομηνία στην οθόνη με τη μορφή ΗΗ/ΜΜ/ΕΕΕΕ π.χ. 7/10/ int main() 5 { 6 struct date { 7 int imera; int minas; 9 int etos; 10 } d; 11 1 printf("dose imera: "); scanf("%d", &d.imera); 13 printf("dose mina: "); scanf("%d", &d.minas); 14 printf("dose etos: "); scanf("%d", &d.etos); printf("%d/% d/% d\n", d. imera, d. minas, d. etos); 3

24 17 1 return 0; 19 } 43. (ΕΓΓ.145) Να γραφεί πρόγραμμα C το οποίο υπολογίζει την ηλικία ενός ατόμου σε έτη, αν δοθούν από το χρήστη η ημερομηνία γέννησης και η σημερινή ημερομηνία. (Υπόδειξη: Να χρησιμοποιηθεί δομή για την αποθήκευση της ημερομηνίας). Η λογική είναι ότι η ηλικία ενός ατόμου σε έτη είναι το τρέχον έτος μείον το έτος γέννησης. Αν όμως η τρέχουσα ημερομηνία είναι μικρότερη από την ημερομηνία γέννησης, πρέπει να αφαιρεθεί ένα έτος. 3 struct date { 4 int year; 5 int month; 6 int day; 7 }; 9 int main() 10 { 11 struct date birthday; 1 struct date today; 13 int age; printf(" Dwse nmeromnvia gevvnsns:\ n"); 16 printf("dwse etos: "); scanf("%d", &birthday.year); 17 printf("dwse mnva: "); scanf("%d", &birthday.month); 1 printf("dwse mera: "); scanf("%d", &birthday.day); 19 0 printf(" Dwse snmerivn nmeromnvia:\ n"); 1 printf("dwse etos: "); scanf("%d", &today.year); printf("dwse mnva: "); scanf("%d", &today.month); 3 printf("dwse mera: "); scanf("%d", &today.day); 4 5 age = today.year - birthday.year; 6 if ( ( today. month < birthday. month) 7 (today. month == birthday. month && today.day < birthday.day) ) --age; 9 30 printf(" Hlikia: %d\n", age); 31 3 return 0; 33 } 44. (ΕΓΓ.146) Να γραφεί πρόγραμμα C που θα διαβάζει από την είσοδο μια ημερομηνία με την μορφή 1 Jan 004 και θα την απεικονίζει στην έξοδο με τη μορφή

25 # include <string.h> 3 4 int main() 5 { 6 int day; 7 char month[4]; int year; 9 char* months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", 10 "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; 11 int i; 1 13 printf(" Dwse nmeromnvia se morfn dd mon yyyy: "); 14 scanf("%d %s %d", &day, month, &year); for (i = 0; i < 1; ++i) 17 if (! strcmp( months[i], month)) 1 break; 19 0 printf("%d-%d-% d\n", day, i+1, year); 1 return 0; 3 } 45. (ΕΓΓ.147) Να γραφεί πρόγραμμα C που θα διαβάζει από την είσοδο μια ημερομηνία με την μορφή και θα παράγει στην έξοδο το αποτελεσμα Τρίτη 10 Δεκεμβρίου 195. # include <string.h> 3 # include <time.h> 4 5 int main() 6 { 7 time_t rawtime; struct tm * ltime; 9 char s[100]; 10 int month; 11 int day; 1 int year; 13 char* wdays[] = { "Kyriakn", "Deutera", "Tritn", "Tetartn", 14 "Pemptn", "Paraskeun", "Sabbato" }; 15 char* months[] = { "Iavouariou", "Febrouariou", "Martiou", 16 "Apriliou", "Maiou", "Iouviou", 17 "Iouliou", "Augoustou", "Septembriou", 1 "Oktwbriou", "Noembriou", "Dekembriou" }; 19 0 printf(" Dwse nm/ via se morfn dd-mm- yyyy: "); 1 scanf("%d-%d-%d", &day, &month, &year); 3 time(& rawtime); 5

26 4 ltime = localtime(& rawtime); 5 ltime -> tm_mon = month - 1; 6 ltime -> tm_mday = day; 7 ltime -> tm_year = year ; mktime( ltime); 9 30 printf("%s ", wdays[ ltime -> tm_wday]); 31 printf("%d ", day); 3 printf("%s ", months[month -1]); 33 printf("%d", year); return 0; 36 } 46. (ΕΓΓ.14) Να γραφεί πρόγραμμα C με το όνομα fcopy που θα αντιγράφει τα περιεχόμενα του αρχείου f1 στο αρχείο f. Η κλήση θα γίνεται από τη γραμμή εντολών (δηλ. fcopy f1 f). Σημείωση: Για λόγους απλότητας το παρακάτω πρόγραμμα δεν κάνει χειρισμό λαθών. Για όποιον ενδιαφέρεται για μια πληρέστερη εκδοχή υπάρχει το αρχείο pisto14_errors.c στο πακέτο με τις λύσεις των θεμάτων πιστοποίησης. # include <stdlib.h> 3 4 int main(int argc, char* argv[]) 5 { 6 FILE *f1, *f; 7 int c; 9 f1 = fopen(argv[1], "rb"); 10 f = fopen(argv[], "wb"); 11 1 while (( c = fgetc( f1))!= EOF) 13 fputc(c, f); fclose(f1); 16 fclose(f); 17 1 return 0; 19 } 47. (ΕΓΓ.149) Να γραφεί πρόγραμμα C με το όνομα fcompare που θα συγκρίνει ανά γραμμή τα περιεχόμενα δύο αρχείων. Θα εκτυπώνεται η γραμμή που τα αρχεία διαφέρουν. Η κλήση θα γίνεται από τη γραμμή εντολών (δηλ. fcompare f1 f). Το πρόγραμμα τυπώνει τις γραμμές που διαφέρουν γράφοντας τον χαρακτήρα < πριν από τη γραμμή στο πρώτο αρχείο και το χαρακτήρα > πριν από την αντίστοιχη του δεύτερου³. ³Το πρόγραμμα δεν κάνει χειρισμό λαθών και κάνει την υπόθεση ότι τα δύο αρχεία έχουν τον ίδιο αριθμό γραμμών. Μπορείτε να δείτε ένα πρόγραμμα με χειρισμό λαθών το οποίο επίσης χειρίζεται την περίπτωση τα δύο αρχεία να μην έχουν το ίδιο μήκος στο αρχείο pisto149_errors.c στο πακέτο με τις λύσεις των θεμάτων πιστοποίησης. 6

27 # include <stdlib.h> 3 4 int main(int argc, char* argv[]) 5 { 6 FILE *f1, *f; 7 char s1[1000]; char s[1000]; 9 10 f1 = fopen(argv[1], "r"); 11 f = fopen(argv[], "r"); 1 13 while ( fgets(s1, 1000, f1) && fgets(s, 1000, f)) { 14 if (strcmp(s1, s)) 15 printf(" < %s> %s", s1, s); 16 } 17 1 fclose(f1); 19 fclose(f); 0 1 return 0; } 4. (ΕΓΓ.150) Να γραφεί πρόγραμμα C με το όνομα fcount που θα απαριθμεί τους πεζούς και κεφαλαίους χαρακτήρες ενός αρχείου και θα τυπώνει το αποτέλεσμα σε άλλο αρχείο. Η κλήση θα γίνεται από τη γραμμή εντολών (δηλ. fcount f1 f). Σημείωση: Όπως και στη σημείωση του θέματος 14, μπορεί κανείς να δει μία πληρέστερη εκδοχή στο αρχείο pisto150_errors.c. 3 int main(int argc, char* argv[]) 5 FILE *f1, *f; 6 int c; 7 int pezoi = 0, kefalaioi = 0; 9 f1 = fopen(argv[1], "r"); 10 while ((c = fgetc(f1))!= EOF) { 11 if ( islower(c)) 1 pezoi ++; 13 else if ( isupper(c)) 14 kefalaioi ++; 15 } 16 fclose(f1); 17 1 f = fopen(argv[], "w"); 19 fprintf(f, " Pezoi: %d\n", pezoi); 0 fprintf(f, " Kefalaioi: %d\n", kefalaioi); 1 fclose(f); 7

28 3 return 0; 4 } 49. (ΕΓΓ.151) Να γραφεί πρόγραμμα C όπου ο χρήστης θα γεμίζει από το πληκτρολόγιο μονοδιάστατο πίνακα ακεραίων 10 θέσεων και μετά θα εμφανίζει τα στοιχεία του με ανάστροφη φορά. 5 int p[10]; 6 int i; 7 int a; 9 for (i = 0; i < 10; ++i) { 10 printf(" Dwse tov arimo #% d: ", i); 11 scanf("%d",&p[i]); 1 } for (i = 9; i >= 0; --i) 15 printf(" Stoixeio #% d: %d\n", i, p[i]); return 0; 1 } 50. (ΕΓΓ.15) Να γραφεί πρόγραμμα C όπου ο χρήστης θα γεμίζει από το πληκτρολόγιο δισδιάστατο πίνακα ακεραίων 4Χ4 και θα βρίσκει το μέγιστο και το ελάχιστο στοιχείο του πίνακα. 5 int p[4][4]; 6 int i,j; 7 int meg, elax; 9 for (i = 0; i < 4; ++i) { 10 for (j = 0; j < 4; ++j) { 11 printf(" Dwse to stoixeio %d,% d: ", i, j); 1 scanf("%d", &p[i][j]); 13 } 14 } meg = p[0][0]; 17 elax = p[0][0];

29 1 19 for (i = 0; i < 4; ++i) { 0 for (j = 0; j < 4; ++j) { 1 if (p[i][ j] > meg) meg = p[i][j]; 3 if (p[i][ j] < elax) 4 elax = p[i][j]; 5 } 6 } 7 printf(" To megisto eivai: %d\n", meg); 9 printf(" To elaxisto eivai: %d\n", elax); return 0; 3 } 51. (ΕΓΓ.153) Να γραφεί πρόγραμμα C με το όνομα fcapitalise που θα αλλάζει όλους τους πεζούς χαρακτήρες από ένα αρχείο κειμένου σε άλλο αρχείο με κεφαλαίους. Η κλήση του προγράμματος θα γίνεται από τη γραμμή εντολών. Σημείωση: Όπως και στη σημείωση του θέματος 14, μπορεί κανείς να δει μία πληρέστερη εκδοχή στο αρχείο pisto153_errors.c. 3 int main(int argc, char* argv[]) 5 FILE *f1, *f; 6 int c; 7 f1 = fopen(argv[1], "r"); 9 f = fopen(argv[], "w"); while ((c = fgetc(f1))!= EOF) { 1 if ( islower(c)) 13 c = toupper(c); 14 fputc(c, f); 15 } fclose(f1); 1 fclose(f); return 0; } 9

Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης

Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης 11 Ιουνίου 01 1 Ομάδα Α - Ερωτήσεις Γενικών Γνώσεων 1. (ΕΓΓ.103) Να γραφεί πρόγραμμα σε C που να υπολογίζει τη μέση τιμή ακέραιων αριθμών,

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Σημειώσεις για πρόοδο στο εργαστήριο

Σημειώσεις για πρόοδο στο εργαστήριο Σημειώσεις για πρόοδο στο εργαστήριο 5 Απριλίου 2012 1. Γράψτε πρόγραμμα το οποίο τυπώνει τους αριθμούς από 1 έως 10 σε μία γραμμή τον καθένα. 3 int i; 4 for (i = 0; i < 10; ++i) 5 printf("%d\n", i); 6

Διαβάστε περισσότερα

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012 ο σετ σημειώσεων 19 Μαρτίου 01 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή if. Συντάσσεται ως εξής: 1 if

Διαβάστε περισσότερα

Εντολές ελέγχου ροής if, for, while, do-while

Εντολές ελέγχου ροής if, for, while, do-while Εντολές ελέγχου ροής if, for, while, do-while 1 Μαρτίου 014 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή

Διαβάστε περισσότερα

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. Ερωτήσεις προόδου C Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. #include // δίνει οδηγία στον compiler να // συμπεριλάβει την βιβλιοθήκη stdio int

Διαβάστε περισσότερα

Προγραμματισμός II (Γλώσσα C)

Προγραμματισμός II (Γλώσσα C) Προγραμματισμός II (Γλώσσα C) Λύσεις 12 ης Ομάδας Ασκήσεων (Δομές) 1. Να γραφεί πρόγραμμα σε C το οποίο θα δημιουργεί μία δομή με το όνομα person. Η δομή αυτή θα αποτελείται από ένα όνομα (συμβολοσειρά

Διαβάστε περισσότερα

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while) 5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while) 5.1 Ο βρόχος while Η εντολή while παρέχει έναν μηχανισμό επανάληψης των δηλώσεων όσο μια συνθήκη είναι αληθινή. Χρησιμοποιείται όταν ο αριθμός των επαναλήψεων

Διαβάστε περισσότερα

Συμβολοσειρές. 1 Συμβολοσειρές. 6 Απριλίου 2014

Συμβολοσειρές. 1 Συμβολοσειρές. 6 Απριλίου 2014 Συμβολοσειρές 6 Απριλίου 2014 1 Συμβολοσειρές Μια ειδική χρήση των πινάκων είναι αυτή της παράστασης κειμένων. Η επεξεργασία κειμένου είναι μια διαδεμόνη υπολογιστική εφαρμογή. Τα κείμενα παριστάνονται

Διαβάστε περισσότερα

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

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

Μεταβλητές τύπου χαρακτήρα

Μεταβλητές τύπου χαρακτήρα Μεταβλητές τύπου χαρακτήρα 31 Μαρτίου 014 1 Μεταβλητές τύπου char Για χειρισμό χαρακτήρων η C διαθέτει τον τύπο char. Ο τύπος είναι βαθμωτός δηλαδή ακέραιης αναπαράστασης. Τυπικά έχει μέγεθος ενός byte

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

Διαβάστε περισσότερα

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα Τελεστές συντομογραφίας Τελεστές σύντομης ανάθεσης += παράδειγμα: sum+=10; αντί για: sum = sum

Διαβάστε περισσότερα

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές: Προγραμματισμός HY: Γλώσσα Προγραμματισμού C Δρ. Ηλίας Κ. Σάββας, Αναπληρωτής Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας Email: savvas@teilar.gr URL: http://teilar.academia.edu/iliassavvas

Διαβάστε περισσότερα

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf(%u\n, x); Β. unsigned char ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Β Περιόδου 2015 (8/9/2015) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Εκτέλεση της εντολής1 και στη συνέχεια εκτέλεση της ΕΝΟΤΗΤΑΣ και της εντολής2 όσο η ΣΥΝΘΗΚΗ είναι αληθής.

Εκτέλεση της εντολής1 και στη συνέχεια εκτέλεση της ΕΝΟΤΗΤΑΣ και της εντολής2 όσο η ΣΥΝΘΗΚΗ είναι αληθής. ΟΙ 3 ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΔΟΜΕΣ ΣΤΗΝ ΓΛΩΣΣΑ C Η εντολή for: Η γενικευμένη σύνταξη της εντολής είναι: for (εντολή1; ; εντολή2) ΕΝΟΤΗΤΑ Η ΕΝΟΤΗΤΑ μπορεί να είναι μία ή περισσότερες εντολές (block) μέσα

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Σκοπός του μαθήματος Σκοπός του παρόντος μαθήματος είναι να μάθετε να κάνετε εισαγωγή δεδομένων σε πίνακες και περαιτέρω επεξεργασία

Διαβάστε περισσότερα

5ο σετ σημειώσεων - Δείκτες

5ο σετ σημειώσεων - Δείκτες 5ο σετ σημειώσεων - Δείκτες 11 Ιουνίου 01 1 Γενικά Σύμφωνα με το γενικό μοντέλο υπολογιστή, ένας υπολογιστής είναι μία μηχανή που διαθέτει μία κεντρική μονάδα επεξεργασίας η οποία μπορεί μεταξύ άλλων να

Διαβάστε περισσότερα

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

Προγραμματισμός Ι. Εγγραφές. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Εγγραφές Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Η Ανάγκη Ομαδοποίησης Πολλές φορές έχουμε πληροφορίες διαφορετικού τύπου οι οποίες όμως έχουν μεγάλη

Διαβάστε περισσότερα

Διάλεξη 5η: Εντολές Επανάληψης

Διάλεξη 5η: Εντολές Επανάληψης Διάλεξη 5η: Εντολές Επανάληψης Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Εντολές Επανάληψης CS100, 2015-2016

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διαμόρφωση Ελέγχου Ροής Προγράμματος Δομημένος Προγραμματισμός Ο πιο απλός και συνηθισμένος

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for) 4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for) 4.1 Μετρητές Ένας μετρητής (counter) είναι μία μεταβλητή η οποία ξεκινά με μία αρχική τιμή και αυξάνεται κατά ένα κάθε φορά που εκτελείται. Ο αλγόριθμος για έναν μετρητή

Διαβάστε περισσότερα

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (2009-2010) ΥΠΕΥΘΥΝΟΙ ΔΙΔΑΣΚΟΝΤΕΣ ΕΡΓΑΣΤΗΡΙΟΥ: Α. ΦΩΚΑ, K. ΣΤΑΜΟΣ

Διαβάστε περισσότερα

Υπολογισμός - Εντολές Επανάληψης

Υπολογισμός - Εντολές Επανάληψης Προγραμματισμός Η/Υ Ι Υπολογισμός - Εντολές Επανάληψης ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα συνεχίσουμε τη συζήτησή μας για τα βασικά στοιχεία

Διαβάστε περισσότερα

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6.1 Η Έννοια του Πίνακα Συχνά είναι προτιμότερο να αντιμετωπίζουμε ένα σύνολο μεταβλητών σαν ενότητα για να απλοποιούμε το χειρισμό τους. Έτσι οργανώνουμε σύνθετα δεδομένα σε

Διαβάστε περισσότερα

Γλώσσα Προγραμματισμού C

Γλώσσα Προγραμματισμού C Προγραμματισμός HY: Γλώσσα Προγραμματισμού C Δρ. Ηλίας Κ. Σάββας, Αναπληρωτής Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας Email: savvas@teilar.gr URL: http://teilar.academia.edu/iliassavvas

Διαβάστε περισσότερα

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014 Πίνακες 0 Μαρτίου 014 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα του συγκεκριμένου τύπου. Στην περίπτωση που θέλουμε

Διαβάστε περισσότερα

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

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Τελεστές - Κατηγορίες Εκφράσεις - Κατηγορίες Υπολογισμός εκφράσεων Προτάσεις - Κατηγορίες

Διαβάστε περισσότερα

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις Ασκηή σεις 12ο Μαά θημα - Λυύ σεις Άσκηση 1: Γράψτε ένα πρόγραμμα που να δέχεται από το πληκτρολόγιο 21 ακέραιους αριθμούς (μεταξύ 0 και 100) και στη συνέχεια να υπολογίζει το πλήθος και το μέσο όρο, μόνο

Διαβάστε περισσότερα

ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ 8/9/2008

ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ 8/9/2008 ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ 8/9/2008 Όλα τα θέματα είναι ισοδύναμα. Οι απαντήσεις σας οι οποίες αφορούν ανάπτυξη κώδικα ή αποτελέσματα προγράμματος, θα πρέπει να είναι καθαρογραμμένες με ευδιάκριτους όλους

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 2 ο ΣΕΤ ΑΣΚΗΣΕΩΝ Οι ασκήσεις αυτού του φυλλαδίου καλύπτουν τα παρακάτω

Διαβάστε περισσότερα

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα Η ΓΛΩΣΣΑ C Η C είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου η οποία αναπτύχθηκε στις αρχές της δεκαετίας του 70 από τον Dennis Ritchie στα Bell Labs. Η σημερινή μορφή της γλώσσας ακολουθεί το πρότυπο

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

8. Συνθήκες ελέγχου, λογικοί τελεστές

8. Συνθήκες ελέγχου, λογικοί τελεστές Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 8. Συνθήκες ελέγχου, λογικοί τελεστές Ιωάννης Κατάκης Σήμερα o Λογικές παραστάσεις Σχεσιακοί τελεστές Λογικοί τελεστές o if -else o switch Λογικές παραστάσεις

Διαβάστε περισσότερα

3. ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ (Β' μέρος: switch και :? )

3. ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ (Β' μέρος: switch και :? ) 3. ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ (Β' μέρος: switch και :? ) 3.1 Η εντολή switch case Στην περίπτωση που θέλουμε να εξετάσουμε πολλές διαφορετικές τιμές, θα αναγκαζόμασταν να φτιάξουμε ένα κώδικα που θα περιέχει πολλά

Διαβάστε περισσότερα

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8) Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις (Διάλεξη 8) 8-1 Τι θα δούμε σήμερα Η εντολή if else Η εντολή if else ιf - -else H εντολή switch Λογικές παραστάσεις Σχεσιακοί

Διαβάστε περισσότερα

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης Γλώσσες Προγραμματισμού Εργαστήριο 2ο Τύποι Δεδομένων - Είσοδος / Έξοδος Εργαστήριο 2ο Περίγραμμα Εργαστηριακής Άσκησης Εργαστήριο 2ο...1 Θεωρία εργαστηρίου...2 Τύποι δεδομένων...2 Η συνάρτηση printf()...3

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι εντολές επανάληψης (while, do-while, for) Γενικά για τις εντολές επανάληψης Συχνά στο προγραμματισμό είναι επιθυμητή η πολλαπλή εκτέλεση μιας ενότητας εντολών, είτε για ένα

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εντολές ελέγχου ροής προγράμματος (if-else & switch) Η εντολή if-else Η εντολή if-else υπάρχει σχεδόν σε όλες τις γλώσσες προγραμματισμού. Χρησιμοποιείται για τον έλεγχο της

Διαβάστε περισσότερα

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

Διαβάστε περισσότερα

Τύποι Δεδομένων Είσοδος/Έξοδος

Τύποι Δεδομένων Είσοδος/Έξοδος Εργαστήριο 2 ο Τύποι Δεδομένων Είσοδος/Έξοδος Εισαγωγή Σκοπός του εργαστηρίου αυτού είναι η εισαγωγή μας στους τύπους δεδομένων της C και η εξοικείωση μας με συναρτήσεις του ρεπερτορίου της ANSI C σχετικές

Διαβάστε περισσότερα

Αʹ. Πίνακες. Άσκηση 1. Λύση. Άσκηση 2. Λύση. Ασκήσεις Εργαστηρίου Προγραμματισμού

Αʹ. Πίνακες. Άσκηση 1. Λύση. Άσκηση 2. Λύση. Ασκήσεις Εργαστηρίου Προγραμματισμού Αʹ. Πίνακες Άσκηση 1 Να γράψετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C, το οποίο να δημιουργεί έναν πίνακα με το όνομα E, ο οποίος να έχει ακέραιο τύπο δεδομένων και 40 θέσεις. Στη συνέχεια να αναθέσετε

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Εισαγωγή στον προγραμματισμό Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2 Δομή Προγράμματος Όλα τα προγράμματα που γράψαμε έχουν λίγο πολύ την ακόλουθη μορφή: Κάποιος κώδικας εδώ main( ) {

Διαβάστε περισσότερα

4. Επιλογή και Επανάληψη

4. Επιλογή και Επανάληψη Σελίδα 53 4. Επιλογή και Επανάληψη 4.1 Η Εντολή Επιλογής if.. then Η εντολή If.. Then.. χρησιμοποιείται για την λήψη λογικών αποφάσεων σε ένα πρόγραμμα. Η εντολή αυτή έχει διάφορες μορφές σύνταξης οι οποίες

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΠΡΟΓΡΑΜΜΑΤΑ ΕΡΓΑΣΤΗΡΙΟΥ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΠΡΟΓΡΑΜΜΑΤΑ ΕΡΓΑΣΤΗΡΙΟΥ Χαράλαµπος Σκόκος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΠΡΟΓΡΑΜΜΑΤΑ ΕΡΓΑΣΤΗΡΙΟΥ Πρόγραµµα 1 (Βασική χρήση της συνάρτησης printf) /* Βασική χρήση της συνάρτησης printf */ /* Το \n αλλάζει γραµµή

Διαβάστε περισσότερα

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή παράσταση_1 = Παράσταση Αρχικοποίησης παράσταση_2 = Παράσταση Ελέγχου Επανάληψης παράσταση_3 = Παράσταση Ενημέρωσης

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 3 η Είσοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής:

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής: Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 3 ο Μέρος 3 ο Μέρος Παραστάσεις και Τελεστές Εντολή καταχώρησης Για να καταχωρήσουμε μία τιμή σε μια μεταβλητή χρησιμοποιούμε τον τελεστή καταχώρησης

Διαβάστε περισσότερα

Χαράλαµπος Σκόκος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΕΞΕΤΑΣΕΙΣ ΧΕΙΜΕΡΙΝΟΥ ΕΞΑΜΗΝΟΥ Ερωτήσεις

Χαράλαµπος Σκόκος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΕΞΕΤΑΣΕΙΣ ΧΕΙΜΕΡΙΝΟΥ ΕΞΑΜΗΝΟΥ Ερωτήσεις Χαράλαµπος Σκόκος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΕΞΕΤΑΣΕΙΣ ΧΕΙΜΕΡΙΝΟΥ ΕΞΑΜΗΝΟΥ 2004-2005 Ερωτήσεις Ερώτηση 1 #include double s=0,a[10]=1,2,3,4,5,6,7,8,9,10,m; int i,j=0; for (i=3;

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ενότητα 5 Δομές Ελέγχου Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Δομές Ελέγχου Οι Boehm και Jacopini απέδειξαν ότι οποιοσδήποτε αλγόριθμος

Διαβάστε περισσότερα

Υπολογισμός - Εντολές Ελέγχου

Υπολογισμός - Εντολές Ελέγχου Προγραμματισμός Η/Υ Ι Υπολογισμός - Εντολές Ελέγχου ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα συνεχίσουμε τη συζήτησή μας για τα βασικά στοιχεία

Διαβάστε περισσότερα

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

Διαβάστε περισσότερα

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Ασκήσεις Επανάληψης

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Ασκήσεις Επανάληψης Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Ασκήσεις Επανάληψης Άσκηση 1 Το παρακάτω πρόγραμμα περιέχει μια δομή επανάληψης τύπου for. Να ξαναγραφεί ώστε να έχει ακριβώς την ίδια λειτουργία, χρησιμοποιώντας

Διαβάστε περισσότερα

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

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης Γ7.1 Επανάληψη ύλης Β Λυκείου Γ Λυκείου Κατεύθυνσης Απλά προγράμματα Ένα πρόγραμμα στη C++ που υπολογίζει το άθροισμα 2 ακέραιων αριθμών. // simple program #include using namespace std; int main(){

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι εντολές επανάληψης (while, do-while, for) Γενικά για τις εντολές επανάληψης Συχνά στο προγραμματισμό είναι επιθυμητή η πολλαπλή εκτέλεση μιας ενότητας εντολών, είτε για ένα

Διαβάστε περισσότερα

scanf() scanf() stdin scanf() printf() int float double %lf float

scanf() scanf() stdin scanf() printf() int float double %lf float Εισαγωγή Στον Προγραµµατισµό «C» Είσοδος Δεδοµένων Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Η συνάρτηση scanf() Η συνάρτηση

Διαβάστε περισσότερα

Ορισμός μεταβλητών δεικτών και αρχικοποίηση

Ορισμός μεταβλητών δεικτών και αρχικοποίηση Ορισμός μεταβλητών δεικτών και αρχικοποίηση Η έννοια του δείκτη Κάθε μεταβλητή σχετίζεται με μια θέση στην κύρια μνήμη του Η/Υ η οποία έχει τη δική της ξεχωριστή διεύθυνση Ο δείκτης είναι μια μεταβλητή

Διαβάστε περισσότερα

ΔΙΑΔΙΚΑΣΤΙΚΟΣ ΠΡΟΓΡΑ Ρ Μ Α ΜΑΤΙ Τ ΣΜΟΣ

ΔΙΑΔΙΚΑΣΤΙΚΟΣ ΠΡΟΓΡΑ Ρ Μ Α ΜΑΤΙ Τ ΣΜΟΣ Τμήμα Εφαρμοσμένης Πληροφορικής ΔΙΑΔΙΚΑΣΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εξάμηνο Α' Φύλλο Ασκήσεων 3 ΔΟΜΕΣ ΕΠAΝΑΛΗΨΗΣ Διδάσκοντες: Μάγια Σατρατζέμη, Αλέξανδρος Χατζηγεωργίου, Ηλίας Σακελλαρίου, Στέλιος Ξυνόγαλος

Διαβάστε περισσότερα

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράµµατα «γράφονται» χρησιµοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαµβάνει

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 8: Πίνακες, Αλφαριθμητικά Πίνακες Ο πίνακας είναι μια ειδική δομή για την αποθήκευση μιας σειράς από δεδομένα του ίδιου τύπου. Η δήλωση ενός πίνακα γίνεται όπως για μια

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην

Διαβάστε περισσότερα

EΒ ΟΜΑ Α 3 Η. Άλλοι τελεστές καταχώρησης: += -= *= /= %= x += 5; σηµαίνει x = x + 5; k *= 7; σηµαίνει k = k * 7; sum %= 15; σηµαίνει sum = sum % 15;

EΒ ΟΜΑ Α 3 Η. Άλλοι τελεστές καταχώρησης: += -= *= /= %= x += 5; σηµαίνει x = x + 5; k *= 7; σηµαίνει k = k * 7; sum %= 15; σηµαίνει sum = sum % 15; ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΤΜΗΜΑ: EΒ ΟΜΑ Α 3 Η ΚΑΣ: ΗΜΕΡΟΜΗΝΙΑ: Να σώσετε το αρχείο στην επιφάνεια εργασίας µε το επίθετο σας. Στο τέλος του εργαστηρίου θα το παραδώσετε στο φάκελο Ζ:\ (θα σας δοθεί το όνοµα) Τελεστές

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

Διαβάστε περισσότερα

Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις

Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις Ενώσεις δεδομένων Απαριθμητές Ψηφιακοί τελεστές Αναδρομικές συναρτήσεις Ενώσεις δεδομένων (union) τι και γιατί Συσκευές με μικρή μνήμη => ανάγκη εξοικονόμησης πόρων Παρατήρηση: αχρησιμοποίητη μνήμη. Έστω

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πέμπτη (5 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ

ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση με τον ορισμό, τη δήλωση και τη χρήση των χαρακτήρων, συνεπώς και των αλφαριθμητικών, της Γλώσσας

Διαβάστε περισσότερα

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19) Κεφάλαιο 8.7 Πολυδιάστατοι Πίνακες (Διάλεξη 19) Πολυδιάστατοι πίνακες Μέχρι τώρα μιλούσαμε για Μονοδιάστατους Πίνακες. ή π.χ. int age[5]= {31,28,31,30,31; για Παράλληλους πίνακες, π.χ. int id[5] = {1029,1132,1031,9991,1513;

Διαβάστε περισσότερα

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Εισαγωγή στον Προγραμματισμό. Ενότητα 4: Έλεγχος Ροής. Κ.

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

Διαβάστε περισσότερα

Τα δεδομένα στη C++ χωρίζονται σε 3 κατηγορίες: τους αριθμούς (numbers), τους χαρακτήρες (characters) και τις συμβολοσειρές (strings).

Τα δεδομένα στη C++ χωρίζονται σε 3 κατηγορίες: τους αριθμούς (numbers), τους χαρακτήρες (characters) και τις συμβολοσειρές (strings). Για να λύσουμε ένα πρόβλημα στη C++ χρειαζόμαστε δυο βασικές έννοιες. Η μια είναι οι οδηγίες εντολές, ο αλγόριθμος δηλαδή, που πρέπει να ακολουθήσουμε για να λύσουμε το πρόβλημά μας και η άλλη είναι τα

Διαβάστε περισσότερα

Λογικό "και" (AND) μας επιστρέφει 1 αν και οι δύο operands είναι όχι μηδέν, διαφορετικά 0)

Λογικό και (AND) μας επιστρέφει 1 αν και οι δύο operands είναι όχι μηδέν, διαφορετικά 0) 0ι Λογικοί Τελεστές: Πρόκειται για τελεστές που μας επιτρέπουν να συνδυάσουμε απλές εκφράσεις συσχετισμού και να δημιουργήσουμε πιό πολύπλοκες λογικές εκφράσεις. Εχουμε λοιπόν: && Λογικό "και" (AND) μας

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ❶ Προετοιµασία για το 1 ο Εργαστήριο

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Μεταβλητές-Σταθερές-Παράμετροι Τα στοιχεία

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

Παραδείγματα. Γράψτε ένα πρόγραμμα που να τυπώνει τη μέση τιμή ενός συνόλου μη αρνητικών αριθμών

Παραδείγματα. Γράψτε ένα πρόγραμμα που να τυπώνει τη μέση τιμή ενός συνόλου μη αρνητικών αριθμών Παραδείγματα Γράψτε ένα πρόγραμμα που να τυπώνει τη μέση τιμή ενός συνόλου μη αρνητικών αριθμών Βήματα Δεδομένα : αριθμοί που δίνονται από το χρήστη. Δεδομένα υπολογισμού: μέση τιμή Πλήθος δεδομένων: άγνωστο,

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εντολές ελέγχου ροής προγράμματος (if-else & switch) Η εντολή if-else Η εντολή if-else υπάρχει σχεδόν σε όλες τις γλώσσες προγραμματισμού. Χρησιμοποιείται για τον έλεγχο της

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 3ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΕΚΤΥΠΩΣΗ ΚΕΙΜΕΝΟΥ Ένα κείμενο μπορεί να εκχωρηθεί ως τιμή μιας μεταβλητής

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 3 Εντολές Επιλογής. Γιώργος Λαμπρινίδης Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 3 Εντολές Επιλογής. Γιώργος Λαμπρινίδης Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1 Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 3 Εντολές Επιλογής Γιώργος Λαμπρινίδης 1 Ασκησεις Εργατηρίου 2 30/10/2015 2 /* File: pososto.c */ #include main() {double timi, pososto, teliki; printf("dwse tin

Διαβάστε περισσότερα

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

Διαβάστε περισσότερα

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Χαρακτήρες Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Προγραμματισμός Δ. Τσελίκας Ι Χαρακτήρες - Εισαγωγή Έως τώρα έχουμε κατά κύριο λόγο χρησιμοποιήσει τους αριθμητικούς τύπους

Διαβάστε περισσότερα

#include <stdlib.h> Α. [-128,127] Β. [-127,128] Γ. [-128,128]

#include <stdlib.h> Α. [-128,127] Β. [-127,128] Γ. [-128,128] ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Α Περιόδου 2017 (27/1/2017) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #6 εκτέλεση σε επανάληψη 1 Σπύρος Λάλης Εκτέλεση σε επανάληψη: while while () lexpr body true false Όσο η λογική συνθήκη επανάληψης lexpr αποτιμάται σε μια τιμή

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις. Γιώργος Λαμπρινίδης

Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις. Γιώργος Λαμπρινίδης Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 6 Εντολές Επανάληψης Ασκήσεις Γιώργος Λαμπρινίδης lamprinidis@pharm.uoa.gr Ασκήσεις Εμπέδωσης στις εντολές επανάληψης Σε αυτό το εργαστήριο θα δούμε στην πράξη: Πόσο χρήσιμες

Διαβάστε περισσότερα

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C 1 Εισαγωγή Ο προγραμματισμός είναι μια διαδικασία επίλυσης προβλημάτων με χρήση Η/Υ. Ένα πρόγραμμα είναι ένα σύνολο εντολών κάποιας γλώσσας προγραμματισμού,

Διαβάστε περισσότερα