ΑΠΑΝΤΉΣΕΙΣ ΣΤΟ ΠΡΩΤΟ ΣΥΝΟΛΟ ΑΣΚΗΣΕΩΝ i) Πρώτα θα πραγματοποιηθεί διαίρεση του z με το x και μετα θα αφαιρεθεί το αποτέλεσμα από τον y.

Σχετικά έγγραφα
ΑΠΑΝΤΉΣΕΙΣ ΣΕ ΠΡΩΤΟ ΣΥΝΟΛΟ ΑΣΚΗΣΕΩΝ 1

ΑΠΑΝΤΉΣΕΙΣ ΣΤΟ ΠΡΩΤΟ ΣΥΝΟΛΟ ΑΣΚΗΣΕΩΝ

Ασκήσεις & παραδείγματα για επανάληψη

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

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

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

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

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

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

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

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

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

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

Λυμένα παραδείγματα με τις for, while, do-while

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

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

Εργαστήριο 5. Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch.

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

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

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

Δομές Ανακυκλώσεων. Εντολές ελέγχου - 1

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ:

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Ι. Θεματική ενότητα 8: Δημιουργία προγραμμάτων

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

Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 5 ο Μέρος 5 ο Μέρος Εντολές Επανάληψης: FOR - WHILE. Περιγραφή

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

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

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

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

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

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 2 η

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

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

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

Εισαγωγή στον δομημένο προγραμματισμό

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

ΠΡΟΓΡΜΜΑΤΑ ΣΕ C. Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση:

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

Η Γλώσσα Προγραμματισμού C (Μέρος 2 - Οι Bασικές Εντολές της C) Οι Βασικοί Τελεστές της C

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

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

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

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

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

Βήματα: μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων. Δομές Δεδομένων + Αλγόριθμοι = Προγράμματα

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

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

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

Μεθόδων Επίλυσης Προβλημάτων

Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 12 ο Μάθημα 1

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

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

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

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

Πανεπιστήμιο Πελοποννήσου. Σχολή Θετικών Επιστημών & Τεχνολογίας. Τμήμα Επιστήμης & Τεχνολογίας Υπολογιστών. Προγραμματισμός Ι Εργαστήριο

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

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Μεθόδων Επίλυσης Προβλημάτων

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

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

Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C»

Κεφάλαιο : Επαναλήψεις (for, do-while)

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

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

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

C: Από τη Θεωρία στην Εφαρμογή

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

EΒ ΟΜΑ Α 4 Η. οµές επανάληψης while και do while

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

10. Εντολές επανάληψηςκαι οι εντολές

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

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C»

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

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

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

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

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

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

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

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

Προγραμματισμό για ΗΜΥ

Transcript:

ΑΣΚΗΣΗ 1 ΑΠΑΝΤΉΣΕΙΣ ΣΤΟ ΠΡΩΤΟ ΣΥΝΟΛΟ ΑΣΚΗΣΕΩΝ 2015 1 i) Πρώτα θα πραγματοποιηθεί διαίρεση του z με το x και μετα θα αφαιρεθεί το αποτέλεσμα από τον y. ii) Οι πράξεις εδώ έχουν την ίδια προτεραιότητα μεταξύ τους οπότε θα ξεκινήσουν από αριστερά και θα συνεχιστούν προς τα δεξιά πρώτα εκτελώντας τη διαίρεση w με το x μετά πολλαπλασιάζοντας με το y και μετά διαιρώντας με το z. iii) Πρώτα θα γίνουν οι πράξεις w/x, ++z, w/x*++z και x/y και μετά θα προσθεθούν τα αποτελέσματα των πράξεων iv) Το b αυξάνεται κατά 1 και ανατίθεται στο res, και μετά το το a μειώνεται κατά ένα. v) Εδώ το b μειώνεται κατά 1 και μετά το a αυξάνεται κατά 1 και το αποτέλεσμα ανατίθεται στο res. vi) Ελέγχει αν ισχύει η συνθήκη και εκχωρεί στη μεταβλητή res την μικρότερη των δύο τιμών (α, b) ΑΣΚΗΣΗ 2 int x, y, z, w, c; x=1; y=2; z=3; w=4; c=5; while (c<=100) //στηλοθέτες printf("%d\t %d\t %d\t %d\t %d\t\n", x, y, z, w, c); 1 ΕΠΙΣΗΜΑΝΣΗ: Οι απαντήσεις παρουσιάζουν (ενδεχομένως σε μερικά σημεία διορθωμένες) τις καλύτερες απαντήσεις φοιτητών σε θέματα αντίστοιχα παλαιοτέρων ετών ( κ. Μανωλίδη Δημητρίου (κυρίως) και μερικές του κ. Τσαπαρλή Πέτρου)

