4. Operatoren, Ausdrücke und einfache Anweisungen

Größe: px
Ab Seite anzeigen:

Download "4. Operatoren, Ausdrücke und einfache Anweisungen"

Transkript

1 4. Operatoren, Ausdrücke und einfache Anweisungen Ein Programm besteht aus einer Folge von Anweisungen, die festlegen, welche Aktionen der Rechner auszuführen hat. Einfache Anweisungen sind entsprechen im Wesentlichen den Aufbau eines Maschinenbefehls: Grobe Einteilung: 1. Den nächsten Maschinenbefehl aus dem Arbeitsspeicher holen. 2. Die im Maschinenbefehl zu verarbeitenden Operanden WOMIT aus dem Arbeitsspeicher holen und im Rechenwerk bereitstellen. 3. Das Rechenwerk zur Ausführung der Operation WAS starten. 4. Das Ergebnis der Operation in den Arbeitsspeicher WOHIN schreiben. Durch die Einführung von Variablen und der Folge von Anweisungen kommt man im Programm selber ohne die umständlichen Maschinenbefehle aus. 1

2 Eine einfache Anweisung mit den Variablen a, b, c der Form a = b + c entspräche dann folgender Abfolge: 1. Hole den Drei-Adress-Befehl Addiere b und c und lege Ergebnis in a ab 2. Hole den Inhalt von b ins Rechenwerk 3. Hole den Operator + (den der Drei-Adress-Befehl angibt) 4. Hole den Inhalt von c und verknüpfe ihn gemäß des bereitgestellten Operators mit dem Inhalt im Rechenwerk (also den von b) 5. Lege das Ergebnis unter a ab. Einfache Anweisungen mit arithmetischen Operatoren Die Grundrechenarten +, -, *, / und die Modulus-Operation % (Rest bei Integerdivision) sind sog. binäre Operationen, d. h. sie verknüpfen zwei Operanden mittels besagter Grundrechenoperation. Grundsätzlich gilt: die Zu- bzw. Anweisung wird über das Gleichheitszeichen realisiert. Es hat die Funktion weise etwas zu. Links vom Gleichheitszeichen steht die Variable, der etwas zugewiesen wird, rechts die Operation in Form eines Ausdrucks, deren Ergebnis der Variablen zugewiesen wird. Der Aufbau ist also folgender: Variable = einfacher Ausdruck. Ein einfacher Ausdruck ist entweder eine Konstante oder Variable oder besteht aus der der Reihenfolge Variable2/Konstante2 Operator Variable3/Konstante3. Links vom Gleichheitszeichen darf nur eine Variable stehen, NIE eine Anweisung! Eine Zuweisung (die wir schon von der Initialisierung der Variablen her kennen) ist ein Spezialfall einer einfachen Anweisung und hat das Aussehen: Variable1 = Konstante oder Variable1 = Variable2. Der einfache Ausdruck (also der Teil rechts vom Gleichheitszeichen) besteht also nur aus einer Konstanten oder einer Variablen. Dabei sollten Variable1, 2 und die Konstante denselben Datentyp haben. Es gibt zwar Abweichungen, doch sicherer (und fehlerunabhängiger) ist die Zusicherung der Variablenzuweisungen gleichen Typs. Der zweite Fall einer Zuweisung durch Inhalt einer 2

