Τύποι πραγματικών αριθμών

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Το αλφαριθμητικό (string)
Advertisements

Προγραμματισμός Ι (αποφύγετέ τον!) 3) Διακοπτόμενος βρόχος: (αποφύγετέ τον!) float energy;......while(TRUE){drink_water(); if(energy
Προγραμματισμός Ι Προτάσεις ελέγχου ροής Ο πιο συνηθισμένος τρόπος εκτέλεσης είναι ο ακολουθιακός: δύο ή περισσότερες προτάσεις βρίσκονται διατεταγμένες.
Ένα απλό πρόγραμμα σε C /* ********************************************* * This program prints out the sentence “This is a test.” * *********************************************
ΜΑΘΗΜΑ 7ο Κυκλικές και Διπλά Συνδεδεμένες Λίστες,
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
Προγραμματισμός Ι Παράδειγμα: Παράδειγμα:Να γραφεί πρόγραμμα που να δέχεται ως είσοδο κείμενο, να απαριθμεί τις εμφανίσεις των ψηφίων 0-9, τα λευκά διαστήματα.
Αναδρομη και static Γραψετε την συναρτηση sequence_size που διαβαζει μια απροσδιοριστου μεγεθους σειρας και υπολογιζει και τυπωνει το μεγεθος της. int.
ΜΑΘ 3122 (106) Γλώσσα προγραμματισμού
ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜMΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ – ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ.
Γλώσσα Προγραμματισμού
Εντολες Επιλογης (Selection)
Συναρτήσεις Κληση/Επιστροφη Παραμετροι
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
ΜΑΘ-3122/106 Γλώσσα Προγραμματισμού
ΗΥ-150 Προγραμματισμός Εντολές Ελέγχου Ροής.
Τελεστές ανάθεσης (assignment)
ΜΕΤΑΒΛΗΤΕΣ - ΤΥΠΟΙ ΜΑΘΗΜΑ 3.
ΕΠΑΝΑΛΗΨΗΕΠΑΝΑΛΗΨΗ ΠΡΟΓΡΑΜΜΑΤΑ. ΠΡΟΓΡΑΜΜΑ 1 ΕΞΗΓΗΣΤΕ ΤΙ ΕΞΟΔΟ ΠΑΡΑΓΕΙ ΤΟ ΠΑΡΑΚΑΤΩ ΠΡΟΓΡΑΜΜΑ #include int main() { char ch; int i; float fl; printf("dose.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Υποθετικός τελεστής Ο υποθετικός τελεστής (?:) αποτελείται από δύο σύμβολα. Ανήκει στην κατηγορία των τελεστών που αποτελούνται από συνδυασμό συμβόλων.
1 Ολυμπιάδα Πληροφορικής Μάθημα 7. 2 Στόχοι μαθήματος Δημιουργία συναρτήσεων από το χρήστη Δομή προγράμματος με συναρτήσεις Συναρτήσεις και παράμετροι.
Ολυμπιάδα Πληροφορικής
ΣΥΝΑΡΤΗΣΕΙΣ.
Πάνω προς Κάτω Σχεδιασμός και Συναρτήσεις
Είσοδος & Έξοδος στη C++ Ι
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ – ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
Ενότητα Α.4. Δομημένος Προγραμματισμός
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αρχεία.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
ΘΠ06 - Μεταγλωττιστές Εισαγωγή στον Bison Φροντιστήριο - 23/03/2010.
ΜΑΘ 3122/106 – Γλώσσα Προγραμματισμού Ξενοφών Ζαμπούλης ΜΑΘ-3122/106 Γλώσσα Προγραμματισμού Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Επανάληψη.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
2/28/00epl-1311 Παραδειγματα Aλγοριθμων Αριθμος λεξεων που διαβαστηκαν απο εισοδο Εκτυπωση περιφερειας τετραγωνων με * Υπολογισμος exp(x,n) = 1 + x/1!
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Αρχεία.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
ΗΥ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.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
Βασικά στοιχεία της Java
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
TEXNΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ – ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ.
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 2: Συναρτήσεις Εισόδου ⁄ Εξόδου. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής.
Εισαγωγή - Τα Βασικά της C1 Τ.Ε.Ι. ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ Τ.Ε.Ι. ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ «Προγραμματισμός.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Προγραμματισμός ΗΥ Ενότητα 4: Επαναληπτικές δομές. Διδάσκων: Ηλίας Κ Σάββας, Αναπληρωτής Καθηγητής. Τμήμα Μηχανικών.
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ευάγγελος Γ. Ούτσιος Θεόδωρος Γ. Λάντζος.
Πολυδιάστατοι Πίνακες στην JAVA ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ.
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Εισαγωγή στην Python.
Δεδομένα, μεταβλητές, υπολογισμοί
Ενισχυτική διδασκαλία
ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ Η εντολή if if ( παράσταση) εντολή επόμενη εντολή.
for (παράσταση_1; παράσταση_2; παράσταση_3)
Τύποι Μεταβλητών.
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
Τεχνολογία και Προγραμματισμός Υπολογιστών
Τεχνολογία και Προγραμματισμός Υπολογιστών
ΣΥΝΑΡΤΗΣΕΙΣ (Functions)
Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ Η/Υ
Αρχές Προγραμματισμού (C)
ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ
Μεταγράφημα παρουσίασης:

Τύποι πραγματικών αριθμών Δήλωση: πραγματικοί είναι οι αριθμοί που διαθέτουν κλασματικό μέρος και εκφράζονται συνήθως στις ακόλουθες μορφές: Fixed-point number Scientific notation Exponential notation 123.456 1.23456x102 1.23456e+02 0.00002 2.0x10-5 2.0e-5 50000.0 2.0x104 5.0e+04 Η γλώσσα C διαθέτει δύο τύπους για αναπαράσταση πραγματικών αριθμών. Τον τύπο float για αριθμούς κινητής υποδιαστολής απλής ακρίβειας και τον τύπο double για αριθμούς κινητής υποδιαστολής διπλής ακρίβειας. Η πρόταση float plank=6.63e-34; δηλώνει τη μεταβλητή plank ως απλής ακρίβειας και της δίνει την τιμή 6.63e-34. Η χρήση του προσδιοριστή long πριν από τον τύπο double χρησιμοποιείται για δήλωση μεταβλητής κινητής υποδιαστολής εκτεταμένης ακρίβειας, π.χ. long double plank;

Εκτύπωση: με χρήση της printf() και των προσδιοριστών %f για εμφάνιση σε fixed point μορφή, %e για εμφάνιση σε εκθετική μορφή, και %g για να ανατεθεί στο σύστημα να επιλέξει μεταξύ των δύο προηγουμένων, με προτεραιότητα στη μορφή με το μικρότερο μέγεθος. Αποθήκευση: ως συνηθισμένα μεγέθη αναφέρονται για τους μεν float τα 32 bits, 8 για εκθέτη και πρόσημο και 24 για τη βάση, για τους δε double τα 64 bits, με τα επιπλέον 32 να χρησιμοποιούνται για αύξηση της ακρίβειας της βάσης. Πραγματικές σταθερές: Πραγματικοί αριθμοί όπως οι 0.12 45.68 9e-5 24e09 0.0034e-08 όταν εμφανίζονται στον πηγαίο κώδικα αποτελούν τις πραγματικές σταθερές. Θεωρούνται από το μεταγλωττιστή ως double και δεσμεύουν τον αντίστοιχο χώρο.

/************************************************************** Το πρόγραμμα εξετάζει το μήκος του τύπου κινητής υποδιαστολής. **************************************************************/ #include <stdio.h> #include <float.h> // για το μέγιστο και τον ελάχιστο float, double void main() { float num_float=FLT_MAX; // Mέγιστος float double num_double=DBL_MAX; // Mέγιστος double printf( "float is %d bytes\n",sizeof(float) ); printf( "double is %d bytes\n",sizeof(double) ); printf("\nmax float:%e min float:%e\n",num_float,FLT_MIN); printf("\nmax double:%e,min double:%e\n" num_dοuble,DBL_MIN); }

Αποτελέσματα:

Ι/Ο κονσόλας Η Ι/Ο κονσόλας αναφέρεται στις λειτουργίες που γίνονται στο πληκτρολόγιο και στην οθόνη του υπολογιστή. Εκτός από τις printf() και scanf() που χρησιμοποιήθηκαν προγουμένως (και αποτελούν τη φορμαρισμένη Ι/Ο κονσόλας γιατί μπορούν να διαβάζουν δεδομένα σε διάφορες φόρμες), υπάρχει μία σειρά απλούστερων συναρτήσεων που αναπτύσσεται ακολούθως.

Οι συναρτήσεις getche, getch H συνάρτηση getche() διαβάζει ένα χαρακτήρα από την κύρια είσοδο (πληκτρολόγιο). Αναμένει έως ότου πατηθεί ένα πλήκτρο και στη συνέχεια επιστρέφει την τιμή του, εμφανίζοντας στην οθόνη το πλήκτρο που πατήθηκε. Το πρωτότυπο της getche() είναι το ακόλουθο: int getche(void); H getche() επιστρέφει μεν έναν ακέραιο αλλά το byte χαμηλής τάξης περιέχει τον χαρακτήρα. Η χρήση ακεραίων γίνεται για λόγους συμβατότητας με τον αρχικό μεταγλωττιστή της UNIX C.

Οι συναρτήσεις getche, getch (συνέχεια) Το αρχείο κεφαλίδας της συνάρτησης getche() βρίσκεται στο conio.h. H συνάρτηση getch() αποτελεί παραλλαγή της getche() και βρίσκεται στο conio.h. Λειτουργεί όπως ακριβώς η getche με τη διαφορά ότι η getch() δεν εμφανίζει τον πληκτρολογηθέντα χαρακτήρα στην οθόνη. Το πρωτότυπο της getch() είναι το ακόλουθο: int getch(void);

Η συνάρτηση getchar H συνάρτηση getchar() διαβάζει ένα χαρακτήρα από την κύρια είσοδο και τον επιστρέφει στο πρόγραμμα. Αποτελεί παραλλαγή της getche(). Είναι η αρχική συνάρτηση εισόδου χαρακτήρων που βασίζεται στο UNIX. Το πρόβλημα με τη συνάρτηση αυτή είναι ότι κρατά την είσοδο στην περιοχή προσωρινής αποθήκευσης μέχρι να δώσουμε επαναφορά κεφαλής. Έτσι, μετά την επιστροφή της getchar() περιμένουν ένας ή περισσότεροι χαρακτήρες στην ουρά εισόδου. Το πρωτότυπο της getchar() είναι το ακόλουθο: int getchar(void); Το αρχείο κεφαλίδας της συνάρτησης getchar() βρίσκεται στο stdio.h.

Η συνάρτηση putchar H συνάρτηση putchar() εμφανίζει στην οθόνη το χαρακτήρα που έχει ως όρισμα (π.χ. c), στην τρέχουσα θέση του δρομέα. Το πρωτότυπο της putchar() είναι το ακόλουθο: int putchar(int c); H putchar() επιστρέφει μεν έναν ακέραιο αλλά το byte χαμηλής τάξης περιέχει τον χαρακτήρα. Η χρήση ακεραίων γίνεται για λόγους συμβατότητας με τον αρχικό μεταγλωττιστή της UNIX C. Το αρχείο κεφαλίδας της συνάρτησης putchar() βρίσκεται στο stdio.h.

Η συνάρτηση kbhit H συνάρτηση kbhit() (keyboard hit) ελέγχει κατά πόσον ο χρήστης έχει πατήσει κάποιο πλήκτρο. Εφόσον έχει πατήσει κάποιο πλήκτρο η συνάρτηση επιστρέφει ως αληθής, σε αντίθετη περίπτωση επιστρέφει ως ψευδής. Η συνάρτηση kbhit() χρησιμοποιείται κυρίως για να διακόπτει ο χρήστης το πρόγραμμα κατά το δοκούν. Το πρωτότυπο της kbhit() είναι το ακόλουθο: int kbhit(void); Το αρχείο κεφαλίδας της συνάρτησης kbhit() βρίσκεται στο conio.h.

Παράδειγμα: Το ακόλουθο πρόγραμμα παίρνει χαρακτήρες από το πληκτρολόγιο και μετατρέπει τα κεφαλαία σε μικρά και τούμπαλιν. Το πρόγραμμα σταματά μόλις πληκτρολογηθεί μία τελεία. Το αρχείο-κεφαλίδα ctype.h απαιτείται για τη συνάρτηση islower(), που αληθεύει αν το όρισμά της είναι σε μικρά γράμματα, και τις συναρτήσεις toupper(), tolower(), που μετασχηματίζουν τα γράμματα. (να μη γίνει ιδιαίτερη μνεία για την επαναληπτική πρόταση και την υπό συνθήκη διακλάδωση. Θα μελετηθούν εκτενώς αργότερα.) #include <stdio.h> #include <conio.h> #include <ctype.h> void main() { char ch; printf( "Start writing letters without ENTER\n\n"); do { ch=getche(); printf( " -> " ); if (islower(ch)) putchar(toupper(ch)); else putchar(tolower(ch)); } while (ch!='.'); // τέλος του βρόχου με το χαρακτήρα '.' }

Αποτελέσματα: