A[0] = 0; /* To μηδέν δεν έχει διαιρέτες */ for (i=1; i<n; i++) { S=0; for (d=1; d<=i; d++) if (i % d == 0) S += d; A[i] = S; }

Σχετικά έγγραφα
Γλώσσα Προγραμματισμού C

Τμ. Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών Α Εξεταστική Περίοδος, 5 Φεβρουαρίου 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ Ηλίας. Κ. Σάββας

Τμ. Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών Α Εξεταστική Περίοδος, 25 Ιουνίου 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ Ηλίας. Κ. Σάββας

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

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

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

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

ΤΕΙ Θεσσαλίας, Τμήμα Μηχανικών Πληροφορικής ΤΕ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΥ ΕΡΓΑΣΤΗΡΙΟ 9. ΑΣΚΗΣΕΙΣ (με ενδεικτική λύση)

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

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

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

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

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

Προγραμματισμός HY: Γλώσσα Προγραμματισμού C

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

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

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

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

ΑΣΚΗΣΗ 4: ΟΜΕΣ ΒΑΣΙΚΩΝ ΒΡΟΧΩΝ

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

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

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

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

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

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

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

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

ΠΙ Ν Α Κ Ε Σ (arrays)

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

Εφαρμοσμένα Μαθηματικά ΙΙ

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

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

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

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

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

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

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

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

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

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

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

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ ΙΙ ΜΑΘΗΜΑ 1-2-ΠΙΝΑΚΕΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ ΠΑΝΗΠΙΣΤΗΜΙΟΠΑΤΡΩΝ ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

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

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

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

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

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

1 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΑΛΓΟΡΙΘΜΟΙ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΑΣΚΗΣΗ #5 Προτεινόμενη Λύση

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

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

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

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

Θέµα 1 (15%): (απαιτούµενος χρόνος < 15 λεπτά)

0 + a = a + 0 = a, a k, a + ( a) = ( a) + a = 0, 1 a = a 1 = a, a k, a a 1 = a 1 a = 1,

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδηµαϊκό έτος ΑΣΚΗΣΗ #5 Προτεινόµενη λύση

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

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

ΠΙΝΑΚΕΣ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ

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

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

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

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

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

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

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

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

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

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

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

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

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

3 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΠΙΝΑΚΕΣ

ΚΕΦΑΛΑΙΑ 3 & 9 (ΠΙΝΑΚΕΣ)

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

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

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

Τμήμα Εφαρμοσμένης Πληροφορικής

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

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

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

που θα δώσει αποτέλεσµα 48, λόγω της αριστερής προσεταιριστικότητας των τελεστών / και *, ενώ η επιθυµητή αντικατάσταση θα ήταν η

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

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

ΑΤΣΑΛΑΚΗ ΞΑΝΘΟΥΛΑ ΕΡΓΑΣΤΗΡΙΟ 2

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

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

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

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

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

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

int a[5]; a[0] a[1] a[2] a[3] a[4] 15/10/2009

Το πλήθος των δεικτών και οι µεγαλύτερες τιµές που µπορούν να πάρουν ορίζεται µε µία δηλωτική εντολή που λέγεται Dimension.

Εργαστήριο 3 Εντολή for while, do while

Χpήσιµες Βιβλιοθήκες της γλώσσας C

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

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

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

ΣΥΝΑΡΤΗΣΕΙΣ (Functions)

Transcript:

TEI Λάρισας / ΣΤΕΦ Τμ. Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών B Εξεταστική Περίοδος, 19 Φεβρουαρίου 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ι Ηλίας. Κ. Σάββας Α 1) Να γράψετε ένα πρόγραμμα το οποίο να γεμίζει ένα ακέραιο πίνακα 100 θέσεων, έστω Α, με το άθροισμα των διαιρετών του κάθε δείκτη του και στην συνέχεια να τον εκτυπώνει μαζί με τον αντίστοιχο δείκτη (δηλαδή, στην θέση 8 του πίνακα να εισαχθεί το 1+2+4+8=15, Α 8 =15 όπου 1, 2, 4 και 8 είναι διαιρέτες του 8) (3 μονάδες). #define N 100 int A[N]; int i; int d; /* Πιθανοί διαιρέτες */ int S; A[0] = 0; /* To μηδέν δεν έχει διαιρέτες */ for (i=1; i<n; i++) S=0; for (d=1; d<=i; d++) if (i % d == 0) S += d; A[i] = S; 1

printf("\n %d - %d", i, A[i]); 2) Να γίνει πρόγραμμα στο οποίο αφού εισάγεται μία συμβολοσειρά, έστω S μεγέθους Ν, να μετράει το πραγματικό μήκος της και να βρίσκει πόσα <Α>, <Ε> και <Ι> περιέχει (να μην γίνει χρήση της βιβλιοθήκης string.h) (3 μονάδες). #define N 100 char S[N]; int meg=0; int i, ma=0, me=0, mi=0; printf("\neisagogi symvoloseiras:"); scanf("%s", S); while (S[meg]!= '\0') meg++; for (i=0; i<meg; i++) switch ( S[i] ) case 'A': ma++; break; case 'E': me++; break; 2

