Programmieren 1 C Überblick
|
|
- Susanne Dressler
- vor 5 Jahren
- Abrufe
Transkript
1 Programmieren C Überblick. Einleitung 2. Graphische Darstellung von Algorithmen 3. Syntax und Semantik 4. Einstieg in C: Einfache Sprachkonstrukte und allgemeiner Programmaufbau 5. Skalare Standarddatentypen 6. Kontrollfluss 7. en und Ausdrücke 8. Felder und Zeiger 9. Speicherklassen. Strukturen und Unionen. Unterprogramm-Techniken (Funktionen) 2. Rekursion 3. Dateien und Dateiverarbeitung Prof. Dr. Björn Dreher Programmieren C 252 Programmieren C Prof. Dr. Björn Dreher Programmieren C 253
2 en sind die Verben von C Operanden die Subjekte und Objekte der Verben Ein Ausdruck besteht aus einem oder mehreren Operanden und keinem, einem oder mehreren en. Wir unterscheiden... Konstanten-Ausdrücke *3 /3. 'a' Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Ganzzahlige Ausdrücke j, k seien Integers j j * k j / k + 3 k 'a' 3 + (int) 5. Gleitkomma-Ausdrücke x, y seien float oder double x x + 3 x / y * (float) 4 Prof. Dr. Björn Dreher Programmieren C 255
3 Zeiger-Ausdrücke p sei ein Pointer, j ein Integer p &j p + "abc" (char *) xfffff Bedeutung der Zeiger-Arithmetik folgt im nächsten Hauptkapitel Es gibt noch weitere Ausdrucks-Typen z.b. Logische Ausdrücke Prof. Dr. Björn Dreher Programmieren C 256 Programmieren C Prof. Dr. Björn Dreher Programmieren C 257
4 Vorrang = precedence, Assoziativität = associativity en mit höherem Vorrang binden die durch sie verbundenen Operanden stärker. Z.B. Punkt- vor Strichrechnung. Will man das anders haben, muss man Klammern setzen Haben en den gleichen Vorrang, so hängt ihre Abarbeitung von der Assoziativität ab: Von links nach rechts: a + b c; /* Addiere a zu b, subtrahiere davon c */ Von rechts nach links: a = b = c; /* Weise c der Variablen b zu, dann b der Variablen a */ In welcher Reihenfolge aber die Operanden eines s berechnet (ausgewertet) werden, ist nicht definiert: x = f() + g(); Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke primäre unäre C-en mit Vorrang und Assoziativität additiv shift en-klasse multiplikativ en ( ) [ ] ->. cast sizeof & (Adresse) * (Dereferenzg.) - + ~ ! * / % + - << >> Assoziativität rechts-nach-links Vorrang am höchsten relational < <= > >= Gleichheit ==!= bit-weises AND & bit-weises exklusives OR ^ bit-weises inklusives OR logisches AND && logisches OR konditional? : rechts-nach-links Zuweisung = += -= *= /= %= >>= <<= rechts-nach-links &= ^= Komma, am niedrigsten Prof. Dr. Björn Dreher Programmieren C 259
5 Programmieren C Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Überblick unäres Minus - -x Negation von x unäres Plus + +x Wert von x Prof. Dr. Björn Dreher Programmieren C 26
6 Programmieren C Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Überblick Multiplikation * x * y x mal y Division / x / y x dividiert durch y Modulo (Rest) % x % y x modulo y Addition + x + y x plus y Subtraktion - x y x minus y Prof. Dr. Björn Dreher Programmieren C 263
7 Vorsicht bei Integer-Division und Modulo-, wenn einer der Operanden negativ ist: Beide Operanden positiv: 5/2 ergibt 2 /3 ergibt Ein Operand negativ: Ergebnis implementierungsabhängig: -5/2 ergibt 2 oder 3 /-3 ergibt oder -5 % 2 ergibt oder 7 % -4 ergibt 3 oder 3 Als Ausweg gibt es die Funktion div() mit definiertem Verhalten Prof. Dr. Björn Dreher Programmieren C 264 Programmieren C Prof. Dr. Björn Dreher Programmieren C 265
8 Überblick Varianten eines Zuweisungsoperators in C Zuweisung = a = b weise a den Wert von b zu Addition und Zuweisung += a += b weise a den Wert von a+b zu Subtraktion und Zuweisung -= a -= b weise a den Wert von a-b zu Multiplikation und Zuweisung *= a *= b weise a den Wert von a*b zu Division und Zuweisung /= a /= b weise a den Wert von a/b zu Modulo und Zuweisung %= a %= b weise a den Wert von a%b zu Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Zuweisungen können mehrfach vorkommen: a = b = c = d = ; Vorsicht: entspricht (a = (b = (c = (d = )))); j = j * 3 + 4; j *= 3 + 4; geben verschiedene Resultate! Bindung der arithmetischen Wertzuweisungsoperatoren ist sehr gering. Der zweiten Zeile entspricht: j = j * (3 + 4); Prof. Dr. Björn Dreher Programmieren C 267
9 Programmieren C Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Überblick Postfix Inkrement ++ a++ liefere Wert von a, dann inkrementiere a Postfix Dekrement -- a-- liefere Wert von a, dann dekrementiere a Präfix Inkrement ++ ++a inkrementiere a, dann liefere Wert von a Präfix Dekrement -- --a dekrementiere a, dann liefere Wert von a Unterschiede zwischen den Post- und Präfix-Versionen sind fein, können aber je nach Kontext entscheidend unterschiedliche Ergebnisse liefern! Prof. Dr. Björn Dreher Programmieren C 269
10 Äußerste Vorsicht vor Seiteneffekten: x = j * j++; In C ist es nicht definiert, welcher der beiden Operanden zuerst ausgewertet wird. Man sollte also solche Konstruktionen unbedingt vermeiden! Ähnlich schlechtes Beispiel bei Aufruf einer Funktion: f (a, a++); Verwendet man nur den Seiteneffekt, möchte aber den Wert nicht zuweisen, so sind beide Konstruktionen gleichwertig: i++; ist gleichwertig zu ++i; Prof. Dr. Björn Dreher Programmieren C 27 Programmieren C Prof. Dr. Björn Dreher Programmieren C 27
11 Überblick Komma, a, b werte a aus, werte b aus, Resultat ist b Mit Hilfe des Komma-s können mehrere Ausdrücke an Stellen vorkommen, wo eigentlich nur ein Ausdruck vorgesehen ist. for (j=, k=; k-j > ; j++, k--)... Vorsicht: Lesbarkeit muss erhalten bleiben. Gerade die for-schleife verführt in Verbindung mit dem Komma- zu sehr komplexen Konstruktionen! Prof. Dr. Björn Dreher Programmieren C 272 Programmieren C Prof. Dr. Björn Dreher Programmieren C 273
12 Überblick größer > a > b wenn a größer als b ist, sonst kleiner < a < b wenn a kleiner als b ist, sonst größer oder gleich >= a >= b wenn a größer oder gleich b ist, sonst kleiner oder gleich <= a <= b wenn a kleiner oder gleich b ist, sonst gleich == a == b wenn a gleich b ist, sonst ungleich!= a!= b wenn a ungleich b ist, sonst Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Alle relationalen en haben niedrigeren Vorrang als die arithmetischen en: entspricht a + b + c < d / f (a + b + c) < (d / f) == und!= haben nochmals einen geringeren Vorrang Prof. Dr. Björn Dreher Programmieren C 275
13 Programmieren C Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Überblick logisches UND && a && b falls a und b ungleich Null, sonst logisches ODER a b falls a oder b ungleich Null, sonst logische Negation!! a falls a gleich Null, sonst Wahrheitstafel (p und q vom Datentyp int) p q! p! q p && q p q Prof. Dr. Björn Dreher Programmieren C 277
14 Mathematische ulierung: Liegt y zwischen x und z? x < y < z Hätte in C so ein völlig anderes (falsches) Ergebnis. Stattdessen muss man relationale und logische en kombinieren: (x < y) && (y < z) Operanden von logischen en können Integers und Gleitkommazahlen(!) sein. && -5 hat als Resultat. Dasselbe gilt für den (unsinnigen) Ausdruck.5 && Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Für logische en ist die Reihenfolge der Auswertung der Operanden definiert: Von links nach rechts Falls die Auswertung eines weiter rechts stehenden Operanden nicht mehr nötig ist, geschieht dies auch nicht. Damit kann der folgende Ausdruck sicher definiert werden: if ((a!= ) && (b/a >= 6.))... Vorsicht bei Ausdrücken mit Seiteneffekten: if ((a < b) && (c==d++))... Hier ist nicht sicher, ob d++ wirklich ausgeführt wird! Prof. Dr. Björn Dreher Programmieren C 279
15 Programmieren C Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Überblick right shift >> x >> y x um y Bits nach rechts schieben left shift << x << y x um y Bits nach links schieben bit-weises UND & x & y x mit y bit-weise und-verknüpft bit-weises ODER x y x mit y bit-weise oder-verknüpft bit-weises exklusives ODER (XOR) ^ x ^ y x mit y bit-weise exklusiv-oderverknüpft bit-weises Komplement ~ ~x bit-weises (Einer-) Komplement von x Prof. Dr. Björn Dreher Programmieren C 28
16 Shift en Beide Operanden müssen ganzzahlig sein. Zunächst geschieht automatische integer promotion für beide Operanden. Dann wird der rechte Operand zu einem int konvertiert. Resultattyp ist der Typ des linken Operanden nach der integer promotion. Links-Shift ist äquivalent zu einer Multiplikation mit einer Zweierpotenz: x << y ist äquivalent zu x * 2 y Rechts-Shift von nicht-negativen Integers ist äquivalent zu einer Division durch eine Zweierpotenz: x >> y ist äquivalent zu x / 2 y Prof. Dr. Björn Dreher Programmieren C en und Ausdrücke Shift en In beiden Fällen von Shifts werden bei positiven x die freiwerdenden Bitpositionen mit Nullen aufgefüllt, beim Right-Shift von negativen Zahlen: Implementierungsabhängig Die freiwerdenden Bitpositionen können mit Nullen (logical shift) oder Einsen (arithmetic shift, dann bleibt die negative Zahl erhalten) aufgefüllt werden. Nach ANSI muss für unsigned integers immer ein logical shift durchgeführt werden. Prof. Dr. Björn Dreher Programmieren C 283
17 Überblick right shift Zuweisung >>= a >>= b weise a>>b an a zu left shift Zuweisung <<= a <<= b weise a<<b an a zu bit-weises UND Zuweisung &= a &= b weise a&b an a zu bit-weises ODER Zuweisung = a = b weise a b an a zu bit-weises exklusives ODER (XOR) Zuweisung ^= a ^= b weise a^b an a zu Prof. Dr. Björn Dreher Programmieren C 284 Programmieren C Prof. Dr. Björn Dreher Programmieren C 285
18 en Überblick type cast (type) (type) e Konvertiere e zu type Beispiel: (float) 3 / 2 Der cast- hat einen sehr hohen Vorrang. Obiger Ausdruck entspricht: ( (float) 3 ) / 2 Hauptsächliche Anwendung von casts bei Pointern (s. später) Prof. Dr. Björn Dreher Programmieren C 286 Programmieren C Prof. Dr. Björn Dreher Programmieren C 287
19 Überblick sizeof sizeof sizeof (t) oder sizeof x Gibt als Ergebnis die Größe in Bytes des Datentyps t oder des Ausdrucks x Zwei Typen von Operanden: Ausdruck Dieser wird dabei nicht berechnet, d.h. es gibt keine Seiteneffekte; Klammer ist optional oder Datentyp Muss in Klammern stehen Der Ergebnisdatentyp ist laut ANSI immer unsigned (int oder long). Prof. Dr. Björn Dreher Programmieren C 288 Programmieren C Prof. Dr. Björn Dreher Programmieren C 289
20 Überblick bedingter Ausdruck? : a? b : c falls a ungleich Null (also TRUE), so ist b das Resultat, sonst c Ein mit drei Operanden (ternärer )! Anstelle: if (x < y) z = x; else z = y; kann man nicht unbedingt leserlicher schreiben z = ((x < y)? x : y); Sollte eher vermieden werden! Prof. Dr. Björn Dreher Programmieren C 29 Programmieren C Prof. Dr. Björn Dreher Programmieren C 29
21 Überblick Adresse von & &x Adresse von x Dereferenzierung * *a Wert des Objektes gespeichert an der Adresse in a Array-Elemente [ ] x[5] Wert des Array-Elementes 5 Punkt (dot). x.y Wert der Komponente (member) y der Struktur x Pfeil nach rechts -> p->y Wert der Komponente (member) y der Struktur, auf die p zeigt Genaueres sehen wir später! Prof. Dr. Björn Dreher Programmieren C 292
C- 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
Mehr3. Operatoren und Ausdrücke
3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)
Mehr3. Operatoren und Ausdrücke
3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)
MehrC-Programmierung: Ausdrücke und Operatoren#Division.2F
C-Programmierung: Ausdrücke und Operatoren#Division.2F http://de.wikibooks.org/wiki/c-programmierung:_ausdrücke_und_operatoren#division_.2f This Book Is Generated By Wb2PDF using RenderX XEP, XML to PDF
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
Mehr3. Operatoren und Ausdrücke
3. Operatoren und Ausdrücke Ausdruck (expression): Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (Boole'sche)
MehrAlgorithmen & Programmierung. Ausdrücke & Operatoren (1)
Algorithmen & Programmierung Ausdrücke & Operatoren (1) Ausdrücke Was ist ein Ausdruck? Literal Variable Funktionsaufruf Ausdruck, der durch Anwendung eines einstelligen (unären) Operators auf einen Ausdruck
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
MehrAusdrücke (1) Grundlegende Eigenschaften
Ausdrücke () Grundlegende Eigenschaften bestehen aus Literalen, Konstanten, Variablen und Operatoren einfachster Ausdruck ist das Semikolon, es bewirkt nichts. Ausdrücke werden mit einem Semikolon abgeschlossen.
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
MehrGrundlagen der Informatik 2. Operatoren
2. Operatoren Referenzen Typumwandlungen Vorrangregeln Kommentare Grundlagen der Informatik (Alex Rempel) 1 Ausdruck (z.b. "x = 34 + y;") Folge von Operatoren und Operanden Operatoren Arithmetische Operatoren
MehrOperatoren in C/C++ und Java:
Operatoren in C/C++ und Java: C/C++/Java hat eine riesige Anzahl von Operatoren (im Vergleich zu anderen Programmiersprachen). Außer den üblichen arithmetischen Operatoren +, -, *, / (und % für Ganzzahlen)
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
MehrGanze Zahlen. Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren
Ganze Zahlen Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren Celsius to Fahrenheit // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit.
MehrSprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg
Sprachkonstrukte Einführung in Java Folie 1 von 20 12. Mai 2011 Ivo Kronenberg Inhalt Kommentare Identifier (Bezeichner) Variablen Numerische Ausdrücke und Typen Kontrollstrukturen Verzweigungen Bedingungen
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der
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;
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Was sind Operatoren Ein Operator ist eine in die Programmiersprache eingebaute Funktion, die
MehrGrundlagen der Programmiersprache C für Studierende der Naturwissenschaften
Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Teil 6: Ausdrücke und Typumwandlung Martin Nolte Abteilung für Angewandte Mathematik Universität Freiburg i. Br. Vorlesung vom
Mehr5.3 Auswertung von Ausdrücken
5.3 Auswertung von Ausdrücken Funktionen in Java bekommen Parameter/Argumente als Input, und liefern als Output den Wert eines vorbestimmten Typs. Zum Beispiel könnte man eine Funktion i n t min ( i n
MehrVorlesung 6: Operatoren, Logische Ausdrücke
Vorlesung 6: Operatoren, Logische Ausdrücke Inhalt Organisatorisches Offene Übungen Operatoren Logische Ausdrücke Dr. J. Raimann 1 Offene Übungen (durch Tutoren betreut) montags 1. und 2. Block (8.15 Uhr
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
MehrJAVA-Datentypen und deren Wertebereich
Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).
MehrPIC16 Programmierung in HITECH-C
PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden
MehrVorkurs Informatik WiSe 17/18
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 4. November 2015 Administratives Zur Abgabe von Übungsaufgaben Nein, wir
MehrDie Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein
Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache Dr. Beatrice Amrhein Überblick Speicherverwaltung: Stack und Heap Ein- und Ausgabe über die Console Variablen und Operatoren Parameter
Mehr4.2 Programmiersprache C
4.2.1. Elementare Datentypen (signed) int, unsigned int, (signed) short (int), unsigned short (int), (signed) long (int), unsigned long (int) Elementare Datentypen für ganze Zahlen mit oder ohne Vorzeichen.
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen } } Beispiele für Anweisungen Wiederholung Ausgabe
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp ZAIK Universität zu Köln WS 07/08 1 / 6 Datentypen Arten von Datentypen
MehrGanze Zahlen. Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren
Ganze Zahlen Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren Celsius to Fahrenheit // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit.
MehrJava ist statisch typisiert, d.h., Variablen, Ergebnisse von Ausdrücken, etc. haben einen Datentyp, der schon bei der Kompilierung festgelegt wird.
5 Mehr Java Java ist statisch typisiert, d.h., Variablen, Ergebnisse von Ausdrücken, etc. haben einen Datentyp, der schon bei der Kompilierung festgelegt wird. Java unterscheidet zwei Arten von Typen:
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
MehrVariablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15
Variablen CoMa-Übung VIII TU Berlin 4.12.2013 CoMa-Übung VIII (TU Berlin) Variablen 4.12.2013 1 / 15 Themen der Übung 1 Typanpassungen 2 Operatoren 3 Variablen-Gültigkeit CoMa-Übung VIII (TU Berlin) Variablen
MehrProgrammieren I. Operatoren und Ausdrücke Heusch 6.2 Ratz Institut für Angewandte Informatik
Programmieren I Operatoren und Ausdrücke Heusch 6.2 Ratz 4.4.2 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Ausdrücke, Arten von Operatoren Ein Ausdruck ist eine Folge von Operatoren
MehrEinführung Programmierpraktikum C Michael Zwick
Einführung Programmierpraktikum C Michael Zwick Vorlesung, Übung & Fragestunde Dr.-Ing. Michael Zwick Raum Z945 zwick@tum.de (089) 289 23609 Tutorium Ab Dienstag: Auswahl Tutoriumsplatz auf www.ldv.ei.tum.de/lehre/computertechnik
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
Mehr8. Ausdrücke, Operatoren (einfache Typen)
8. Ausdrücke, Operatoren (einfache Typen) Typumwandlung Cast-Operator Teil 2 Java-Beispiel: Unicode.java Version: 16. Nov. 2015 Unterschiedliche Typen Typumwandlung: Übersicht Zuweisung x = y; Ausdruck
MehrHello World! Eine Einführung in das Programmieren Variablen
Hello World! Eine Einführung in das Programmieren Variablen Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Wie werden Daten in Programmen gespeichert und manipuliert?
MehrOperatoren (1) Operatoren (2)
Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.
MehrSchwerpunkte. 8. Ausdrücke, Operatoren (einfache Typen) Beispiel: Schaltjahr Test. Einführendes Beispiel: Grundprobleme
Schwerpunkte Vollständige und unvollständige Auswertung 8. Ausdrücke, Operatoren (einfache Typen) Teil 1 Seiteneffekte Overloading: Überladung von Operatoren Implizite und explizite (cast) Typumwandlung
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
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.
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
Mehr8. Ausdrücke, Operatoren (einfache Typen)
8. Ausdrücke, Operatoren (einfache Typen) Teil 2 Java-Beispiel: Unicode.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 16. Nov. 2015 2 Typumwandlung Cast-Operator 3 Unterschiedliche
MehrDie Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein
Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache Dr. Beatrice Amrhein Überblick Speicherverwaltung: Stack und Heap Ein- und Ausgabe über die Console Variablen und Operatoren Parameter
MehrProjekt 3 Variablen und Operatoren
Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.
Mehr3. Ganze Zahlen int unsigned int
110 3. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int Celsius to Fahrenheit // Program: fahrenheit.cpp
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
MehrJava Einführung Operatoren Kapitel 2 und 3
Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig
Mehr2. Ganze Zahlen int unsigned int
88 2. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int Celsius to Fahrenheit // Program: fahrenheit.cpp
MehrVorkurs Informatik WiSe 16/17
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016
MehrAlgorithmen und ihre Programmierung
Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines
MehrProgrammieren 1 C Überblick
Programmieren 1 C Überblick 1. Einleitung 2. Graphische Darstellung von Algorithmen 3. Syntax und Semantik 4. Einstieg in C: Einfache Sprachkonstrukte und allgemeiner Programmaufbau 5. Skalare Standarddatentypen
Mehr2 LOGISCHE AUSDRÜCKE, BITOPERATIONEN
2 LOGISCHE AUSDRÜCKE, BITOPERATIONEN Leitideen: In C++ gibt es im Unterschied zu C einen logischen Datentyp (bool). In C gilt ein Ausdruck mit Wert 0 als wahr und mit Wert 0 als falsch. Dieses Verhalten
Mehrfloat: Fließkommazahl nach IEEE 754 Standard mit 32 bit
Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen
MehrAusdrücke der Programmiersprache Java
Ausdrücke der Programmiersprache Java Hamburg 1 Ablauf des Vortrags 01. Eigenschaften von Ausdrücken 02. Arithmetische Operatoren 03. Relationale Operatoren 04. Logische Operatoren 05. Bitweise Operatoren
MehrKapitel 4: Elementare Konzepte von Programmiersprachen. Variablen Referenzen Zuweisungen
Variablen Referenzen Zuweisungen Variablen Variablen dienen der Speicherung von Werten Name (name) bezeichnet die Variable im Programm Wert (value) ist das Datenelement, dass in der Variablen gespeichert
Mehr2. Ganze Zahlen int unsigned int
99 2. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int Celsius to Fahrenheit // Program: fahrenheit.cpp
Mehr2. Ganze Zahlen. 9 * celsius / Celsius to Fahrenheit. (9 * celsius / 5) + 32
Celsius to Fahrenheit // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit. #include 2. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz,
MehrOperatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen
Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2011/2012 1 / 25 Operatoren für elementare Datentypen Bedingte Schleifen 2 / 25 Zuweisungsoperator Die Zuweisung von Werten an Variablen
Mehr2. Ganze Zahlen. Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int
74 2. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int Celsius to Fahrenheit 75 // Program: fahrenheit.cpp
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 - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue
Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem
Mehr2. Ganze Zahlen. Beispiel: power8.cpp. Terminologie: L-Werte und R-Werte. Terminologie: L-Werte und R-Werte
90 Beispiel: power8.cpp 91 2. Ganze Zahlen int a; // Input int r; // Result std::cout > a; Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische
MehrRechnungen, wo kein sinnvoller Wert rauskommt Bsp.: 1/0, *0, sqrt(-1.0) Beispiel: Quadratische Gleichungen
Float-Arithmetik Implementiert IEEE 754-1985 Standard Überlauf ("overflow"): Zahl wird zu groß / zu klein Beispiel: max.float * 2 Resultat = + bzw. - Underflow: Zahlen liegen zu dicht an der 0 Resultat
MehrPrimitive Datentypen und Felder (Arrays)
Primitive Datentypen und Felder (rrays) Primitive Datentypen Java stellt (genau wie Haskell) primitive Datentypen für Boolesche Werte, Zeichen, ganze Zahlen und Gleitkommazahlen zur Verfügung. Der wichtigste
Mehr1. Ganze Zahlen. 9 * celsius / Celsius to Fahrenheit. (9 * celsius / 5) + 32
1. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int 1 Celsius to Fahrenheit // Program: fahrenheit.cpp
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;
Mehr3. Ganze Zahlen. 9 * celsius / Celsius to Fahrenheit. (9 * celsius / 5) + 32
3. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int 110 Celsius to Fahrenheit // Program: fahrenheit.cpp
MehrNino Simunic M.A. Computerlinguistik, Campus DU
Vorlesung 3. Sitzung Grundlegende Programmiertechniken Wintersemester 2007/2008 Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Grundlegende Programmiertechniken, WS 2007/2008 Ausdrücke, Operatoren
MehrKapitel 3: Variablen
Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber
MehrGrundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke
Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke 1 Links Stellenwertsysteme mit Links zu Zahlensysteme: http://de.wikipedia.org/wiki/stellenwertsystem ASCII-Code: http://de.wikipedia.org/wiki/ascii
MehrProblem: Keine Integers in JavaCard. ToDo: Rechnen mit Bytes und Shorts
Kapitel 6: Arithmetik in JavaCard Problem: Keine Integers in JavaCard ToDo: Rechnen mit Bytes und Shorts Java SmartCards, Kap. 6 (1/20) Hex-Notation 1 Byte = 8 Bit, b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 0101
MehrOperatoren und Ausdrücke
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 11 Motivation Es gibt eine Reihe
Mehr2.1 Fundamentale Typen
2. Elementare Typen 2.1 Fundamentale Typen C++ stellt die wichtigsten Datentypen mit passender Form der Abspeicherung und zugehörigen Rechenoperationen zur Verfügung : Boolscher Datentyp (bool) für logische
MehrRepetitorium Programmieren I + II
Repetitorium Programmieren I + II Stephan Gimbel Johanna Mensik Michael Roth 6. März 2012 Agenda 1 Operatoren 2 Datentypen Gleitpunkt Zahl Typkonvertierung 3 Strommanipulatoren 4 Bedingungen if-else switch-case
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 9: Prof. Dr. Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen 3. Variable und Datentypen in C 4. Bildschirm Ein-/Ausgabe
MehrGliederung Programmiersprachen. Programmiersprachen Einführung in C. Ausdrücke in Programmiersprachen ~ Aufbau mathematischer Formeln
Programmiersprachen Einführung in C Teil 9: Prof. Dr. Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen 3. Variable und Datentypen in C 4. Bildschirm Ein-/Ausgabe
Mehr1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:
MehrSoftwareentwicklung Ausdrücke und Typkonversionen
Mag. iur. Dr. techn. Michael Sonntag Softwareentwicklung Ausdrücke und Typkonversionen E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institut für Informationsverarbeitung
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
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
Mehr1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.
Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrProgrammiertechnik Operatoren, Kommentare, Ein-/Ausgabe
Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Operatoren? Ein Operator ist eine in die Programmiersprache eingebaute Funktion,
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 1 - Variablen und Kontrollstrukturen main Methode Startpunkt jeder Java Anwendung String[] args ist ein Array aus Parametern, die beim Aufruf über die Kommandozeile
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
Mehr5.3 Auswertung von Ausdrücken
5.3 Auswertung von Ausdrücken Funktionen in Java bekommen Parameter/Argumente als Input, und liefern als Output den Wert eines vorbestimmten Typs. Zum Beispiel könnte man eine Funktion int min(int a, int
Mehr