2/28/00epl-1311 Παραδειγματα Aλγοριθμων Αριθμος λεξεων που διαβαστηκαν απο εισοδο Εκτυπωση περιφερειας τετραγωνων με * Υπολογισμος exp(x,n) = 1 + x/1!

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Δομές στην C (επανάληψη)
Advertisements

Το αλφαριθμητικό (string)
Προγραμματισμός PASCAL
Ένα απλό πρόγραμμα σε C /* ********************************************* * This program prints out the sentence “This is a test.” * *********************************************
POINTERS, AGGREGATION, COMPOSITION. POINTERS TO OBJECTS.
ΜΑΘΗΜΑ 7ο Κυκλικές και Διπλά Συνδεδεμένες Λίστες,
Γλώσσα C & Unix Τμήμα Πληροφορικής, ΑΠΘ B’ εξάμηνο
Δείκτες, Πίνακες και Δείκτες, Δείκτες σε Συναρτήσεις
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
Αναδρομη και static Γραψετε την συναρτηση sequence_size που διαβαζει μια απροσδιοριστου μεγεθους σειρας και υπολογιζει και τυπωνει το μεγεθος της. int.
Τύποι πραγματικών αριθμών
Εντολες Επιλογης (Selection)
Αλγόριθμοι Ταξινόμησης
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα.
Συναρτήσεις Κληση/Επιστροφη Παραμετροι
ΜΑΘ-3122/106 Γλώσσα Προγραμματισμού
Αρχές Προγραμματισμού (C). ...γράφοντας σωστά προγράμματα! (IIΙ)
ΦΡΟΝΤΙΣΤΗΡΙΟ 1-β.
ΕΠΑΝΑΛΗΨΗΕΠΑΝΑΛΗΨΗ ΠΡΟΓΡΑΜΜΑΤΑ. ΠΡΟΓΡΑΜΜΑ 1 ΕΞΗΓΗΣΤΕ ΤΙ ΕΞΟΔΟ ΠΑΡΑΓΕΙ ΤΟ ΠΑΡΑΚΑΤΩ ΠΡΟΓΡΑΜΜΑ #include int main() { char ch; int i; float fl; printf("dose.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Υποθετικός τελεστής Ο υποθετικός τελεστής (?:) αποτελείται από δύο σύμβολα. Ανήκει στην κατηγορία των τελεστών που αποτελούνται από συνδυασμό συμβόλων.
Ολυμπιάδα Πληροφορικής
Ολυμπιάδα Πληροφορικής
Παράδειγματα Συναρτησεις Πανω-Κατω Σχεδιασμος
Πάνω προς Κάτω Σχεδιασμός και Συναρτήσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II.
Είσοδος & Έξοδος στη C++ Ι
Eντολες Επαναληψης - Βροχοι (repetition and loops)
Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο1 Ωμή Βία Είναι μία άμεση προσέγγιση που βασίζεται στην εκφώνηση του προβλήματος και τους ορισμούς.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αρχεία.
Templates Standard Template Library (STL) Exceptions Μεταπτυχιακό Πρόγραμμα Σπουδών, Τμήμα Εφαρμοσμένης Πληροφορικής.
ΜΑΘ3122/106 – Γλώσσα προγραμματισμούΞενοφών Ζαμπούλης ΜΑΘ3122/106 Γλώσσα προγραμματισμού Συναρτήσεις.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός – Αφηρημένες κλάσεις Interfaces (διεπαφές)
Μετατροπή Εκφράσεων σε C
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 1 Δείκτες σε συναρτήσεις Δείκτης σε συνάρτηση – Περιέχει τη διεύθυνση του κώδικα της συνάρτησης – Ό π ως ένας.
ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Επανάληψη.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Αρχεία.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι 4-1 Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων.
ΗΥ150 – ΠρογραμματισμόςΞ. Ζαμπούλης ΗΥ-150 Προγραμματισμός Αρχεία.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αλφαριθμητικά (Strings)
ΗΥ150 – Προγραμματισμός Ξενοφών Ζαμπούλης 1 getchar() /* char_count.c A program to count characters of input. */ main() { int c ; int count = 0; while.
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις (μέρος δεύτερο) και Μεταβλητές.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
Προγραμματισμός ΗΥ Ενότητα 6: Δισδιάστατοι πίνακες.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 2: Συναρτήσεις Εισόδου ⁄ Εξόδου. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 4: Επαναληπτικές δομές. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής. Τμήμα Μηχανικών.
ΔΠΘ-ΤΜΗΜΑ ΜΠΔ: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ 1 Εισαγωγή στη γλώσσα Προγραμματισμού C ΠΙΝΑΚΕΣ (arrays)
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη. Αθήνα, 2015.
Π Ι Ν Α Κ Ε Σ (arrays) ΤΑΞΙΝΟΜΗΣΗ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Ενισχυτική διδασκαλία
Ενισχυτική διδασκαλία
ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ Η εντολή if if ( παράσταση) εντολή επόμενη εντολή.
for (παράσταση_1; παράσταση_2; παράσταση_3)
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Ταξινόμηση Ορισμός: Δοθέντων των στοιχείων a1,a2,… ,an η ταξινόμηση συνίσταται στην αντιμετάθεση της θέσης των στοιχείων ώστε να τοποθετηθούν με μια νέα.
ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΛΩΣΣΑ C
Τεχνολογία και Προγραμματισμός Υπολογιστών
ΣΥΝΑΡΤΗΣΕΙΣ (Functions)
EPL231 – Data Structures and Algorithms
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
ΑΣΚΗΣΕΙΣ.
Μεταγράφημα παρουσίασης:

2/28/00epl-1311 Παραδειγματα Aλγοριθμων Αριθμος λεξεων που διαβαστηκαν απο εισοδο Εκτυπωση περιφερειας τετραγωνων με * Υπολογισμος exp(x,n) = 1 + x/1! + x 2 /2! + x 3 /3! +…+ x n /n!

2/28/00epl-1312 Αριθμος Λεξεων Γραψετε ενα προγραμμα που διαβαζει ενα κειμενο απο την εισοδο και υπολογιζει και τυπωνει τον αριθμο λεξεων.

3 Αριθμος Λεξεων Παραδειγματα Τι πρεπει να γινει: –Διαβασμα ακολουθιας χαρακτηρων –Μετρηση Γεγονοτος: Λεξης Τι ειναι λεξη:συνεχομενη σειρα χαρακτηρων Τα αλλα τι ειναι? ‘\n’, ‘\t’, ‘ ’ Μετρουμε: μετακινηση απο ασπρο διαστημα σε λεξη (ή απο λεξη σε ασπρο διαστημα) Που ειμαστε προηγουμενως/τωρα:διαστημα ή λεξη- εννοια σημαίας (flag)

2/28/00epl-1314 #define ON 1 #define OUT 0 int main() {int c, where_before, where_now, nw; where_before = OUT; nw = 0; while((c=getchar()) != EOF){ if (c == ‘\n’ || c==‘\t’ || c==‘ ’) where_now = OUT; else where_now = ON; if ( where_before == OUT && where_now = ON) nw = nw + 1; where_before = where_now; } printf(“The number of words in the input is %3d.\n”,nw); return 0; }

2/28/00epl-1315 #define ON 1 #define OUT 0 int main() { int c, where, nw; where = OUT; nw = 0; while((c=getchar()) != EOF){ if (c == ‘\n’ || c==‘\t’ || c==‘ ’) where = OUT; else if ( where == OUT){ nw = nw + 1; where = ON; } printf(“The number of words in the input is %3d.\n”,nw); return 0; }

2/28/00epl-1316 #define ON 1 #define OUT 0 int main() { int c, where, nw; where = OUT; nw = 0; while((c=getchar()) != EOF){ if (c == ‘\n’ || c==‘\t’ || c==‘ ’){ if (where == ON) nw = nw + 1; where = OUT; } else where = ON; } printf(“The number of words in the input is %3d.\n”,nw); return 0; }

2/28/00epl-1317 Εκτυπωση περιφερειας τετραγωνων Γραψετε ενα προγραμμα που διαβαζει το μεγεθος της πλευρας ενος τετραγωνου και τυπωνει την περιφερεια του με * (η τιμη πρεπει να ειναι ακεραια και >1). Πχ εαν η τιμη ειναι 3 *** * * ***

2/28/00epl-1318 Εκτυπωση περιφερειας τετραγωνων Παραδειγματα Τι πρεπει να γινει για τιμη ν: –Τυπωση πανω πλευρας με ν * –Τυπωση ενδιαμεσων (ν-2) με * ν-2 ‘ ’ * –Τυπωση κατω πλευρας με ν *

2/28/00epl-1319 void display_n_stars(int n); void display_star_spaces_star(int n); Χρησιμες Συναρτησεις

2/28/00epl /* enter size of square */ /* call display_stars once */ /* call display_star_spaces_star n-2 times */ /* call display_stars once */ Αλγοριθμος

2/28/00epl /* enter size of square */ printf(“Enter square size: “); scanf(“%d”, &size); /* size stars */ display_n_stars(size); /* n-2 calls to display_star_spaces_star(size);*/ /* size stars */ display_n_stars(size);

2/28/00epl /* n-2 calls */ i=0; while(size<n-2){ display_star_spaces_star(size); i=i+1; }

13 int i, size; /* enter size of square */ printf(“Enter square size: “); scanf(“%d”, &size); /*print size stars */ display_n_stars(size); /* n-2 calls to display_star_spaces_star(size);*/ i=0; while(size<n-2){ display_star_spaces_star(size); i=i+1; } /* print size stars */ display_n_stars(size);

2/28/00epl void display_n_stars(int n) { int i=0; while(i<n){ printf(“*”); i = i + 1; } printf(“\n”); } void display_star_spaces_star(int n) { int i=0; if (n<=2) return; printf(“*”); while(i<n-2){ printf(“ ”); i = i + 1; } printf(“*\n”); }

2/28/00epl Υπολογισμος Γραψετε ενα προγραμμα που υπολογιζει και τυπωνει την τιμη του exp(x,n) = 1 + x/1! + x 2 /2! + x 3 /3! +…+ x n /n! Το προγραμμα διαβαζει τις τιμες x και n απο τον χρηστη. X 0 /0! + x 1 /1! + x 2 /2! + x 3 /3! +…+ x n /n!

2/28/00epl Υπολογισμος Τι πρεπει να γινει? –Δημιουργια n+1 ορων (0 μεχρι n) –Aθροισμα των ορων

2/28/00epl Δημιουργια Ορου ν Συναρτηση float term(n,x) επιστρεφει τον n ορο της σειρας για την τιμη x

2/28/00epl exp term(0,x) float term(int n, float x) term(1,x)term(2,x)term(3,x) exp

2/28/00epl Υπολογισμος float exp; int ith_term; exp =0; ith_term = 0; while(ith_term <= n){ exp = exp + term(ith_term,x); ith_term = ith_term + 1; }

2/28/00epl term(n,x) Πως πρεπει να γινει? –υπολογισμος δυναμης –υπολογισμος παραγωντικου Χρησιμες Συναρτησεις –x n float power(x,n); –n! int factorial(n); n! = … n Οριζεται στην math.h Need user definition

2/28/00epl float term (int n, float x) { return pow(x,n)/factorial(n); }

2/28/00epl factorial * * * float factorial(int n)

2/28/00epl float factorial (int n) { int f,i; f=1; i=2;/* if i=0 or 1 return 1*/ while(i<=n){ f = f * i; i = i + 1; } return f; }

2/28/00epl Trace Table for Factorial Για n: 0,1,2 … 5