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

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

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

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

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

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

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

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

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

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

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

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

Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables»

ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΛΟΓΙΣΜΙΚΟΥ. p: i: 3 p: i: 5

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

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

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

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

Συναρτήσεις. Εισαγωγή

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος

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

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

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

Ηλεκτρονικοί Υπολογιστές

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

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

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

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Παναγιώτης Σφέτσος

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

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

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

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

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

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

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

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

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

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

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

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

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

Δομές Επανάληψης. Εισαγωγή στη C++

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2

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

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

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

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

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους:

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

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

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

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

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

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

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

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

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

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

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

ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ. Σχήµα 1: H έννοια των πινάκων

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

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

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

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

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

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

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

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

Εργαστήριο 2: Πίνακες

ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων

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

Προγραμματισμός Η/Y. Διάλεξη 6 η : Συναρτήσεις

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

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

ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)

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

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης

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

Εισαγωγή στις Συναρτήσεις

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

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες ( ιάλεξη 18) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

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

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

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής

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

Κεφάλαιο 8.7. Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

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

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

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

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

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

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

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

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

Transcript:

ΕΠΛ 034 ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΙΑ ΗΜΥ Εργαστήριο #5 Μέρος Α Κατεβάστε τα προγράμματα loop-for.c και loop-while.c από την ιστοσελίδα του μαθήματος κάτω από τα Εργαστήρια. (http://www.cs.ucy.ac.cy/courses/epl034/labs.php). 1. Το πρόγραμμα loop-for.c υπολογίζει το άθροισμα και το μέγιστο ανάμεσα σε 10 θετικούς αριθμούς που δίνει ο χρήστης από το πληκτρολόγιο. Συμπληρώστε τη δομή for() {} ώστε το πρόγραμμα να εκπληρώσει το σκοπό του. Πρέπει να χρησιμοποιήσετε μόνο τις μεταβλητές που είναι ήδη ορισμένες στο πρόγραμμα. Θεωρήστε ότι ο χρήστης δίνει πάντοτε θετικούς αριθμούς (το πρόγραμμα δε χρειάζεται να κάνει τον έλεγχο). Παράδειγμα εκτέλεσης: Tha dwseis 10 thetikoys akeraious arithmous, ena-ena tin fora Dwse arithmo 1: 3 Dwse arithmo 2: 45 Dwse arithmo 3: 12 Dwse arithmo 4: 6 Dwse arithmo 5: 9 Dwse arithmo 6: 14 Dwse arithmo 7: 2 Dwse arithmo 8: 34 Dwse arithmo 9: 7 Dwse arithmo 10: 8 To athroisma einai 140, kai o megalyteros arithmos einai o 45 Αρχικός Κώδικας: /* ensomatosi vivliothikwn */ #include <stdio.h> /* Dilosi statheras */ #define MAX_NUM 10 int main() { /* Dilosi metavlitwn */ int num, max, sum, count; sum = 0; max = 0; printf("tha dwseis %d thetikoys akeraious arithmous, ena-ena tin 1

fora\n\n", MAX_NUM); /* SIMPLIRWSTE ANALOGWS */ /* for() {} */ /* Ektypwsh apotelesmatos */ printf("\nto athroisma einai %d, kai o megalyteros arithmos einai o %d\n", sum, max); } return(0); 2. Το πρόγραμμα αυτό υπολογίζει το μέγιστο αριθμό και τη θέση του σε μια λίστα θετικών ακέραιων αριθμών απροσδιορίστου μεγέθους που δίνει ο χρήστης από το πληκτρολόγιο καθώς επίσης και το μέγεθος που έχει τελικά η λίστα. Η εισαγωγή ακεραίων αριθμών τελειώνει όταν ο χρήστης δώσει 0 ή οποιονδήποτε αρνητικό ακέραιο αριθμό (ο αριθμός αυτός δεν πρέπει να θεωρηθεί μέλος της λίστας). Συμπληρώστε τη δομή while() {} ώστε το πρόγραμμα να εκπληρώσει το σκοπό του. Πρέπει να χρησιμοποιήσετε μόνο τις μεταβλητές που είναι ήδη ορισμένες στο πρόγραμμα. Θεωρήστε ότι ο χρήστης δίνει πάντοτε θετικούς αριθμούς (το πρόγραμμα δε χρειάζεται να κάνει τον έλεγχο). Παράδειγμα εκτέλεσης: Tha dineis thetikoys akeraious arithmous, ena-ena tin fora. Gia na stamatiseis dwse to 0 h arnitiko arithmo. Dwse arithmo 1: 3 Dwse arithmo 2: 45 Dwse arithmo 3: 12 Dwse arithmo 4: 6 Dwse arithmo 5: 9 Dwse arithmo 6: 14 Dwse arithmo 7: 2 Dwse arithmo 8: 34 Dwse arithmo 9: 7 Dwse arithmo 10: 8 Dwse arithmo 11: 0 O megistos einai o 45 kai einai o 2os arithmos mias listas megethous 10 2

