Fliesskommazahlen. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
|
|
- Hilke Schmitz
- vor 5 Jahren
- Abrufe
Transkript
1 Fliesskommazahlen InE1 M. Thaler, Office TG
2 Um was gehtes? Bisjetzt nur Ganzzahltypen und Funktionen z.b. Beispiel int power(int base, int exp) { int tmp = 1; double power(double base, int exp) { for (int i = 0; i < exp; i++) int { tmp = 1; tmp *= base; for (int i = 0; i < exp; i++) { } tmp *= base; return tmp; } } return double; } Neu Fliesskommazahlen und -arithmetik z.b. für Potenzen, Wurzeln, trigonometrische Funktionen, etc. Typen: double, float 2
3 Lernziele Siekönnen die Binärdarstellung von Fliesskommazahlen erklären die Ungenauigkeiten beim Rechnen mit Fliesskommazahlen erklären die Datentypen double und float diskutieren und in eigenen Programme sinnvoll einsetzen erklären, wann Zahlenwerte automatisch in andere Typen konvertiert werden und wie eine Umwandlung explizit durchgeführt werden kann die Formate für die Ein-/Ausgabe von Fliesskommazahlen aufzählen und einsetzen die Bibiothek math einsetzen 3
4 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 4
5 Leseempfehlung Kapitel 2, Variablen Wikibooks, C Programmierung WEB-Page / OLAT oder 5
6 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 6
7 Beispiel Pythagoras #include <stdio.h> #include <math.h> double pythagoras (double a, double b) { return sqrt(a*a + b*b); } int main (void) { double kath1 = 3.5, kath2 = 4.7; printf("rechtwinkliges Dreieck\n"); printf("kathete 1: %f\n", kath1); printf("kathete 2: %f\n", kath2); printf("hypothenuse: %f\n\n", pythagoras(kath1, kath2)); return 0; } Hinweise Datentyp double Zahlen mit Kommastellen 7 Rechenoperationen + -* / Wurzelfunktion in Bibliothek math
8 Fliesskommazahlenbinär Ganzzahltypen = = 1* * * * * * * *2 0 Fliesspunktypen = = 1* * * * * * *2-3 =
9 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 9
10 Datentyp double Typ double "double precision" Literal mit Punkt und Nachkommastellen: alternativ mit Zehnerpotenz: e2 (2.0356E2) typische Grösse: 8 Bytes (64 Bit) typischerwertebereich: ± ±308 Binärformat: IEEE-754, seit ca
11 IEEE-754 IEEE-754 Darstellung Beispiel: = * 2 0 Normalisieren - Punktnacherster1: 3 Stellennachlinks * 2 3 beginntimmermit1 kannweggelassenwerden - Exponent anpassen Format: Vorzeichenbit- Exponent - Mantisse - Exponent mit Bias 1023 dargestellt(exponent 0 = ^1023) - Dynamik: , 0, Auflösung: 2-53 = Stellen 11
12 IEEE-754 Beispiel: = * 2 3 Vorzeichen Exponent Mantisse 12
13 Problem Viele Zahlen nicht exakt darstellbar Grund: beschränkte Anzahl Stellen Beispiel IEEE-754 Beispiel 0.3 = > 3FD ist aber #include <stdio.h> // =? int main (void) { double wert1 = 0.1; double wert2 = 0.2; printf("summe: %.20f\n", wert1+wert2); return 0; }
14 Wichtig Rechnen mit Fliesskommazahlen immer Ungenauigkeiten viele einfache rationale Zahlen z.b. 0.1, 0.3, etc. - nicht genau darstellbar nur näherungsweise Test ob Resultatexakt0.0 bzw fast nie sinnvoll Fliesskommarithmetik - nicht assoziativ Falls exakte Ergebnisse notwendig - Ganzzahltyp mit entsprechender Interpretation der Werte verwenden - Beispiel 3.45 Fr als Integer mit 3450 (zehntel Rappen) darstellen 14
15 ... wichtig Mögliche Lösung double a, b;... if (a == b) {... } else {... } vermeiden Lösung double a, b; epsilon = 1e-12;... if (fabs(a-b) < epsilon) {... } else {... } 15
16 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 16
17 WeitereFliesskommatypen Typ float Literale mit f- oder F-Suffix alternativ auch mit 10er Potenz Typ long double Literale mit L-Suffix alternativ auch mit 10er Potenz Typische Grössen Typ Bytes Wertebereich ca. Auflösung float 4 ±3.4 * 10 ±38 ca. 7 Dezimalstellen double 8 ±1.7 * 10 ±308 long double 1) 10 ±1.7 * 10 ±4932 ca. 15 Dezimalstellen ca. 18 Dezimalstellen 1) oft Extended Format, rechnerabhängig 17
18 Wertebereiche: sizeof()und float.h Beispiel sizeof() und float.h float.h ähnlich wie limits.h für Ganzzahltypen #include <stdio.h> #include <float.h> int main (void) { int dsize = sizeof(double); int fsize = sizeof(float); int ldsize = sizeof(long double); printf("double: %d\n", dsize); // z.b. 8 printf("float: %d\n", fsize); // z.b. 4 printf("long double: %d\n", ldsize); // z.b. 16 } printf("dbl_min: %.20e\n", DBL_MIN); // e-308 printf("dbl_max: %.20e\n", DBL_MAX); // e+308 printf("ldbl_max: %.20Le\n",LDBL_MAX); // e+4932 return 0; 18
19 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 19
20 Typumwandlung: Cast Implizite Typumwandlung arithmetische Ausdrücke Typen vereinheitlicht - Umwandlung zum höchsten beteiligten Typ - kleineretypenals int(char, short) int - sonst: int unsigned int long unsigned long float double long double Zuweisungen Umwandlung in "Zieltyp" - bei kleineren Typen kann Information verloren gehen Ausdrücke int a, b; a + b; // int 4 / 2.0; // double 4L / 2.0; // double 4 / 2.0L; // long double Zuweisungen int i; double x; i = 3 / 2.0; // A: 1.5 -> Z: 1 (int) x = 3 / 2; // A: 1 -> Z: 1.0 (d) i = 3.4; // A: 3.4 -> Z: 3 (int) 20
21 ... Typumwandlung: Cast Explizite Typumwandlung int i = 6; double x = (double) i; // (typname) Ausdruck explizite Umwandlung anderen kompatiblen Typ Umwandlung in "kleineren Typ" ev. Informationsverlust Beispiele int m = 20, n = 7, k; double x; double pi = 3.14; x = m/n; // 2.0 x = (double)20/7; // x = (double)(20/7); // 2.0 k = m + pi; // = > k = 23 k = m + (int)pi; // = 23 -> k = 23 21
22 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 22
23 Ausgabemit printf() Fliesskommazahlen in printf()mit%f wissenschaftliches Format mit%e bzw. %E %e oder%e %f %g double: Format [-]d.ddd e±ddd double: Format [-]d.ddd %f oder%e: kürzeres von Beiden Flags können Art der Ausgabe steuern Feldbreite und Anzahl Nachkommastellen definierbar "%5d" // ganze Zahl, Feldbreite 5, rechtsbuendig "%05d" // ganze Zahl, Feldbreite 5, links mit 0 aufgefuellt "%.3f" // float/double, 3 Nachkommastellen "%10.2f" // float/double, Feldbreite 10, 2 Nachkommastellen 23
24 Eingabemit scanf() Einlesen scanf() - Typ float meist %f - Typ doubledann %lf float afloat; double adouble;... printf("bitte reelle Zahl eingeben: "); scanf("%f", &afloat); printf("bitte reelle Zahl eingeben: "); scanf("%lf", &adouble); 24
25 Inhalt Binärdarstellung von Fliesskommazahlen Der Datentyp double Weitere Fliesskommatypen Typenumwandlung(implizit, explizit) Ein-/Ausgabe von Fliesskommazahlen Mathematischen Funktionen 25
26 Mathmatikfunktionen: math.h Funktione in math.h definiert Mathematikbibliothek beim Linken angeben Beispiele von Funktionenm Funktion sqrt(x) sin(x) exp(x) log(x) abs(x) fabs(x)... Beschreibung Quadratwurzel Sinus Exponentialfunktion bez. e natürlicher Logarithmus Betrag(nur für Integer) Betrag(als double) 26
27 Konstanten Konstanten mit const definieren bekannt Konstanten in limits.h, float.h, math.h mit #define definiert #define M_PI vom Präprozessor verarbeitet werden im Quelltext ersetzt kein Datentyp wenn möglich const vewenden 27
28 Zusammenfassung Fliesskommatyp i.d.r. double In gut begründeten Fällen float long double 28
29 Links printf- und scanf-formate C Standard Library On-line Werzeuge zu IEEE
30 Programmierstil Variablennamen beschreiben Inhalt, z.b. sollzins beginnen mit Kleinbuchstaben Variablen mit nur einem Buchstaben - i, j, k Laufvariablen, meist Typ int - m, n ebenfallsmeisttyp int - x, y, z meisttyp double Konstanten vollständig mit Grossbuchstaben 30
Ganze Zahlen, Ausdrücke Variablen/Konstanten
Ganze Zahlen, Ausdrücke Variablen/Konstanten InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Programmieren in C ganze Zahlen, Konstanten und Variablen 2 Lernziele Siekönnen
MehrVariablen und Konstanten (1) Allgemeines
Variablen und Konstanten (1) Allgemeines Name: Variablen und Konstanten werden über einen eindeutigen Namen identifiziert Ort: Variablen müssen gespeichert werden und haben somit einen Ort, der dem Programmierer
MehrC-Programmierkurs Mathematik
Mathematik WS 2018/2019 Dr. Bodo Kalthoff Speicher für Werte Variablen Über Variablennamen ansprechbar Sprechende Namen vergeben! Variablen können Zahlen, Buchstaben oder komplexere Werte enthalten Der
MehrBit Operationen. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Bit Operationen InE M. Thaler, tham@zhaw.ch Office TG28 http://www.zhaw.ch/~tham November 8 Um was geht es? Microcontroller z.b. Ansteuerung/Konfiguartion von I/O Registern oft notwendig: einzelne Bits
MehrKapitel 5. Datentypen und Operatoren
Kapitel 5 Datentypen und Operatoren 1 Gliederung Kapitel 5 Datentypen und Operatoren 5.1 Elementare Datentypen 5.2 Symbolische Konstanten 5.3 Typumwandlungen 5.4 Operatoren 2 5.1. Elementare Datentypen
MehrPointer und Arrays. INE1, Montag M. Thaler, Office TG208. ZHAW, M. Thaler, K. Rege, G.
Pointer und Arrays INE1, Montag M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Variable Speicherplatz Datenwert über Name ansprechbar hat Typ hat Adresse (Speicheradresse)
MehrAlgorithmen & Programmierung. Reelle Zahlen in C (2) Rechnen mit Gleitkommazahlen
Algorithmen & Programmierung Reelle Zahlen in C (2) Rechnen mit Gleitkommazahlen Norm für Gleitkommazahlen Die Darstellung von Gleitkommazahlen ist genormt (IEEE 754). Inhalte der Norm Es gibt zwei Grundformate
MehrInformatik I (D-MAVT)
Informatik I (D-MAVT) Übungsstunde 2 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Besprechung der Vorlesung Vorbesprechung Übung 2 Variablen + Scopes Zahlensysteme Bits&Bytes Datentypen
MehrÜbersicht. Peter Sobe 1
Übersicht Lehrinhalt: Programmierung in C Überblick über Programmiersprachen C: Eingebaute Datentypen, Zahlendarstellung, Variablen, Konstanten Operatoren und Ausdrücke Anweisungen Kontrollstrukturen Funktionen
MehrEinheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen
Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik
Mehr3/4/2009. Schalter: Ein vs. Aus Lochkarten: Loch vs. Kein Loch Boolean/Wahrheitswerte: true vs. false
Ablauf Informatik I (D-MAVT) Übungsstunde 2, 4.3.2009 simonmayer@student.ethz.ch ETH Zürich Besprechung/Vertiefung der Vorlesung [26.2.2009] Vorbesprechung Übung 2 Variablen + Scopes Zahlensysteme Bits&Bytes
MehrEinfache Ein-und Ausgabe
Einfache Ein-und Ausgabe InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Computersystem ein Gerät, das Information (Daten) einliest, verarbeitet, ausgibt EVA Schema:
MehrWiederholungen / Schleifen
Wiederholungen / Schleifen Repetitive Ausführung von Instruktionen InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Beispiel Quadratzahlen von 1000 bis 1009 berechnen
MehrStrings (Zeichenketten)
Strings (Zeichenketten) INE1, Montag M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Interaktion mit Computer oft textbasiert Fragen wie wird Text dargestellt? wie wird
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrJava für Anfänger Teil 5: Basistypen 2. Programmierkurs Manfred Jackel
Java für Anfänger Teil 5: Basistypen 2 Programmierkurs 12.-16.10.2008 Manfred Jackel Char, String, Unicode Der Zeichentyp char ist ein integraler Typ, nicht vorzeichenbehaftet, kann alle Unicode-Zeichen
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 4: Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen
MehrGrundlagen zu Datenobjekten und Operatoren
Grundlagen zu Datenobjekten und Operatoren Lernziele: Vertiefen der Kenntnisse über Datenobjekte und Operatoren. Aufgabe 1: Bezeichener/Namen und Werte/Konstanten Ergänzen Sie nachfolgende Tabelle: Bezeichner/Name
MehrEinstieg in die Informatik mit Java
Vorlesung vom 25.4.07, Ausdrücke Übersicht 1 Die wichtigsten arithmetischen Ausdrücke Arithmetische Operatoren Inkrement und Dekrementoperatoren Zuweisungsoperator Mathematische Standardfunktionen Vergleichsoperatoren
Mehr2D-Arrays. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
2D-Arrays InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Matrix 2-dimensionales Array Beispiel #include int main(void) { int i, j; int matrix[3][5]; // 3
MehrGrundlagen der Programmiersprache C für Studierende der Naturwissenschaften
Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Teil 2: Variablen, Datentypen und formatierte Ein-/Ausgabe Martin Nolte Abteilung für Angewandte Mathematik Universität Freiburg
MehrBereits behandelt: Einfache Datentypen, Felder, Zeiger, Referenzen. Kontrollstrukturen. Funktionen. Heute: Datentypen: Structs, Unions
Kompaktkurs C++ Themen D 1 Bereits behandelt: Einfache Datentypen, Felder, Zeiger, Referenzen Kontrollstrukturen Funktionen Heute: Datentypen: Structs, Unions Datentypen: typedef, sizeof, Typkonvertierung
MehrDatenstrukturen. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Datenstrukturen InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was gehtes? Rangliste Winti-Marathon benötigte Information pro Teilnehmer Variable Typ Daten Name String Vorname
MehrDatentypen Übersicht. C Datentypen und Operatoren. Deklaration. Übersicht. Um eine Variable zu nutzen, muss sie zunächst deklariert werden
Datentypen Übersicht C Datentypen und Operatoren 1 2 Übersicht Deklaration Deklaration und und Kommentare Basistypen Konstanten und Aufzähltypen Operatoren und Ausdrücke Typenumwandlung (type casting)
MehrWiederholung C-Programmierung
1.1. Gliederung Kapitel 1 Wiederholung C-Programmierung Entwicklungsumgebung Qt Creator Ein- und Ausgabe Kontrollstrukturen, Verzweigungen, Schleifen Funktionen, lokale und globale Variablen Felder und
MehrC- Kurs 03 Ausdrücke und Operatoren
C- Kurs 03 Ausdrücke und Operatoren Dipl.- Inf. Jörn Hoffmann jhoffmann@informadk.uni- leipzig.de Universität Leipzig InsDtut für InformaDk Technische InformaDk Ausdrücke Institut für Informatik Ausdrücke
MehrPhysische Datenstrukturen
Elementare Datentypen Strukturierte Datentypen Zeiger Seite 1 Einfache Datentypen Datentyp char Verwendung: ASCII-Zeichen Wertebereich: alle darstellbaren Zeichen, 8 bit lange Ganzzahlen im Intervall -128
MehrKapitel 05. Datentypen. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 05 Datentypen Inhalt des 5. Kapitels Datentypen 5.1 Einleitung 5.2 Eingebaute Datentypen Übersicht Die Datentypen char, float und double Standardwerte Operatoren Konversion / Type-Cast Datentyp
MehrOperatoren und Ausdrücke
Operatoren und Ausdrücke Zuweisungsoperator Arithmetische Operatoren Vergleichsoperatoren Logische Operatoren und Ausdrücke Implizite Typ-Umwandlung Rangordnung der Operatoren / Reihenfolge der Auswertung
MehrWertebereich und Genauigkeit der Zahlendarstellung
Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden
MehrDynamische Speicherverwaltung
Dynamische Speicherverwaltung INE2 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Bisjetzt Beispiel Ranglistenprogramm für Sportveranstaltungen Besser - genaue Anzahl Teilnehmer
MehrEinstieg in die Informatik mit Java
1 / 21 Einstieg in die Informatik mit Java Einfache Ausdrücke Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 21 1 Überblick 2 Arithmetische Operatoren 3 Inkrement und Dekrementoperatoren
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 5. Vorlesung 06.11.2018 1 Zahlendarstellungen 2 Speicherinhalte: Bits Hardware Spannung Ladung Magnetisierung Codierung 0V ungeladen unmagnetisiert 0 5V geladen magnetisiert
MehrDr. Monika Meiler. Inhalt
Inhalt 3 C-Ausdrücke...3-2 3.1 Arithmetische Ausdrücke...3-3 3.2 Wertzuweisungen...3-5 3.3 Inkrementieren und Dekrementieren...3-6 3.4 Logische Ausdrücke (Bedingungen)...3-7 3.5 Bedingte Ausdrücke...3-8
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrVerwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion. Programmieren in C
Übersicht Funktionen Verwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion Sinn von Funktionen Wiederverwendung häufig verwendeter nicht banaler Programmteile Wiederverwendung
MehrRückblick. Addition in der b-adischen Darstellung wie gewohnt. Informatik 1 / Kapitel 2: Grundlagen
Rückblick Addition in der b-adischen Darstellung wie gewohnt 5 0 C E + D 4 2 D = 44 Rückblick Multiplikation in der b-adischen Darstellung wie gewohnt 1 0 1 0 1 0 1 = 45 Rückblick Darstellung negativer
MehrProgrammieren in C / C++ Grundlagen C 2
Programmieren in C / C++ Grundlagen C 2 Hochschule Fulda FB AI Wintersemester 2016/17 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI Anweisung / Ausdruck 1 Programm setzt sich aus vielen Anweisungen
MehrAlgorithmen zur Datenanalyse in C++
Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in
MehrBereits behandelt: Einfache Datentypen, Felder, Zeiger, Referenzen. Kontrollstrukturen. Funktionen. Heute: Datentypen: Structs, Unions
Kompaktkurs C++ Themen D 1 Bereits behandelt: Einfache Datentypen, Felder, Zeiger, Referenzen Kontrollstrukturen Funktionen Heute: Datentypen: Structs, Unions Datentypen: typedef, sizeof, Typkonvertierung
MehrKapitel 6. Funktionen
Kapitel 6 Funktionen 1 Gliederung Kapitel 6 Funktionen 6.1 Einleitung 6.2 Übergabeparameter beim Funktionsaufruf 6.3 Aufbau einer Funktion 6.4 Einfache Beispiele 6.5 Beispiel: Taschenrechner 6.6 Standardfunktionen
Mehr3. Datentypen, Ausdrücke und Operatoren
3. Datentypen, Ausdrücke und Operatoren Programm muß i.a. Daten zwischenspeichern Speicherplatz muß bereitgestellt werden, der ansprechbar, reserviert ist Ablegen & Wiederfinden in höheren Programmiersprachen
MehrC++ Teil 4. Sven Groß. 30. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 16
C++ Teil 4 Sven Groß IGPM, RWTH Aachen 30. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 4 30. Apr 2015 1 / 16 Themen der letzten Vorlesung Funktionen: Definition und Aufruf Wert- und Referenzparameter,
MehrGleitkommazahlen. JOHANNES KEPLER UNIVERSITY LINZ Research and teaching network Softwareentwicklung 1 (gtec) Hanspeter Mössenböck, Herbert Prähofer 74
Gleitkommazahlen Research and teaching network Softwareentwicklung 1 (gtec) Hanspeter Mössenböck, Herbert Prähofer 74 Die Typen float und double Variablen float x, y; double z; // 32 Bit groß // 64 Bit
MehrRichtig Rechnen. // Program: fahrenheit.c // Convert temperatures from Celsius to Fahrenheit.
Fliesskommazahlen Richtig Rechnen // Program: fahrenheit.c // Convert temperatures from Celsius to Fahrenheit. #include int main() { // Input std::cout
Mehr4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen
. Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit
MehrOperatoren in C. Gastvorlesung Andreas Textor
Operatoren in C Gastvorlesung - 11.01.10 Andreas Textor andreas.textor@hs-rm.de Terminologie Operand 4 + 2 Operand Operator Unterscheidung nach Anzahl Operanden Unäre, Binäre und Ternäre Operatoren Z.B.:!x;
Mehr1. Fliesskommazahlen
1 1. Fliesskommazahlen Die Typen float und double; Fliesskommazahlensysteme; Löcher im Wertebereich; IEEE Standard; Grenzen der Fliesskommaarithmetik; Fliesskomma-Richtlinien; Harmonische Zahlen ,,Richtig
MehrÜbersicht über die C/C++ Bibliotheksfunktionen
Übersicht über die C/C++ Bibliotheksfunktionen Datei: c:\c_texte\c_lib.txt Datum: 7. März 2003 1. Übersicht über die Bibliotheken errno.h limits.h float.h stddef.h assert.h ctype.h locale.h math.h setjmp.h
MehrEinstieg in die Informatik mit Java
1 / 29 Einstieg in die Informatik mit Java Weitere Ausdrücke Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 29 1 Überblick 2 Kombinierte Zuweisungsoperatoren 3 Vergleichsoperatoren
Mehr4. Zahlendarstellungen
121 4. Zahlendarstellungen Wertebereich der Typen int, float und double Gemischte Ausdrücke und Konversionen; Löcher im Wertebereich; Fliesskommazahlensysteme; IEEE Standard; Grenzen der Fliesskommaarithmetik;
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C Marcel Arndt arndt@ins.uni-bonn.de Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include
MehrInformatik I: Abschnitt 7
Informatik I: Abschnitt 7 Inhalt: 7. Interne Informationsdarstellung 7.1 Ganzzahlige Datentypen 7.2 Gleitkomma-Datentypen Die Folien basieren zum Teil auf einen Foliensatz von R. Großmann und T. Wiedemann
MehrDie Zahl ist: (z 2, z 1, z 0 ) (z ) : 7 = 0 Rest z 2
Übungen zur Vorlesung Technische Informatik I, SS Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 4 Rechnerarithmetik Aufgabe : a) Bestimmen Sie die Darstellung der Zahl 3 zur Basis 7. 3 = 7 (Sehen Sie
Mehr2.5 Primitive Datentypen
2.5 Primitive Datentypen Wir unterscheiden 5 primitive Datentypen: ganze Zahlen -2, -1, -0, -1, -2,... reelle Zahlen 0.3, 0.3333..., π, 2.7 10 4 Zeichen a, b, c,... Zeichenreihen "Hello World", "TIFI",
MehrGrundlagen der Informatik 2. Typen
Grundlagen der Informatik 2. Typen Speicher, Speicherbedarf Ein-/Ausgabe Grundlagen der Informatik (Alex Rempel) 1 Wiederholung // root calculation #include #include using namespace
MehrProgrammieren in C Einführung
Programmieren in C Einführung Aufbau eines Programms Einfache Programme Datentypen und Vereinbarungen Das Entwicklungswerkzeug Seite Einfache Programme Kugeltank-Berechnung #include void main
Mehro feste Anzahl Vorkommastellen (z.b. 7) o feste Anzahl Nachkommastellen (z.b. 3) o Nachteil 1: o feste Anzahl signifikanter Stellen (10)
Richtig Rechnen Typen float und double; systeme, Löcher im Wertebereich, IEEE Standard, Fliesskomma-Richtlinien // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit. int main()
MehrEinstieg in die Informatik mit Java
Vorlesung vom 5.11.07, Weitere Ausdrücke Übersicht 1 Vergleichsoperatoren 2 Kombinierte Zuweisungsoperatoren 3 Logische Operatoren 4 Weitere Operatoren 5 Klassifizierung von Operatoren 6 Typumwandlungen
MehrAnwendung höherer Programmiersprachen. Formatierte Ausgabe mit cout. Angewandte Informatik I C / C++ Teil B: Formatierte Ein- und Ausgabe
Angewandte Informatik I Anwendung höherer Programmiersprachen C / C++ Vorlesung der FH Münster Prof. Dr.-Ing. H. Bösche // Programm b0301208 #include { int i = 1, j = 2; cout
MehrLösungshinweise zum Übungsblatt 6: Programmieren in C (WS 2018/19)
Dr. habil. Bernd Schürmann Dr. Annette Bieniusa pinc-support@cs.uni-kl.de TU Kaiserslautern Fachbereich Informatik Lösungshinweise zum Übungsblatt 6: Programmieren in C (WS 2018/19) 1. Zur Beantwortung
MehrWie genau kann der Differenzenquotient für Δx 0 berechnet werden?
Wie genau kann der Dierenzenquotient ür Δ berechnet werden? Beispiel: ()= 3 =. ( )=.3 DQ (,Δ),,8,6,4, DQ DQ ( ),,,5,,5 Δ ( + Δ) ( ), Δ = Δ Scheint au den ersten Blick ganz gut zu unktionieren Wie genau
MehrPropädeutikum. Dipl.-Inf. Frank Güttler M. Sc. Stephan Fischer
Propädeutikum 2016 Dipl.-Inf. Frank Güttler M. Sc. Stephan Fischer Vorbereitungskurs Informatikstudium Programmieren (C-Kurs) Erfolgreich Studieren Dipl.-Inf. Frank Güttler f.guettler@quapona.com / guettler@informatik.uni-leipzig.de
MehrKurzeinführung in C/C++ Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Einleitung
Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend
MehrKlausur. 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Anfang SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll
Mehr2. Datentypen und Deklarationen
2. Datentypen und Deklarationen Programm = Datenstrukturen+Kontrollstruktur Programme verarbeiten Daten. Daten werden in C durch Datenstrukturen aus verschiedenen Datentypen beschrieben. Es gibt (wie in
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die
MehrJava I Vorlesung Imperatives Programmieren
Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.
MehrWiederholung C-Programmierung
1.1. Gliederung Kapitel 1 Wiederholung C-Programmierung Entwicklungsumgebung Qt Creator Ein- und Ausgabe Kontrollstrukturen, Verzweigungen, Schleifen Funktionen, lokale und globale Variablen Felder und
Mehr5 Zahlenformate und deren Grenzen
1 5 Zahlenformate und deren Grenzen 5.1 Erinnerung B-adische Zahlendarstellung Stellenwertsystem: Jede Ziffer hat ihren Wert, und die Stelle der Ziffer in der Zahl modifiziert den Wert. 745 = 7 100 + 4
MehrObjekte werden eindeutig beschrieben durch ihren Typ und einen beliebig wählbaren Bezeichner.
Grundlegende Deklarationen Seite 1 von 6 Jedes Programm benötigt Objekte. Ein Objekt ist ein reservierter Bereich im Systemspeicher in welchem Informationen abgelegt werden. Informationen sind z.b. Zahlen,
Mehro feste Anzahl Vorkommastellen (z.b. 7) o feste Anzahl Nachkommastellen (z.b. 3) o Nachteil 1: o feste Anzahl signifikanter Stellen (10)
Richtig Rechnen Typen float und double; systeme, Löcher im Wertebereich, IEEE Standard, Fliesskomma-Richtlinien // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit. std::cout
MehrEinführung in die Programmierung Laborübung bei Korcan Y. Kirkici. 3.Übung bis
28.10.2013 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici 3.Übung 28.10. bis 1.11.2013 1 ÄNDERUNGEN: Sprechstunde: Wann? Wo? Montags, 19 20h IKMZ, 4.Etage Laborübung Korcan Kirkici 2
MehrEinführung in die Programmierung für Physiker. Die Programmiersprache C Datentypen, Operatoren, Ausdrücke
Einführung in die Programmierung für Physiker Die Programmiersprache C Datentypen, Operatoren, Ausdrücke Marc Wagner Institut für theoretische Physik Johann Wolfgang Goethe-Universität Frankfurt am Main
MehrEinführung in die Programmierung für Physiker. Die Programmiersprache C Datentypen, Operatoren, Ausdrücke
Einführung in die Programmierung für Physiker Die Programmiersprache C Datentypen, Operatoren, Ausdrücke Marc Wagner Institut für theoretische Physik Johann Wolfgang Goethe-Universität Frankfurt am Main
MehrEinführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin
Fakutltät IV Technische Universität Berlin 5. Mai 2014 Inhaltsverzeichnis 1 2 3 4 5 6 7 Überblick Beispielprogramm in Java Beispielprogramm in C 1 2 3 4 5 6 7 Beispielprogramm in Java Beispielprogramm
MehrZum Nachdenken. Wenn die Zahl (123) hat, was könnte dann (123,45) 10
TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Zum Nachdenken Wenn die Zahl (123) 10 den Wert 1. 10 2 +2. 10 1 +3. 10 0 hat, was könnte dann (123,45) 10 bedeuten? Wenn Sie beliebige reelle Zahlenwerte
MehrWertebereiche, Overflow und Underflow
Wertebereiche, Overflow und Underflow s exponent fraction 1 Bit 8 Bits 23 Bits Kleinste darstellbare nicht negative Zahl annähernd 2,0 * 10 38 Größte darstellbare Zahl annähernd 2,0 * 10 38 Was, wenn die
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,
MehrInstitut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke
Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie
MehrDr. Monika Meiler. Inhalt
Inhalt 2 C-Objekte... 2-2 2.1 Das Alphabet... 2-3 2.2 Variablen und Konstanten... 2-4 2.2.1 C-Variablen... 2-4 2.2.2 C-Standarddatentypen... 2-4 2.2.3 C-Konstanten... 2-6 2.2.4 C-Variablendeklaration...
MehrComputerarithmetik ( )
Anhang A Computerarithmetik ( ) A.1 Zahlendarstellung im Rechner und Computerarithmetik Prinzipiell ist die Menge der im Computer darstellbaren Zahlen endlich. Wie groß diese Menge ist, hängt von der Rechnerarchitektur
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 3 AM 13./14.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
Mehr3. Datentypen, Ausdrücke und Operatoren
3. Datentypen, Ausdrücke und Operatoren Programm muß i.a. Daten zwischenspeichern Speicherplatz muß bereitgestellt werden, der ansprechbar, reserviert ist Ablegen & Wiederfinden in höheren Programmiersprachen
MehrElementare Konzepte von
Elementare Konzepte von Programmiersprachen Teil 1: Bezeichner, Elementare Datentypen, Variablen, Referenzen, Zuweisungen, Ausdrücke Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Bezeichner
Mehr2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Ende SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll im
MehrZeichendarstellung. Zeichen sind Zahlen (in C) Zeichen und switch
darstellung Arbeiten mit darstellung werden im Computer durch (kleine) Zahlen dargestellt in C können im Datentyp char gespeichert werden, dieser umfasst ein Byte und gilt als Ganzzahltyp darstellung Arbeiten
MehrEinführung in die Programmierung
Einführung in die Programmierung by André Karge Übung - Operatoren, Methoden, Primitives 25. Oktober 2018 Einführung in die Programmierung WS18/19 André Karge 1/29 Notizen Standard Linux Befehle: http://images.linoxide.com/linux-cheat-sheet.pdf
MehrInhalt. 4.9 Typen, Variable und Konstante
Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Pointern
MehrRückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8
Rückblick Zahlendarstellung zu einer beliebigen Basis b (214) 5 = Umwandlung zwischen Zahlendarstellung (278) 10 =(?) 8 25 Rückblick Schnellere Umwandlung zwischen Binärdarstellung und Hexadezimaldarstellung
MehrVom Algorithmus zum Programm
Vom Algorithmus zum Programm Lernziele: Vertiefen der Kenntnisse über den Entwurf von Algorithmen und deren Übertragung in ein C- Programm Aufgabe 1: Pythagoreisches Tripel a) Entwickeln Sie einen Algorithmus,
Mehr