x+=5; y+=5; z+=5; w+=5; c+=5; ΑΣΚΗΣΗ 3 #include <math.h> double x; double fx; printf("δώσε x\n"); scanf("%lf", &x); fx=pow(x,5)-2*pow(x,3)+3*x; printf("η ζητούμενη συνάρτηση fx είναι η=%lf",fx); fx=exp(x)+4*log(x)-pow(x,2); printf("\nh ζητούμενη συνάρτηση fx είναι η=%lf",fx); ΑΣΚΗΣΗ 4 Το πρόγραμμα που εκτελεί τα ζητούμενα από την εκφώνηση βήματα είναι το ακόλουθο: double d; float f;

printf("d= "); scanf("%lf",&d); f = (float)d; printf("%.12lf %.12f\n",d,f); Αν εκτελέσουμε το παραπάνω πρόγραμμα βλέπουμε ότι κατά την μετατροπή από double σε float υπάρχει αναγκαστική απώλεια δεδομένων. Αυτό συμβαίνει οποτεδήποτε κάνουμε typecasting από έναν τύπο μεγάλης ακρίβειας σε έναν τύπο μικρότερης ακρίβειας. Αν όμως μας ενδιαφέρει ακρίβεια π.χ. τριών δεκαδικών ψηφίων τότε η απώλεια της παραπάνω πληροφορίας δεν μας προβληματίζει. Αν όμως μας ενδιαφέρει ακρίβεια π.χ. 10 δεκαδικών ψηφίων τότε η μετάβαση από double σε float δεν είναι σωστή κίνηση. ΑΣΚΗΣΗ 5 Ένα ενδεικτικό πρόγραμμα λύση στην άσκηση αυτή είναι το ακόλουθο: #include <math.h> float x1,x2,y1,y2,apo; printf("x1: "); scanf("%f",&x1); printf("y1: "); scanf("%f",&y1); printf("x2: "); scanf("%f",&x2); printf("y2: "); scanf("%f",&y2); apo = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); printf("%f\n",apo);

Αρχικά διαβάζονται οι συντεταγμένες των δύο σημείων και έπειτα υπολογίζεται και τυπώνεται η απόστασή τους με χρήση της sqrt της math.h. Για να γίνει compilation με τον gcc πρέπει να χρησιμοποιηθεί και η παράμετρος lm για να δηλωθεί η χρήση της math.h. Δηλαδή, αν το όνομα του αρχείου πηγαίου κώδικα είναι askisi5.c τότε πρέπει να γράψουμε στο Unix: ΑΣΚΗΣΗ 6 Ο κώδικας που μετατρέπει την θερμοκρασία είναι ο ακόλουθος: float f,c; printf("doste thermokrasia se far.: "); scanf("%f",&f); c = (5.0/9.0)*(f-32.0); printf("thermokrasia se celcius: %.4f\n",c); Αν αντί για (5.0/9.0) στην γραμμή 7 γράφαμε (5/9) το αποτέλεσμα θα ήταν πάντα μηδενικό γιατί το 5/9 είναι διαίρεση ακεραίων. ΑΣΚΗΣΗ 7 #include <math.h> int x,y; printf("δώσε δύο ακεραίους αριθμούς:"); scanf("%d%d", &x,&y); printf("το άθροισμα είναι %d \n", x+y);

printf("o μεγαλυτερος ειναι %d\n", (x>y)?x:y); printf("to αποτέλεσμα είναι %lf\n", pow((double)x, (double)y)); printf("οι λογάριθμοι είναι %lf και %lf", log10((double)x), log10((double)y)); ΑΣΚΗΣΗ 8 #include <math.h> float a, b, c, D, x1, x2, x, z1, z2; int main() printf("δώστε τους συντελεστές a, b και c: "); scanf("%f %f %f", &a, &b, &c); D=b*b-4*a*c; if(d>0) x1=(-b+sqrt(d))/2*a; x2=(-b-sqrt(d))/2*a; x2); printf("οι λύσεις της εξίσωσης είναι Χ1=%0.2f και X2=%0.2f\n", x1, else if(d<0) x=(-b)/2*a; /*Πραγματικό μέρος*/ z1=sqrt(-d)/2*a; /*Φανταστικό μέρος*/ z2=-sqrt(-d)/2*a;

printf("οι λύσεις της εξίσωσης είναι οι μιγαδικοί Z1=%0.2f+%0.2fi και Z2=%0.2f%0.2fi\n", x, z1, x, z2); else x=(-b)/2*a; printf("η εξίσωση έχει διπλή ρίζα τον αριθμό Χ=%0.2f\n", x); ΑΣΚΗΣΗ 9 #define in 2.54 #define euro 340.75 int main() int choice; float value; printf("σε τι θελετε να γίνει η μετατροπή; ίντσες (1) ή ευρώ (2)"); scanf("%d", &choice); printf("δώσε τιμή"); scanf("%f", &value); if (choice==1) printf("τα %f μέτρα είναι %f ιντσες", value, value*in); else printf("τα %f ευρω είναι %f δραχμές", value, value*euro); ΑΣΚΗΣΗ 10 int i, count=0; for (i=48; i<=126; i++) printf("%c (%d) \t", i, i);