Αρχικός Κώδικας: /* ensomatosi vivliothikwn */ #include <stdio.h> int main() { /* Dilosi metavlitwn */ int num, max, position, count; max = 0; position = 0; count = 1; printf("tha dineis thetikoys akeraious arithmous, ena-ena tin fora.\n"); 3 printf("gia na stamatiseis dwse to 0 h arnitiko arithmo.\n\n"); /* SIMPLHRWSTE ANALOGWS*/ /* while() {} */ /* Ektypwsh apotelesmatos*/ printf("\no megistos einai o %d kai einai o %dos arithmos", max, position); printf("\nmias listas megethous %d\n", count-1); return(0); } 3

Μέρος Β Γράψετε προγράμματα στη C που υλοποιούν το καθένα από τα πιο κάτω προβλήματα (Στο εργαστήριο, γράψετε στο χαρτί μόνο τους βρόγχους που πρέπει να υλοποιηθούν). Για κάθε πρόβλημα σας δίνετε ο αριθμός και τύπος των βρόγχων (loops) που είναι αρκετά για να λύσετε το συγκεκριμένο πρόβλημα. Προσπαθήστε να μην χρησιμοποιήσετε περισσότερα. Παράδειγμα: Γράψετε τμήμα προγράμματος με loop(s) που τυπώνουν τους αριθμούς από το 10 μέχρι και το 20 (χρησιμοποιείστε 1 for loop) Απάντηση: for (i=10; i<=20; i++) printf("%d\n", i); 4

Προβλήματα: 1. Γράψετε κώδικα που τυπώνει τις πρώτες δέκα δυνάμεις του 2. (δηλ. 2, 4, 8,..., 1024). (χρησιμοποιείστε 1 for loop) 5

2. Γράψετε κώδικα που βρίσκει το γινόμενο μιας απροσδιόριστου μεγέθους σειράς μη αρνητικών πραγματικών αριθμών που δίνει ο χρήστης. Ο χρήστης θα εισάγει ένα αρνητικό αριθμό για να δείξει ότι τελειώνει η σειρά. (χρησιμοποιείστε 1 while loop) 6

3. Γράψετε κώδικα που τυπώνει τα πιο κάτω βάση της τιμής του n. Εάν το n είναι 4 ooooo ^^^^ Εάν το n είναι 10 ooooooooooo ^^^^^^^^^^ Ο κώδικας να ζητάει από τον χρήστη την τιμή του n και μετά να παράγει το πιο πάνω σαν έξοδο. Το πρόγραμμα θα πρέπει να συνεχίζει εφόσον ο χρήστης δίνει μη αρνητικές τιμές. (χρησιμοποιείστε 1 while loop, 2 for loops) 7

4. Γράψετε κώδικα που παράγει το πιο κάτω σχήμα: Μπορείτε να βρείτε χρήσιμη την πιο κάτω συνάρτηση, η οποία επιστρέφει την απόλυτη τιμή ενός αριθμού: int absolute_value(int number); (χρησιμοποιείστε 2 for loops φωλιασμένα) 8

5. Τυπώστε ένα δισδιάστατο γράφημα από το -5 μέχρι το 5 στους άξονες X και Y ώστε να υπάρχει * στο γράφημα μόνο εάν το X*X + Y*Y είναι μεγαλύτερο του 16. ιαδοχικές συντεταγμένες απέχουν κατά 0.5. Η έξοδος πρέπει να είναι ως εξής: (χρησιμοποιείστε 2 for loops φωλιασμένα) 9