3 Variablen ist auch (bei gleichem Typ) immer möglich, doch hat der Programmierer sicherzustellen, daß Variable2 bereits über einen definierten Wert verfügt. Eine einfache Anweisung, die keine Zuweisung ist, hat das Aussehen: Variable1 = Variable2 Operator Variable3 Anstelle der Variablen 1 und 2 können auch Konstanten treten. Auch hier gilt zunächst zu beachten, daß alle beteiligten Variablen/Konstanten vom selben Datentyp sind. Variable 2 muß nicht unbedingt von Variable 3 verschieden sein die Anweisung kreisinhalt = 3.14 * radius * radius macht durchaus Sinn - es muß nicht einmal die Variable1 sich von den anderen beiden unterscheiden: die Anweisung i = i + 1 erfüllt in C den Zweck, daß der alte Inhalt von i um 1 erhöht und dann wieder i zugewiesen wird. Anmerkung: Die Operation i = i + 1; kommt insbesondere bei Schleifendurchläufen zur Erhöhung der Indexzahl sehr häufig vor. Es hat sich dafür eine Abkürzung eingebürgert: i++; Zusammengesetzte Anweisungen Eine zusammengesetzte Anweisung ist im Prinzip eine Kombination mehrerer einfacher Ausdrücke mittels (arithmetischer) Operatoren. Sie hat im Prinzip das Aussehen Variable = zusammengesetzter Ausdruck. Dabei gilt: zusammengesetzter Ausdruck = einfacher Ausdruck oder zusammengesetzter Ausdruck = zusammengesetzter Ausdruck Operator einfacher Ausdruck. Im Klartext: Man kann auf der rechten Seite des Gleichheitszeichens beliebig komplexe Ausdrücke verwenden. Wieder gilt: links vom Gleichheitszeichen darf nur der Variablenname stehen! 3

4 Operatoren in C sind: () Klammerung * Multiplikation / Division + Addition - Subtraktion Die Reihenfolge entspricht auch der Priorität der Abarbeitung. Es gilt Punkt- vor Strichrechnung und die üblichen Klammerregeln. Bei Rechenoperationen gleicher Priorität wird von links nach rechts abgearbeitet, doch sollte man sich nicht unbedingt darauf verlassen und die Eindeutigkeit durch geeignete Klammerung sicherstellen. Einige Beispiele mögen erhellend(?) wirken. /* Beisiele einfacher Anweisungen */ #include <stdio.h> void main() { float a = 2.0; float b = 30.0; float h = 10.0; float erg; /* Ergebnis */ } /* erste Anweisung: Punkt vor Strichrechnung */ erg = a + b / * h + 5; printf("\n%g + %g / * %g + 5 = %g\n", a, b, h, erg); /* zweite Anweisung: Klammerung */ erg = ((a + b) / ) * (h + 5); printf("\n((%g + %g) / 2-2.5) * (%g + 5) = %g\n", a,b,h,erg); getchar(); Das Ergebnis erg der ersten Anweisung ist korrekt -3: / 2 2,5 * = = -3. Man sieht deutlich die Ausführung der Operationen: Punkt- vor Strichrechnung, d. h. Multiplikation und Division als Rechenoperationen höherer Priorität werden zuerst ausgeführt. Das Ergebnis erg der zweiten Anweisung ist 202,5: zunächst werden die Klammern ausgewertet, da diese oberste Priorität besitzen. Es ist (a+b)/2 = 16, 4

5 (16-2,5) = 13,5 (h+5) = 15; 13,5*15 = 202,5. Der Vollständigkeit wegen sei noch der letzte Operator % vorgestellt, der sogenannten Restdivision. Man versteht darunter den Rest, der bei ganzzahliger Division zweier ganzer Zahlen verbleibt. Beispielsweise ist bei Division der Zahl 10 durch 4 bekanntlich neben dem ganzzahligen Quotienten 2 der Rest 2 (anstatt das gebrochen rationale Ergebnis 2½). Für diese Rechenoperation im mathematischen Sinne die Modulo-Operation steht der Operator % bereit. Seine Anwendung möge folgendes Beispiel verdeutlichen: /* Restdivision */ #include <stdio.h> void main() { int a = 10; int b = 4; int ergint; /* Integer-Ergebnis */ /* Rest-Division Mod */ ergint = a % b; printf("\n%i MOD %i = %i\n", a,b,ergint); getchar(); } Das Ergebnis ergint ist 2. Tatsächlich ist ja 10 geteilt durch 4: 2 Rest 2, denn 2*4 + 2 = (bzw. 10 mod 4 = 2). Typkonvertierung In all diesen Beispielen sind die Variablen in einer Anweisung alle vom gleichen Typ float bzw. int. Was geschieht, wenn dies nicht der Fall ist? In groben Fällen (char und float zusammengerührt) gibt bereits der Compiler eine Fehlermeldung heraus. Andererseits wissen wir, daß grundsätzlich einer char-variablen ein Integerwert zugewiesen werden kann sofern dieser zwischen 0 und 255 liegt. Dann wird das zugehörige ASCII-Zeichen genommen. 5