case 'I': mi++; break; printf("\n Megethos symvoloseiras : %d", meg); printf("\n Plithos <A> : %d", ma); printf("\n Plithos <E> : %d", me); printf("\n Plithos <I> : %d", mi); 3) Συμμετρικός ονομάζεται ένας τετραγωνικός πίνακας A NxN όπου Α ij = A ji. Na γράψετε ένα πρόγραμμα το οποίο να εισάγει έναν τετραγωνικό πίνακα και στην συνέχεια, α) να ελέγχει εάν είναι συμμετρικός και να τυπώνει ένα αντίστοιχο μήνυμα, β) να αθροίζει την πρώτη γραμμή και την τελευταία στήλη και να ελέγχει εάν είναι ίσες, και γ) να ελέγχει εάν και τα αθροίσματα των δύο διαγωνίων είναι ίσα επίσης. Σε κάθε περίπτωση να εκτυπώνεται ένα κατάλληλο μήνυμα (4 μονάδες). #define N 4 int A[N][N]; int i, j; int flag = 0; int ath1 = 0, ath2 = 0; 3

for (j=0; j<n; j++) printf("\neisagogi tou stoixeiou %d -%d:", i, j); scanf("%d", &A[i][j]); /* A Erotima */ for (j=i+1; j<n; j++) if (A[i][j]!= A[j][i]) flag = 1; if (flag == 0 ) printf("\n SYMMETRIKOS PINAKAS"); printf("\n MI SYMMETRIKOS PINAKAS "); /* B Erotima */ ath1 += A[0][i]; ath2 += A[i][N-1]; if (ath1 == ath2 ) printf("\n To athroisma protis grammis kai protis stilis einai ISA"); printf("\n To athroisma protis grammis kai protis stilis DEN einai ISA"); /* C Erotima */ 4

ath1 = 0; ath2 = 0; ath1 += A[i][i]; ath2 += A[i][N-i-1]; if (ath1 == ath2 ) printf("\n Ta athriismata twn diagonwn einai ISA"); printf("\n Ta athroismata twn diagonwn DEN einai ISA"); 5

TEI Λάρισας / ΣΤΕΦ Τμ. Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών Β Εξεταστική Περίοδος, 19 Φεβρουαρίου 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ι Ηλίας. Κ. Σάββας B 1) Να γράψετε ένα πρόγραμμα το οποίο να γεμίζει ένα ακέραιο πίνακα 100 θέσεων, έστω Α, με 0 ή 1 ανάλογα με τον εάν ο αντίστοιχος δείκτης του πίνακα είναι ή δεν είναι πρώτος αριθμός. ηλαδή επειδή το 7 είναι πρώτος αριθμός ενώ το 8 όχι θα πρέπει Α 7 =0 και Α 8 =1. Πρώτος λέγεται ένας αριθμός που δεν διαιρείται με κανέναν άλλο εκτός της μονάδας και του εαυτού του (3 μονάδες). #define N 100 int A[N]; int i; int d; /* Πιθανοί διαιρέτες */ int flag; /* ιακόπτης ελέγχου */ flag=0; for (d=2; d<=i/2; d++) if (i % d == 0) flag = 1; if (flag == 0) A[i] = 0; /* Πρώτος αριθμός */ 6

A[i] = 1; printf("\n %d - %d", i, A[i]); 2) Να γίνει πρόγραμμα στο οποίο αφού εισάγεται μία συμβολοσειρά, έστω S μεγέθους Ν, να μετράει το πραγματικό μήκος της και να βρίσκει πόσα Ελληνικά και πόσα Αγγλικά γράμματα περιέχει (να μην γίνει χρήση της βιβλιοθήκης string.h) (3 μονάδες). #define N 100 char S[N]; int meg=0; int i, me=0, ma=0; printf("\neisagogi symvoloseiras:"); scanf("%s", S); while (S[meg]!= '\0') meg++; for (i=0; i<meg; i++) if ( S[i] >= 'A' && S[i] <= 'Z' ) ma++; 7

if ( S[i] >= 'A' && S[i] <= 'Ω' ) me++; printf("\n Megethos symvoloseiras : %d", meg); printf("\n Plithos Agglikon : %d", ma); printf("\n Plithos Ellinikon : %d", me); 3) Να γράψετε ένα πρόγραμμα στο οποίο αφού εισάγεται ένας πίνακας ακεραίων έστω Α ΝxN, ο οποίος όμως περιέχει πάρα πολλά μηδενικά στοιχεία, a) να μετράει το πλήθος των μηδενικών στοιχείων του, β) εάν το πλήθος των μηδενικών είναι μεγαλύτερο του 80% να εμφανίζει το μήνυμα <αραιός πίνακας>, γ) να μεταφέρει όλα τα μη μηδενικά στοιχεία του Α σε ένα νέο πίνακα Β Nx3 όπου σε κάθε γραμμή του Β, στην πρώτη στήλη του να μεταφέρεται το αντίστοιχο στοιχείο του Α, στην δεύτερη στήλη ο αριθμός της γραμμής του και στην τρίτη στήλη ο αριθμός της στήλης του. Τέλος να εκτυπώνεται ο πίνακας Β (4 μονάδες). #define N 4 int A[N][N], B[N][3]; int i, j, k=0; int miden = 0; float smiden; 8

for (j=0; j<n; j++) printf("\neisagogi tou stoixeiou %d -%d:", i, j); scanf("%d", &A[i][j]); /* A Erotima */ for (j=0; j<n; j++) if (A[i][j] == 0) miden ++; /* B Erotima */ smiden = (float) miden / (N*N); if (smiden >= 0.8 ) printf("\n ARAIOS PINAKAS"); printf("\n MH ARAIOS PINAKAS "); /* C Erotima */ for (j=0; j<n; j++) if (A[i][j]!= 0 ) B[k][0] = A[i][j]; B[k][1] = i; B[k][2] = j; k ++; for (i=0; i<k; i++) printf("\n %d - (%d, %d)", B[i][0], B[i][1], B[i][2]); 9