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

Σχετικά έγγραφα
Δομημένος Προγραμματισμός

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

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

Θεωρία Πιθανοτήτων & Στατιστική

Προέλευση της Pazcal ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

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

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

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

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Λογιστικές Εφαρμογές Εργαστήριο

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

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

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

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

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

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

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

Υδραυλικά & Πνευματικά ΣΑΕ

Μαθηματικά. Ενότητα 7: Μη Πεπερασμένα Όρια. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

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

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

Συστήματα Αυτομάτου Ελέγχου 1 Ενότητα # 5: Χρήση μετασχηματισμού Laplace για επίλυση ηλεκτρικών κυκλωμάτων Μέθοδοι εντάσεων βρόχων και τάσεων κόμβων

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

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

Θεωρία Πιθανοτήτων & Στατιστική

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Περιβαλλοντική Χημεία

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

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

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

Συστήματα Αυτομάτου Ελέγχου II

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

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

Γενικά Μαθηματικά Ι. Ενότητα 14: Ολοκλήρωση Κατά Παράγοντες, Ολοκλήρωση Ρητών Συναρτήσεων Λουκάς Βλάχος Τμήμα Φυσικής

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

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

Αντικειμενοστραφής Προγραμματισμός

9 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

7 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

8 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

Προχωρημένες έννοιες προγραμματισμού σε C

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Μέθοδοι Βελτιστοποίησης

Συστήματα Αυτόματου Ελέγχου

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

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

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

Επεξεργασία κειμένου και συμβολοσειρών σε C

Θεωρία Πιθανοτήτων & Στατιστική

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

Λογιστικές Εφαρμογές Εργαστήριο

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

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

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

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

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

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

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

242 -ΕισαγωγήστουςΗ/Υ

Transcript:

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

Πρόγραμμα C-1: Άθροισμα κλασμάτων, ανάγωγο κλάσμα (1/2) /* athroisma klasmatwn kai aplopoihsh se anagwgo klasma p.x. 1 / 3 + 4 / 6 = 1 / 1 */ #include <stdio.h> int MKD( int a, int b); int main( void ) { int a, b, c, d, e, f, k; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); scanf("%d",&d); e= a*d + b*c; f= b*d; k= MKD( e, f); e= e / k; f= f / k; printf("%d / %d + %d / %d = %d / %d\n", a, b, c, d, e, f); return 0; (συνέχεια)