6 Eigentlich dürften Anweisungen der Form 2*3,5 auch nicht das Problem darstellen, obwohl 2.0 * 3.5 die sicherere Variante ist. In der Tat sind gewisse Typkonvertierungen möglich, d. h. daß kurzfristig der Typ des Wertes der Variablen (also nicht ihr Datentyp allgemein!) sich ändert. Ein Beispiel: /* Typkonvertierung bei Nichtübereinstimmung */ /* der Datentypen der linken und rechten */ /* Seite einer Anweisung */ #include <stdio.h> void main() { int a = 10; int b = 4; int ergint; /* Integer-Ergebnis */ float ergfloat; /* Real-Ergebnis */ ergint = a / b; ergfloat = a / b; printf("\ninteger-division: %i / %i = %i", a,b,ergint); printf("\nreal-division: %i / % i = %f", a,b,ergfloat); } getchar(); Die Ergebnisse sind für ergint = 2, ergfloat = 2,0000 Das heißt, um eine Real- als Integerzahl darzustellen, wird der Nachkommaanteil abgeschnitten. Doch warum ist das Ergebnis für ergfloat nicht 2,5 da schließlich als float-variable deklariert? Weil a und b ganze Zahlen sind. Die Division ganzer Zahlen liefert immer ein ganzzahliges Ergebnis, in diesem Fall 2. Da allerdings ergfloat vom Typ float ist, wird anschließend das Ergebnis in eine Real-Zahl gewandelt, eben 2,0. Also: Wenn die Datentypen der rechten Seite mit dem der linken Seite nicht übereinstimmen, erfolgt Typkonvertierung zum Typ der linken Seite. 6

7 Wie kann man nun den obigen Konflikt vermeiden? Sicherlich durch Einführung neuer Variablen vom Typ float. Es geht auch anders: man kann Typkonvertierung explizit verlangen. /* Typkonvertierung bei Nichtübereinstimmung */ /* der Datentypen der linken und rechten */ /* Seite einer Anweisung */ #include <stdio.h> void main() { int a = 10; int b = 4; int ergint; /* Integer-Ergebnis */ float ergfloat; /* Real-Ergebnis */ } ergint = a / b; ergfloat = (float) a / b; printf("\ninteger-division: %i / %i = %i", a,b,ergint); printf("\nreal-division: %i / % i = %g", a,b,ergfloat); getchar(); Mit Hilfe der expliziten Typumwandlung, cast-operator genannt, kann der Datentyp für einzelne Operationen angepaßt werden, ohne daß die Typdeklaration davon betroffen wäre. (float) macht aus dem Wert von a eine Real-Zahl, d.h. aus 10 wird Die Division a/b liefert damit ein Real-Ergebnis, das ergfloat zugewiesen wird. Die Umkehrung von float zu int ist auch möglich. Doch dazu reicht eine einfache Zuweisung aus, in der links vom Gleichheitszeichen eine Integer-Variable und rechts eine Operation mit reellem Ergebnis steht. Wichtiger ist der Fall der Datenkonvertierung von float nach double: Aus der float-variablen wird durch den Cast (double) ein Wert vom Typ double. Es gilt zu bedenken, daß Typumwandlungen, implizit oder explizit durch Anweisung, Rechenzeit kosten. Deshalb sollte der Programmierer für reinrassige Ausdrücke sorgen. 7