count++; if ((count % 10) ==0) printf("\n"); ΑΣΚΗΣΗ 11 2 int main() int i, sum, num, flag; flag = sum = 0; num = 1; for(i = 3; i <= 3*num; i+=3) if(flag == 0) printf("enter number: "); scanf("%d", &num); if(num <= 0 num >= 20) num = 1; i = 0; continue; flag = 1; sum += i*i; printf("sum: %d\n", sum); ΑΣΚΗΣΗ 12 main () int prt, number; //ο d είναι ο ακέραιος do printf("δώσε θετικό τετραψήφιο αριθμό:"); scanf("%d",&number); 2 Λύση απο το βιβλίο Δρ. Γ. Τσελίκης και Δρ. Ν. Τσελίκας C από τη θεωρία στην εφαρμογή (άλυτες ακσήσεις και ενδεικτικές λύσεις)

while (number<10000 number>99999); /*έλεγχος για το αν είναι θτεικός ακέραιος και πενταψήφιος */ while (number!=0) ptr=ptr+number%10; prt=ptr*10; number=number/10; printf("το αποτέλεσμα είναι %d\n",ptr); // εκτυπώνει το αποτέλεσμα ΑΣΚΗΣΗ 13 Σωστές είναι οι εντολές (1), (4) και (5) διότι : (2) y=a*x*x*(x+10) = a*x 3 +a*x 2 *10, διάφορο από ax 3 +10 (3) y= (a * x) * x * (x + 10)= a*x 3 +a*x 2 *10 διάφορο από ax 2 +10 (6) y = a * x * (x * x + 10)=a*x 3 +a*x*10 διάφορο από ax 3 +10 ΑΣΚΗΣΗ 14 int main() int i,j; printf("n\t"); for (i=2; i<=10;i++) pritnf("%d*n\t", i); printf("\n"); for (j=1;j<=10;j++) for(i=1;i<=10;i++) printf("%d\t", j*i); printf("\n");

ΑΣΚΗΣΗ 15 int x, y, a, MKD; printf("δώστε 2 θετικούς αριθμούς x και y: "); scanf("%d %d", &x, &y); while(x<0) printf("ο αριθμός x δεν πληρεί τις προϋποθέσεις, επαναλάβετε την διαδικασία για τον αριθμό x: "); while(y<0) scanf(" %d", &x); printf("ο αριθμός y δεν πληρεί τις προϋποθέσεις, επαναλάβετε την διαδικασία για τον αριθμό y : "); if(x<y) scanf(" %d", &y); a=x; /*αντιμεταθεση τιμων*/ x=y; y=a; while(x%y!=0) a=x%y;

x=y; y=a; MKD=y; printf("ο μέγιστος κοινός διαιρέτης των 2 αριθμών ειναι ο %d\n", MKD); ΑΣΚΗΣΗ 16 int n, i; unsigned long s, sum; int main() printf("δώστε τον αριθμό N: "); scanf("%d", &n); while(n<0) printf("ο αριθμός που δώσατε δεν πληρεί τις προϋποθέσεις, επαναλάβετε τη διαδικασία: "); scanf("%d", &n); printf("%d\t", 0); s=1; for(i=2; i<=n; ++i) if(i%2!=0)

sum=sum+s; printf("%lu\t", sum); else s=s+sum; if(i%5==0) printf("%lu\n", s); else printf("%lu\t", s); if(i==20) break; printf("\n"); Οι αριθμοί αποθηκεύονται εναλάξ στις 2 μεταβλητές που υπάρχουν μέσα στο βρόχο for ώστε να υπάρχει πρόσβαση στους αριθμούς που πρέπει να προσθεθούν για να υλοποιηθεί η ακολουθία Fibonacci ΑΣΚΗΣΗ 17 unsigned long amount = 100, deposit, withdraw; int choice, pin, k=0; while (pin!= 2014) printf("enter your pin : "); scanf("%d", &pin);