Πρόγραμμα C-1: Άθροισμα κλασμάτων, ανάγωγο κλάσμα (1/2) /* synarthsh MKD (a, b) */ int MKD( int a, int b) { int i, y1, y2, m; for( i=1; i<=a; i++) { y1= a%i; y2= b%i; if ( (y1==0) && (y2 == 0) ) { m= i; return m;

Πρόγραμμα C-2: Εύρεση των πρώτων αριθμών (1/2) /* eyresh twn prwtwn arithmwn metaksy 1 kai 100 kai apothikeysh aytwn se ena pinaka */ #include <stdio.h> int checkprwtos( int a); int main( void ) { int i, r, c; int p[50]; c= 0; for(i=1; i<=100; i++) { r= checkprwtos( i); if (r==1) { p[c]= i; c= c + 1; printf("brethikan %d prwtoi arithmoi:\n", c); for(i=0; i<c; i++) { printf("%d\n", p[i]); return 0; (συνέχεια)

Πρόγραμμα C-2: Εύρεση των πρώτων αριθμών (2/2) /* synarthsh checkprwtos, epistrefei 1 an einai prwtos kai 0 an den einai */ int checkprwtos( int a) { int y, i, c; c = 0; for( i=1; i<=a; i++) { y= a%i; if (y == 0) { c= c+1; if (c == 2) { return 1; else { return 0;

Πρόγραμμα C-3: Ανάλυση αριθμού σε γινόμενο πρώτων αριθμών (1/3) /* analysh aritmnou se ginomeno prwtwn arithmwn */ #include <stdio.h> int checkprwtos( int a); int ypolpinakasprwtwn( int p[50]); int main( void ) { int a, np, i, y; int p[50]; np= ypolpinakasprwtwn( p ); /* ypologismos plhthous np prwtwn ston pinaka p*/ printf("eishgage arithmo metaksi 1 kai 100\n"); scanf("%d", &a); i= 0; do { do { y = a%p[i]; if (y==0) { printf("%d ",p[i]); a= a/p[i]; while (y==0); i= i + 1; while (a!=1);

Πρόγραμμα C-3: Ανάλυση αριθμού σε γινόμενο πρώτων αριθμών (2/3) /* synarthsh ypologismou tou pinaka twn prwtwn 1..100 */ int ypolpinakasprwtwn( int p[50]) { int i, r, c; c= 0; for(i=1; i<=100; i++) { r= checkprwtos( i); if (r==1) { p[c]= i; c= c + 1; return c;

Πρόγραμμα C-3: Ανάλυση αριθμού σε γινόμενο πρώτων αριθμών (3/3) /* synarthsh checkprotos, epistrefei 1 an einai prwtos kai 0 an den einai */ int checkprwtos( int a) { int y, i, c; c = 0; for( i=1; i<=a; i++) { y= a%i; if (y == 0) { c= c+1; if (c == 2) { return 1; else { return 0;

Πρόγραμμα C-4: Λύση συστήματος 2x2 (1/2) /* lysh grammikou systhmatos 2 x 2 a1*x + b1*y = c1 a2*x + b2*y = c2 p.x. x + y = 5 x - y = 3 opou x=4, y=1 */ #include <stdio.h> float oriz( float a, float b, float c, float d); int main( void) { float a1, b1, c1; float a2, b2, c2; float dx, dy, d; float x, y; printf("eishgage prwth ejiswsh a1, b1, c1\n"); scanf("%f", &a1); scanf("%f", &b1); scanf("%f", &c1); printf("eishgage deyterh ejiswsh a2, b2, c2\n"); scanf("%f", &a2); scanf("%f", &b2); scanf("%f", &c2); (συνέχεια)

Πρόγραμμα C-4: Λύση συστήματος 2x2 (2/2) d= oriz(a1, b1, a2, b2); if (d==0) { printf("d=0, systhma adynato h aoristo\n"); else { dx= oriz(c1, b1, c2, b2); dy= oriz(a1, c1, a2, c2); x= dx/d; y= dy/d; printf("lyseis x=%.2f, y=%.2f\n",x,y); return 0; /* synarthsh ypologismou orizousas */ float oriz( float a, float b, float c, float d) { float p; p= a*d - b*c; return p;

Πρόγραμμα C-5: Εύρεση min, max συνάρτησης (1/2) /* eyresh elaxistou, megistou synarthshs */ #include <stdio.h> #include <math.h> float f(float x); int main(void) { int n=1000; int i; float x1, x2, stepx, ymin, ymax, x, y; scanf("%f", &x1); scanf("%f", &x2); stepx=(x2-x1)/n; ymin=ymax=f(x1); for(i=0; i<=n; i++) { x=x1+i*stepx; y=f(x); if (y>ymax) { ymax=y; if (y<ymin) { ymin=y; printf("ymin= %f, ymax=%f\n", ymin, ymax); return 0; (συνέχεια)

Πρόγραμμα C-5: Εύρεση min, max συνάρτησης (2/2) /* synarthsh f(x) */ float f(float x) { return x*x-cos(x)+8; }

Πρόγραμμα C-6: Εύρεση ρίζας εξίσωσης f(x)=0 (1/2) /* eyresh rizas ejiswshs f(x)=0 me methodo dixotomhshs*/ #include <stdio.h> #include <math.h> float f(float x); int main(void) { float x1, x2, xm; scanf("%f", &x1); scanf("%f", &x2); if ( f(x1)*f(x2) <=0 ) { do { xm=(x1+x2)/2; if ( f(x1)*f(xm) <=0 ) { x2= xm; else { x1= xm; while ( x2-x1 > 0.001); printf("riza metaksi twn x1 kai x2, x= %f\n",xm); else { printf("f(x1)*f(x2) > 0 Den mporei na brethei riza.\n"); return 0;

Πρόγραμμα C-6: Εύρεση ρίζας εξίσωσης f(x)=0 (2/2) /* synarthsh f(x) */ float f(float x) { return cos(x)*x;

Πρόγραμμα C-7: Εύρεση idx στοιχείου πίνακα /* Pinakes kwdikos, timh, eyresh timhs apo kwdiko */ #include <stdio.h> int findcode( int a[], int n, int v); int main( void ) { int codes[10]={123, 124, 201, 202, 440, 441, 101, 102, 103, 800}; float values[10]={2.4, 3.5, 6, 6, 12, 4, 2, 2.4, 5, 1.3}; int idx, ucode; scanf("%d", &ucode); idx= findcode( codes, 10, ucode); if (idx!= -1) { printf("code= %d value= %f\n", codes[idx], values[idx]); else { printf("code= %d den brethhke\n", ucode); return 0; int findcode( int a[], int n, int v) { int i; for(i=0; i<n; i++) { if ( a[i] == v ) { return i; return -1;

Πρόγραμμα C-8: Ολοκλήρωμα συνάρτησης /* Oloklhrwma synarthshs */ #include <stdio.h> #include <math.h> double fu( double x) { double y; y=x*x-cos(x); return y; int main (void) { double x1,x2,s,e,dx,y1,y2,x; int i,n; n=1000; scanf("%lf",&x1); scanf("%lf",&x2); dx=((x2-x1)/n); s=0; for(i=0;i<n;i++) { x=x1+i*dx; y1=fu(x); y2=fu(x+dx); e=(y1+y2)*dx/2; s=s+e; printf("%lf\n",s); return 0;

Πρόγραμμα C-9: Υπολογισμός R ενός συγκεκριμένου κυκλώματος /* Xrhsh synarthsewn gia ypologismo thw R-olikhs enos sygkekrimenou kyklwmatos p.x. (R1 - R2//R3 - R4 ) // (R5 - R6) */ #include <stdio.h> float sei( float r1, float r2) { float r; r=r1+r2; return r; float par( float r1, float r2) { float r; r=(r1*r2)/(r1+r2); return r; int main( void) { float r1, r2, r3, r4, r5, r6; float r23, r123, r1234, r56, r; scanf("%f", &r1); scanf("%f", &r2); scanf("%f", &r3); scanf("%f", &r4); scanf("%f", &r5); scanf("%f", &r6); r23=par(r2,r3); r123=sei(r1,r23); r1234=sei(r123,r4); r56=sei(r5,r6); r=par(r1234,r56); printf("%f\n", r); return 0;

Τέλος Ενότητας