8 Mathematische Funktionen Mit Fließkommazahlen sind eine Vielzahl von mathematischen Operationen möglich. Viele bekannte Funktionen wie Wurzel-, Logarithmus- und trigonometrische Funktionen stehen auch in C zur Verfügung und können daher gnadenlos in Ausdrücke eingebaut werden. Anweisungen der Form y = sin 2 x sind damit möglich. Gibt man sie allerdings direkt als Anweisung ein, wird der Compiler Protest erheben. sin will er einfach nicht erkennen. Der Grund ist derselbe, als der Compiler zu Beginn die printf-funktion nicht kennen wollte. Erst als man ihm über die #include-anweisung die sogenannte Header-Datei Include/stdio.h vermittelte, war er zufrieden. Er fand dort die Funktionsprototypen der Funktion printf. Hingegen ist der von sin nicht in Include/stdio.h. enthalten. Diese muß in math.h gesucht werden. Daher ist der Header um die weitere Datei Include/math.h über eine weitere #include-anweisung zu erweitern. Das nachfolgende Beispielprogramm veranschaulicht dies: /* Winkelberechnung am rechtwinkligen Dreieck */ #include <stdio.h> #include <math.h> #define M_PI 4.0 * atan(1.0) void main() { float katha, kathb; /* Katheten a und b des Dreiecks */ float hyp; /* Hypothenuse des Dreiecks */ float alpha, beta; /* Winkel zwischen Kathete u. Hypothenuse */ /* Eingabe */ printf("\nbitte die Längen der Katheten a und b eingeben.\n"); printf("a = "); scanf("%g", &katha); fflush(stdin); printf("b = "); scanf("%g", &kathb); fflush(stdin); /* Verarbeitung */ hyp = sqrt(katha*katha + kathb* kathb); alpha = asin(katha/hyp); beta = asin(kathb/hyp); /* Umrechnung der Winkel von Bogen- in Gradmaß */ alpha = (180/M_PI) * alpha; beta = (180/M_PI) * beta; /* Ausgabe */ printf("\nkathete a = %g", katha); printf("\nkathete b = %g", kathb); 8

9 printf("\nhypothenuse c = %g", hyp); printf("\nwinkel Alpha = %5.2f Grad", alpha); printf("\nwinkel Beta = %5.2f Grad\n", beta); getchar(); } Im Kopf ist als weitere Datei math.h über eine #include-anweisung eingeschlossen. Sie liefert die Funktionen sqrt ( sqrt - Quadratwurzel) und asin (arcus sinus). Ärgerlicherweise ist in der Entwicklungsumgebung von Visual C++ nicht die Konstante π abgelegt, weswegen wir sie über eine define-definition als Konstante deklarierten. In der Borland - Entwicklungsumgebung ist sie hingegen in math.h abgelegt. Man findet sie unter der Abkürzung M_PI. Die verfügbaren Funktionen lauten: Exponentialfunktionen/Wurzelfunktion: c = a b c = e b c = pow(a,b); c = exp(b) c = a c = sqrt(a) Logarithmus-Funktion: c = ln(a) c = log(a) mit a > 0. trigonometrische Funktionen: das Argument ist im Bogenmaß einzugeben. y = sin(x) y = cos(x) y = tan(x) Arcus-Funktionen: der Funktionswert steht im Bogenmaß y = asin(x) arcus sinus y = acos(x) arcus cosinus y = atan(x) arcus tangens z = atan2(y,x) liefert auch den Arcustangens von (y/x). Um den richtigen Quadranten zu erhalten, müssen y und y vorzeichengerecht eingegeben werden. 9

10 Hyperbolische Funktionen: y = sinh(x) y = cosh(x) y = tanh(x) Betragsfunktionen: j = abs(i) i und j int y = fabs(x) x und y double Auf- und Abrunden y = ceil(x) aufrunden auf nächsthöheren ganzen Zahlenbereich y = floor(x) abrunden auf nächstniedrige ganze Zahl; x und y sind double 10

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Projekt 3 Variablen und Operatoren