if(pin!= 2014) printf("wrong! Please enter valid password\n"); //end while do printf("****welcome to ATM service****\n"); printf("1. Check Balance\n"); printf("2. Withdraw Cash\n"); printf("3. Deposit Cash\n"); printf("4. Quit\n\n"); printf("enter your choice : "); scanf("%d", &choice); switch (choice) case 1: printf("\n Your Balance is : %lu\n", amount); break; case 2: printf("\n Enter the amount to withdraw : "); scanf("%lu", &withdraw); if(withdraw % 20!= 0) printf("\n Please enter the amount in multiples of 20"); else if (withdraw >amount ) printf("\n Insufficient Balance"); else amount = amount - withdraw; printf("\n\n Please collect cash"); printf("\n Your current balance is%lu",amount); break; case 3: printf("\n Enter the amount to deposit"); scanf("%lu", &deposit); amount = amount + deposit; printf("your balance is %lu", amount); break; case 4: printf("\n Thank you for using ATM"); k=1; break; default: printf("\n Invalid choice");

while(!k); printf("\n\n Thank you! Please take your card.\n"); //end main ΑΣΚΗΣΗ 18 int code, sec, sms, pagio; float sum, fpa; int main() pagio = 12; printf("δώστε τον τετραψήφιο κωδικό του πελάτη: "); scanf("%d", &code); printf("δώστε το χρόνο ομιλίας του πελάτη σε δευτερόλεπτα: "); scanf("%d", &sec); printf("δώστε τα SMS του πελάτη: "); scanf("%d", &sms); sum = pagio + 0.02 * sec + 0.14 * sms; fpa = 23 * sum / 100; sum = sum + fpa; printf("tmob account\n \b--------------------------------------------------------------- ---------\n \bcustomer code\t time\t SMS\t FPA\t \ttotal\n"); printf("%d\t\t %d\t %d\t %.2f\t \t%.2f\n", code, sec, sms, fpa, sum); printf(" \n"); ΑΣΚΗΣΗ 19 #include <math.h> int n, i, Sf3, Sfi, Sw3, Swi, Sd3, Sdi ; /* Το S3 ειναι για το αθροισμα των κυβων των αριθμων και το Si για το αθροισμα των αριθμων που υψωνονται στον εαυτο τους ενώ το γράμμα στη μέση κάθε μεταβλητής δηλώνει τον βρόχο στον οποίο υπολογίστηκε*/ printf("δώστε τον αριθμό των N πρώτων όρων: ");

scanf("%d", &n); while(n<=0) printf("ο αριθμός Ν που δώσατε πρέπει να είναι θετικός, δώστε έναν νέο αριθμό: "); scanf("%d", &n); for(i=1; i<=n; ++i) i=1; while(i<=n) i=1; do Sf3 = Sf3 + pow(i,2); Sfi = Sfi + pow(i,i); Sw3 = Sw3 + pow(i,2); Swi = Swi + pow(i,i); ++i; Sd3 = Sd3 + pow(i,2); Sdi = Sdi + pow(i,i); ++i; while(i<=n); printf("το άθροισμα των κύβων είναι: for: %d, while: %d, do: %d\n", Sf3, Sw3, Sd3);

printf("το άθροισμα των αριθμών που υψώνονται στον εαυτό τους ειναι: for: %d, while: %d, do: %d\n", Sfi, Swi, Sdi); ΑΣΚΗΣΗ 20 3 int a, b, c, d, max, choice, temp; printf("enter numbers: "); scanf("%d%d%d%d", &a, &b, &c, &d); max = a+b; choice = 1; temp = a+c; if(temp > max) max = temp; choice = 2; temp = a+d; if(temp > max) max = temp; choice = 3; temp = b+c; if(temp > max) max = temp; choice = 4; temp = b+d; if(temp > max) max = temp; choice = 5; temp = c+d; if(temp > max) max = temp; choice = 6; 3 Λύση απο το βιβλίο Δρ. Γ. Τσελίκης και Δρ. Ν. Τσελίκας C από τη θεωρία στην εφαρμογή (άλυτες ακσήσεις και ενδεικτικές λύσεις)

if(choice == 1) printf("the biggest pair is %d+%d=%d\n", a, b, max); else if(choice == 2) printf("the biggest pair is %d+%d=%d\n", a, c, max); else if(choice == 3) printf("the biggest pair is %d+%d=%d\n", a, d, max); else if(choice == 4) printf("the biggest pair is %d+%d=%d\n", b, c, max); else if(choice == 5) printf("the biggest pair is %d+%d=%d\n", b, d, max); else printf("the biggest pair is %d+%d=%d\n", c, d, max); _

ΑΣΚΗΣΗ 21 4 int num, div, rem; printf("enter a number: "); scanf("%d", &num); div = num/10; rem = num%10; printf("%d\n", div*1000+div*100+rem*10+rem); 4 Λύση απο το βιβλίο Δρ. Γ. Τσελίκης και Δρ. Ν. Τσελίκας C από τη θεωρία στην εφαρμογή (άλυτες ακσήσεις και ενδεικτικές λύσεις)