Projekt 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.

Mehr

Operatoren und Ausdrücke

Operatoren 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

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16 Kapitel 5 Arithmetische Operatoren Seite 1 von 16 Arithmetische Operatoren - Man unterscheidet unäre und binäre Operatoren. - Je nachdem, ob sie auf einen Operanden wirken, oder eine Verknüpfung zweier

Mehr

Algorithmen & Programmierung. Reelle Zahlen in C (2) Rechnen mit Gleitkommazahlen

Algorithmen & 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

Mehr

Dr. Monika Meiler. Inhalt

Dr. 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

Mehr

Variablen und Konstanten (1) Allgemeines

Variablen 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

Mehr

C- Kurs 03 Ausdrücke und Operatoren

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

Mehr

Grundstruktur eines C-Programms

Grundstruktur eines C-Programms Grundstruktur eines C-Programms // Kommentare werden durch zwei Schrägstriche (Slash) eingeleitet /* Oder durch Slash Stern Stern Slash eingeschlossen */ #include // Präprozessor-Anweisungen

Mehr

Kapitel 5. Datentypen und Operatoren

Kapitel 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

Mehr

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen

Einheit 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

Mehr

C-Programmierung: Ausdrücke und Operatoren#Division.2F

C-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

Mehr

Die einfachsten Anweisungen

Die einfachsten Anweisungen 2 Die einfachsten Anweisungen 2-1 Inhalt Die einfachsten Anweisungen Einführung Datentypen Arithmetische Operatoren Mathematische Funktionen Mehrfache Zuweisungen Übungsaufgaben Einführung Wir wollen unser

Mehr

2. Programmierung in C

2. 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)

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE 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

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Kapitel 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

Mehr

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Strings Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Beispiel: String zeile = "Cusanus-Gymnasium Wittlich";

Mehr

Kapitel 3: Variablen

Kapitel 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

Mehr

FH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz

FH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz FH München, FB 03 FA WS 06/07 Ingenieurinformatik Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz Zulassung geprüft vom Aufgabensteller: Teil I Aufg. 2 Aufg. 3 Aufg. 4 Aufg. 5 Summe Note Aufgabensteller:

Mehr

Algorithmen & Programmierung. Ausdrücke & Operatoren (1)

Algorithmen & 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

Mehr

Übersicht. Informatik 1 Teil 4: Programmwiederholungen (Schleifen), Entwurf, Mathematikfunktionen

Übersicht. Informatik 1 Teil 4: Programmwiederholungen (Schleifen), Entwurf, Mathematikfunktionen Übersicht 4.1 Inkrementieren und Dekrementieren 4.2 Die for-schleife (Zählschleife) 4.3 Die for-schleife (Beispiel) 4.4 Bemerkungen zur for-schleife 4.5 Die while-schleife 4.6 Die while-schleife - Beispiel

Mehr

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15

Variablen. 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

Mehr

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen

Operatoren 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

Mehr

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C Einfache Programmstrukturen in C 4-1 Welche einfache Programmstrukturen sind zu unterscheiden? Arithmetische und logische Ausdrücke und Zuweisungen Verzweigungen Unvollständige bedingte Anweisungen Vollständige

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  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

Mehr

8 Typwandlungen. 8.1 Automatische Typkonvertierungen

8 Typwandlungen. 8.1 Automatische Typkonvertierungen 8 Typwandlungen Hier geben wir Ihnen weitere Informationen zu Goto Java 2, die Sie ergänzend zu Hausaufgabe 3 lesen sollten. Sie sollten für die weiteren Ausführungen zunächst in Go To Java Kapitel 4.6

Mehr

einlesen n > 0? Ausgabe Negative Zahl

einlesen n > 0? Ausgabe Negative Zahl 1 Lösungen Kapitel 1 Aufgabe 1.1: Nassi-Shneiderman-Diagramm quadratzahlen Vervollständigen Sie das unten angegebene Nassi-Shneiderman-Diagramm für ein Programm, welches in einer (äußeren) Schleife Integer-Zahlen

Mehr

Die Programmiersprache C Eine Einführung

Die Programmiersprache C Eine Einführung Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert

Mehr

Java I Vorlesung Imperatives Programmieren

Java 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.

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen

Mehr

Grundlagen 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 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

Mehr

Schleifenanweisungen

Schleifenanweisungen Schleifenanweisungen Bisher: sequentielle Abarbeitung von Befehlen (von oben nach unten) Nun: Befehle mehrfach ausführen (= Programmschleife): for-anweisung - wenn feststeht, wie oft z.b.: eine Berechnung

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

Mehr

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Institut 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

Mehr

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011 Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 Operatoren für elementare Datentypen 2 Bedingte Anweisungen 3 Schleifen Zuweisungsoperator Die Zuweisung von Werten an

Mehr

Übersicht über die C/C++ Bibliotheksfunktionen

Ü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

Mehr

Trigonometrie. In der Abbildung: der Winkel 120 (Gradenmaß) ist 2π = 2π (Bogenmaß).

Trigonometrie. In der Abbildung: der Winkel 120 (Gradenmaß) ist 2π = 2π (Bogenmaß). Trigonometrie. Winkel: Gradmaß oder Bogenmaß In der Schule lernt man, dass Winkel im Gradmass, also als Zahlen zwischen 0 und 60 Grad angegeben werden. In der Mathematik arbeitet man lieber mit dem Bogenmaß,

Mehr

Prof. 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 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

Mehr

3. Datentypen, Ausdrücke und Operatoren

3. 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

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

Programmierung mit C Zeiger

Programmierung mit C Zeiger Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-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).

Mehr

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2 Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen

Mehr

4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen

4.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

Mehr

3. Datentypen, Ausdrücke und Operatoren

3. 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

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einführung in den Einsatz von Objekt-Orientierung mit C++ I Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf

Mehr

Übungspaket 9 Logische Ausdrücke

Übungspaket 9 Logische Ausdrücke Übungspaket 9 Logische Ausdrücke Übungsziele: Skript: 1. Umgang mit logischen Vergleichs- und Verknüpfungsoperatoren 2. Bilden einfacher und komplexer logischer Ausdrücke Kapitel: 22 Semester: Wintersemester

Mehr

Vorlesung 6: Operatoren, Logische Ausdrücke

Vorlesung 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

Mehr

Komplexe Zahlen. Berechnung von n-ten Wurzeln. Als Beispiel behandeln wir die Bestimmung der 3-ten Wurzeln von z = i

Komplexe Zahlen. Berechnung von n-ten Wurzeln. Als Beispiel behandeln wir die Bestimmung der 3-ten Wurzeln von z = i Komplexe Zahlen Berechnung von n-ten Wurzeln Als Beispiel behandeln wir die Bestimmung der -ten Wurzeln von z = + i z:= + *I + i Nach diese Eingabe "weiss" das System, dass z die komplexe Zahl + i ist.

Mehr

Verwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion. Programmieren in C

Verwendung 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

Mehr

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Java - 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

Mehr

Algorithmen und ihre Programmierung

Algorithmen 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

Mehr

Microsoft Rechner. Kurzanleitung ohne Maus

Microsoft Rechner. Kurzanleitung ohne Maus Microsoft Rechner Kurzanleitung ohne Maus Förderzentrum für die integrative Beschulung blinder und hochgradig sehbehinderter Schülerinnen und Schüler (FIBS) Astrid Leutbecher Korrekturhinweise, Anmerkungen,

Mehr

7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});

7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter}); S. d. I.: Programieren in C Folie 7-1 7 Funktionen 7.1 Definition Prototyp-Syntax: Speicherklasse Typ Name (formale Parameter); der Funktions-Prototyp deklariert eine Funktion, d.h. er enthält noch nicht

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

2. Ganze Zahlen int unsigned int

2. 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

Mehr

Übungspaket 13 Der Datentyp double

Übungspaket 13 Der Datentyp double Übungspaket 13 Der Datentyp double Übungsziele: Skript: 1. Umgang mit dem Datentyp double, 2. Deklarationen von double-variablen, 3. double-konstanten 4. und double-rechenoperationen. Kapitel: 32 Semester:

Mehr

Ganze 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 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.

Mehr

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java Ludwig-Maximilians-Universität München München, 20.11.2009 Institut für Informatik Prof. Dr. Christian Böhm Annahita Oswald, Bianca Wackersreuther Einführung in die Programmierung WS 2009/10 Übungsblatt

Mehr

Einführung in die Programmiersprache C

Einfü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

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter

Mehr

Datentypen und Operatoren

Datentypen und Operatoren Programmiervorkurs SS 2013 Datentypen und Operatoren Termin 2 Wiederholung: Einfache Datentypen Welche Datentypen kennt Ihr bereits? Einfache Datentypen Zeichen public class MyCharTest { char c1 = 'a';

Mehr

Kapitel 6. Funktionen

Kapitel 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

Mehr

2. Ganze Zahlen. Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int

2. 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

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable 1 Kapitel 3 Grunddatentypen, Ausdrücke und Variable 2 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen Datenstrukturen werden mit einem

Mehr

Einführung in die Informatik. Processing Numbers. Motivation. Primitive Datentypen. Operatoren versus Methoden

Einführung in die Informatik. Processing Numbers. Motivation. Primitive Datentypen. Operatoren versus Methoden Motivation Einführung in die Informatik Processing Numbers Wolfram Burgard Computer bzw. Rechenmaschinen wurden ursprünglich gebaut, um schnell und zuverlässig mit Zahlen zu rechnen. Erste Anwendungen

Mehr

Einführung in die Informatik. Processing Numbers

Einführung in die Informatik. Processing Numbers Einführung in die Informatik Processing Numbers Wolfram Burgard 5/1 Motivation Computer bzw. Rechenmaschinen wurden ursprünglich gebaut, um schnell und zuverlässig mit Zahlen zu rechnen. Erste Anwendungen

Mehr

Informatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen

Informatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen Informatik I Übung 2 : Programmieren in Eclipse 5. März 2014 Daniel Hentzen dhentzen@student.ethz.ch Downloads : http://n.ethz.ch/~dhentzen/download/ Heute 1. Nachbesprechung Übung 1 2. Theorie 3. Vorbesprechung

Mehr

Trigonometrische Funktionen

Trigonometrische Funktionen Abbildungsverzeichnis Inhaltsverzeichnis Trigonometrische Funktionen Die hier behandelten trigonometrischen Funktionen sind sin, cos, tan, cot. Es zeigt sich, dass die Umkehrfunktionen der trigonometrischen

Mehr

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

float: 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

Mehr

Übungspaket 14 Eindimensionale Arrays

Übungspaket 14 Eindimensionale Arrays Übungspaket 14 Eindimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung eindimensionaler Arrays Kapitel: 33 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:

Mehr

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 21. Januar 2016 Definition 8.1 Eine Menge R zusammen mit zwei binären Operationen

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:

Mehr

Sprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Sprachkonstrukte. 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

Mehr

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue Java - Zahlen, Wahrheitswerte und Zeichen Leibniz Universität Anja Aue Kommentare Hilfe für den Entwickler. Wer hat wann welche Änderung vorgenommen? Warum werden diese Anweisungen hier ausgeführt? Bei

Mehr

Kapitel 05. Datentypen. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Kapitel 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

Mehr

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

L6. Operatoren und Ausdrücke

L6. Operatoren und Ausdrücke L6. Operatoren und Ausdrücke 1. Arithmetische Operatoren: +, -, *, /, %, --, ++ 2. Zuweisung-Operatoren: =, +=, -=, *=, /= 3. Vergleichsoperatoren: =, ==,!= 4. Logische Operatoren:!, &&, 5.

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen

Mehr

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue Java - Zahlen, Wahrheitswerte und Zeichen Leibniz Universität IT Services Anja Aue Kommentare Hilfe für den Entwickler. Wer hat wann welche Änderung vorgenommen? Warum werden diese Anweisungen hier ausgeführt?

Mehr

1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r

1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r 1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen

Mehr

1. Referenzdatentypen: Felder und Strings

1. Referenzdatentypen: Felder und Strings 1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen

Mehr

1. Ganze Zahlen. 9 * celsius / Celsius to Fahrenheit. (9 * celsius / 5) + 32

1. 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

Mehr

Arduino in C/C++ programmieren

Arduino in C/C++ programmieren 1 Arduino in C/C++ programmieren Tutor: Dipl.-Ing. Jens Grätzer www1.hft-leipzig.de/graetzer/ graetzer@hft-leipzig.de 2 C/C++ auf dem Arduino Warum Arduino? Warum C/C++? Praxis Live 3 Warum Arduino? Mikrocontroller

Mehr

Kapitel 4. Programmierkurs. Arten von Datentypen. Datentypen

Kapitel 4. Programmierkurs. Arten von Datentypen. Datentypen Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln WS 07/08 Datentypen und Operatoren Einschub Binärdarstellung Ganzzahlige Numerische Datentypen Logischer Datentyp Typumwandlung

Mehr

Definitions- und Formelübersicht Mathematik

Definitions- und Formelübersicht Mathematik Definitions- Formelübersicht Mathematik Definitions- Formelübersicht Mathematik Mengen Intervalle Eine Menge ist eine Zusammenfassung von wohlunterschiedenen Elementen zu einem Ganzen. Dabei muss entscheidbar

Mehr

Ganze 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 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.

Mehr

Einführung in die Praktische Informatik. Übungsblatt 3. PD Dr. U. Köthe Heidelberg, 7. November Aufgabe 3.1 Gaußsche Osterregel [6 Punkte]

Einführung in die Praktische Informatik. Übungsblatt 3. PD Dr. U. Köthe Heidelberg, 7. November Aufgabe 3.1 Gaußsche Osterregel [6 Punkte] Einführung in die Praktische Informatik PD Dr. U. Köthe Heidelberg, 7. November 2016 Übungsblatt 3 Aufgabe 3.1 Gaußsche Osterregel [6 Punkte] Erstellen Sie ein Programm, das mit dem Algorithmus von Gauß

Mehr

Übungspaket 12 Der Datentyp char

Übungspaket 12 Der Datentyp char Übungspaket 12 Der Datentyp char Übungsziele: Skript: 1. Umgang mit dem Datentyp char, 2. Deklarationen von char-variablen, 3. char-konstanten 4. und char-rechenoperationen. Kapitel: 29 bis 31 sowie 24,

Mehr

Algorithmen zur Datenanalyse in C++

Algorithmen 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

Mehr

Programmieren in C / C++ Grundlagen C 2

Programmieren 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

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Kapitel I.2: Variablen und arithmetische Ausdrücke Prof. Dr.-Ing. Marcin Grzegorzek Juniorprofessur für Mustererkennung im Institut für Bildinformatik Department Elektrotechnik

Mehr

GRUNDLAGEN MATHEMATIK

GRUNDLAGEN MATHEMATIK Mathematik und Naturwissenschaften Fachrichtung Mathematik, Institut für Numerische Mathematik GRUNDLAGEN MATHEMATIK 6. Komplexe Zahlen Prof. Dr. Gunar Matthies Wintersemester 2015/16 G. Matthies Grundlagen

Mehr

Grundlagen der Programmierung

Grundlagen 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,

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr