Programm-Ablauf. int main() // Beispiel- Struktur eines Programmes. prepare_everything(); read_input(); calculate_result(); write_output();

Größe: px
Ab Seite anzeigen:

Download "Programm-Ablauf. int main() // Beispiel- Struktur eines Programmes. prepare_everything(); read_input(); calculate_result(); write_output();"

Transkript

1 Programm-Ablauf Alle betrachteten Programmiersprachen C, C++, Java führen Anweisungen in der Reihenfolge aus, in der diese im Quellcode stehen. Dieser normale Ablauf kann geändert werden durch: 1) Sprunganweisungen im erweiterten Sinn. Durch diese erfolgt die weitere Programmausführung an der anzuspringenden Stelle. Beispiele sind etwa die goto Anweisung in C/C++, jeder Funktionsaufruf, jedes return-statement usw. Funktionsaufrufe erkennt man in diesen Sprachen an den runden Klammern () hinter der aufgerufenen Funktion: sin(1.0). Ein Funktionsname ohne Klammern bewirkt keinen Funktionsaufruf, ist also "toter Code": sin; 2) Schleifen: Diese werden so oft wiederholt, wie eine Kontroll-Bedingung wahr ist. Beispiele in C/C++/Java sind while, do while, for 3) Bedingte Anweisungen: Diese Anweisungen werden nur beim Zutreffen einer Bedingung ausgeführt. Beispiele sind if, if else, switch case Die Programm-Ausführung startet in C und C++ mit der Funktion main(). Diese muss daher in jedem C/C++ - Programm genau einmal vorhanden sein (bei Java ist das ein wenig anders gelöst). Wenn diese Funktion endet (bei der schließenden geschwungenen }-Klammer oder bei einer return-anweisung im Inneren), dann endet auch das ganze Programm. Man kann alles in diese main-funktion hineinpacken (bei längeren Programmen unübersichtlich) oder aber aus dieser Funktion heraus aufrufen. Ein kleines Beispiel: int main() // Beispiel- Struktur eines Programmes { prepare_everything(); read_input(); calculate_result(); write_output(); return EXIT_SUCCESS; }

2 Datentypen, Objekte Zur Programmausführung werden fast immer Datenobjekte benötigt. Bei der Definition von variablen Objekten muss man entweder deren Datentyp explizit angeben oder aber der Typ wird als auto spezifiziert und muss vom Compiler anhand der Syntax automatisch erkannt werden (ab C++11). Konstante Objekte erkennt der Compiler immer an der Schreibweise. Die Objekte unterteilt man in 1) Variable Objekte, Variable: Diese Objekte lassen sich verändern. Sie müssen einen Namen haben, unter dem sie angesprochen werden können. C/C++ reserviert den Speicherplatz für definierte Variable vollautomatisch und gibt diesen auch wieder frei. 2) Konstante: Diese Objekte lassen sich nicht verändern, sie belegen auch keinen Speicherplatz, sondern sind nur im Programmcode enthalten. 3) konstante Objekte (erkennbar am const Schlüsselwort): Diese lassen sich genau einmal verändern, nämlich bei der Definition. Diesen Typ verwendet man gerne, um Programme an bestimmte Situationen anzupassen. Das Original-C konnte das noch nicht und musste stattdessen Präprozessor-Makros verwenden. Datentypen: Jede Programmiersprache stellt bestimmte Datentypen wie z.b. Zeichenketten = Strings, ganze Zahlen, Gleitkomma-Zahlen etc. zur Verfügung. Je nach Ausrichtung sind auch komplexe Zahlen, Vektoren und Matrizen usw. vordefiniert (z.b. Fortran als Mathematik-Sprache). C, C++ und Java sind Allround-Sprachen und definieren nur das Allernötigste vor. Objektorientierte Sprachen gestatten es, fehlende Datentypen selbst zu definieren und damit die Sprache zu erweitern. Bezeichner, Namen Variable, Funktionen, selbstdefinierte Datentypen, Makros usw. müssen einen Namen oder Bezeichner haben, der folgenden Regeln genügt: 1) Namen dürfen aus Buchstaben, Ziffern und Unterstrich bestehen: falsch: a-z (Bindestrich nicht erlaubt), x.h (Punkt!) 2) Namen dürfen NICHT mit einer Ziffer beginnen 3) Klein- und Großschreibung wird unterschieden 4) Namen dürfen beliebig lang sein (C beachtet nur die ersten 31 Zeichen, C++ sehr viel mehr, sicherlich >1000 Zeichen) 5) Namen für Templates in C++ (und nur diese) dürfen/müssen auch die Zeichen < und > enthalten. 6) Namen gelten immer nur in dem Block (von {} eingeschlossen), in dem sie definiert sind. Ein Name außerhalb aller Blöcke gilt global im ganzen Programm. richtig: x234_2, Meine_Oma

3 Datentypen für ganze Zahlen In Standard C/C++ gibt es die Ganzzahltypen char (phonetisch TSCHAR), short (kurz für short int), int, long (kurz für long int), long long (kurz für long long int). Diese unterscheiden sich in der Anzahl der Bits (= binäre Ziffer, also nur die Werte 0 oder 1). Je mehr Bits einem Typ zugeordnet sind, desto größere Zahlen lassen sich darstellen. Jeder dieser Datentypen enthält auch negative Zahlen, und zwar gleich viele wie nichtnegative! ES GIBT KEINE VERBINDLICHEN REGELN für die Bit-Anzahl in C/C++! es gilt nur: Datenbits!) char <= short <= int <= long <= long long (im Sinne von Weit verbreitet ist z.b. folgendes Schema: char: 8 Bit: Werte von -128 bis 127 short: 16 Bit: Werte von ca bis ( bis ) int: 32 Bit: Werte von -2 Mrd bis 2 Mrd ( bis ) long: bis ) long long: auch 64 oder gar 128 Bits Dennoch DARF MAN NICHT DAVON AUSGEHEN, dass es immer so sein muss. Manche Systeme haben int und long mit 32 Bit, manche int und long mit 64 Bit definiert. Hier geht Java einen anderen Weg, da hier die Bitzahlen eindeutig definiert sind: byte: 8 Bit: Werte von -128 bis 127: - (2 hoch 7) bis (2 hoch 7)-1 short: 16 Bit: Werte von ca bis 32000: - (2 hoch 15) bis (2 hoch 15)-1 int: 32 Bit: Werte von -2 Mrd bis 2 Mrd: - (2 hoch 31) bis (2 hoch 31)-1 long: 64 Bit: Werte von - (2 hoch 63) bis (2 hoch 63)-1 Der Datentyp char ist in Java immer 16 Bits breit, aber kein numerischer Datentyp Alle diese Typen gibt es auch unsigned (gleiche Bitanzahl, aber nur positive Werte oder 0), wir haben also auch unsigned char, unsigned short (int), unsigned int, unsigned long (int), unsigned long long (int) unsigned 8 Bit: Werte von 0 bis 255: 0 bis unsigned 16 Bit: Werte von ca. 0 bis (0 bis ) unsigned 32 Bit: Werte von 0 bis 4 Mrd (0 bis ) unsigned 64 Bit (0 bis ) Portabel Programmieren in C/C++: Wenn man für ein Programmprojekt unbedingt Ganzzahlen mit einer ganz bestimmten Bitanzahl verwenden muss (z.b. IPv4-Adressen sind

4 immer 32 Bit lang), sollte man nicht einen Standardtyp wie int verwenden, weil dessen Zahlenumfang nicht fixiert ist. Die Norm C99 definiert neue Ganzzahl-Datentypen für C (und damit auch für C++), die eine garantierte Länge haben (z.b. int32_t für 32-bit Integer, uint64_t für 64-bit unsigned Integers usw.). Diese Typen sind im Headerfile <stdint.h> für C und im Headerfile <cstdint> für C++ definiert. Um die neuen Integertypen zu verwenden, muss man nur diese Headerdatei inkludieren. Weitere Ganzzahltypen sind für diverse Zwecke in verschiedenen Headern vordefiniert. So gibt es in C++ auch die Typen: std::size_t (z.b. in cstdlib definiert) std::streamsize (ios) std::time_t (ctime) Diese entsprechen immer einem der Standardtypen, allerdings kann es von der Hardware (32-Bit CPU oder 64-Bit CPU) und vom Betriebssystem abhängen (z.b. ist std::size_t manchmal als unsigned int, manchmal als unsigned long definiert!). Zum Rechnen mit den Ganzzahltypen stehen die arithmetischen Standard- Rechenoperationen + (Addition), - (Vorzeichen bzw. Subtraktion), * (Multiplikation), / (Division), sowie % (Divisionsrest) zur Verfügung. Sie liefern immer ein Ganzzahlergebnis vom selben Typ: > 2 7 / 4 -> 1 (Achtung!) 17 % 3 -> 2 (17 hat bei Division durch 3 den Rest 2) -5 % 3 -> -2 (Divisionsreste von negativen Zahlen sind negativ) Überlauf: Manchmal wird ein Ergebnis zu groß für einen Datentyp (meistens bei der Multiplikation). Hier kommt es zu einem falschen Ergebnis, ohne dass es eine Warnung dafür gibt! Datentypen für Gleitkommazahlen: Für solche Zahlen stehen die Datentypen float (einfache Genauigkeit), double (doppelte Genauigkeit) und long double (wird fast nie verwendet) zur Verfügung. float hat etwa 7 signifikante Stellen, double ca. 14. Dabei handelt es sich nicht um Nachkommastellen, die Zahlen werden intern immer im wissenschaftlichen Format mit einer Mantisse (mit der angegebenen Stellenzahl) und einem Exponenten gespeichert. Die Grundrechnungsarten +,-,*, / für Gleitkommazahlen erzeugen fast immer Rundungsfehler, aber KEINE Überläufe. Manchmal ist das Ergebnis einer Rechenoperation ungültig (z.b.

5 Division durch 0 oder Wurzel aus einer negativen Zahl etc.). Hier kann man oft einstellen, ob das Programm mit einer Fehlermeldung abbricht oder ob es mit speziellen ungültigen Zahlen weiterrechnet. Solche sind: NaN, nan: Not a Number Infinity, inf: Unendlich Mit welchem Typ wird eine Grundrechnungsart durchgeführt? C++ hat einige Regeln dazu, hier sind die wichtigsten: 1) Sind beide Operanden Gleitkommatypen, wird mit dem größeren der beiden Typen gerechnet (long double > double > float)und der andere Operand konvertiert. 2) Ist ein Operand ein Gleitkommatyp, der andere ein Ganzzahltyp, so wird mit dem Gleitkommatyp gerechnet und der Ganzzahltyp vorher konvertiert. 3) Sind beide Operanden Ganzzahltypen <= int, so wird mit int gerechnet und (wenn nötig), beide Operanden zu int konvertiert. 4) Ist ein Operand ein unsigned int, und der andere Operandentyp <= unsigned int, wird mit unsigned int gerechnet und der andere Operand in unsigned int konvertiert. Bei Vergleichsoperatoren und bei manchen arithmetischen Operationen geht das manchmal schief! Der Compiler warnt daher zu Recht, wenn ein unsigned int mit einem signed Datentyp verglichen wird!) 5) Regeln wie 3) und 4) gelten sinngemäß, wenn man int durch long oder long long ersetzt und wenigstens ein Operand diesen Typ hat. double / float -> double (Regel 1) int / float -> float (Regel 2) int / int -> int (Regel 3) char / short -> int (Regel 3) unsigned / unsigned -> unsigned (Regel 4) unsigned / char -> unsigned (oder Katastrophe!) (Regel 4) long / int -> long (Regel 5) Warnungsbeispiel: unsigned one = 1; // das gefährliche Duo: unsigned int minus_one = -1; // mit einem signed, der negativ ist if (minus_one > one) // und jetzt ein Vergleich: Autsch cout << minus_one << > << one << \n ; Zusammengesetzte Formeln: Diese werden in einzelne Rechenoperationen aufgeteilt und diese einzeln nach vorigen Regeln behandelt:

6 int + char + long -> (int + char) + long -> (int + int) + long -> int + long -> long + long -> long Beachte hier, dass wirklich JEDE Operation einzeln betrachtet wird. Es könnte also durchaus bei der ersten Addition (int + int) ein Überlauf auftreten, der bei der durchgängigen Rechnung mit long nicht aufgetreten wäre. Dennoch wird diese erste Addition mit int- Daten berechnet und erst das (möglicherweise falsche übergelaufene) Ergebnis in long umgewandelt. Das Assoziativgesetz gilt für diese Arithmetik NICHT: ( 2'000'000' '000'000'000 ) + 0L ist meist etwas anderes als 2'000'000'000 + ( 2'000'000' L ) Datentyp für Wahrheitswerte C++ kennt dazu den Datentyp bool, der die Werte true oder false annehmen kann. Beide Wahrheitswerte gestatten eine automatische Konvertierung in einen int, und zwar wird true in 1 und false in 0 konvertiert (C-kompatibel). In C (und damit auch in C++) gilt aber auch jeder numerische Ausdruck, der nicht 0 ist, als wahr und der Ausdruck 0 als falsch. x = x + true; // entspricht: x = x + 1; Variablen Variablen müssen vor ihrer Verwendung definiert werden. In C-Programmen erfolgt die Definition traditionell am Anfang der Funktion oder des Blocks, in der sie verwendet werden, in C++/Java meistens kurz vor oder bei ihrer Verwendung. Die Definition geschieht durch Angabe des Typs und des Variablennamens. Es können auch mehrere Variable desselben Typs gemeinsam definiert werden: int x; long i, k, Summe; short s1 = 5, s2 = 3, s3; // 3 long-variable werden definiert // mit oder ohne Initialisierung Eine Zuweisung in einer Definition nennt man Initialisierung. Es handelt sich dabei streng genommen um keine Zuweisung sondern eben um eine Initialisierung. Dabei ist oft mehr

7 erlaubt, als bei einer echten Zuweisung möglich wäre. Das ist umso wichtiger in C++, weil hier im Rahmen einer Initialisierung auch ein Funktionsaufruf (Konstruktor) erfolgen kann/muss. Der Datentyp auto Neu und mit Freude aufgenommen wurde der neue Typbezeichner auto (seit C++11), bei dem C++ den Typ automatisch aus dem Initialisierer zu erraten versucht. Das geht natürlich nur, wenn die Objekte tatsächlich initialisiert werden (= gleich bei der Definition einen Wert erhalten): auto i = 1; // i ist int auto x = 2.0f; // x ist float auto s = sin(1.90); // s ist double auto u; // das ist ein Blödsinn, wie soll C++ den Typ erraten? std::vector<double> v; std::vector<double>::const_reverse_iterator it = v.crbegin; auto it = v.crbegin(); // C++11: Gott sei Dank gibts auto Konstante Der Typ von Konstanten wie z.b. Zahlenwerte, C-Strings wird an der Form der Konstanten erkannt: 1, 2, -1000: besitzen keinen Dezimalpunkt -> Ganzzahltyp -> int 2.0, , 1e5: besitzen einen Dezimalpunkt und/oder Exponent-> double 100'000'000 : 100 Millionen als int (seit C++11 erlaubte Strukturierung langer Zahlen), 1'000' '3 als double Ist man mit dieser Zuordnung nicht zufrieden, kann man noch durch einen/mehrere angehängte/n Buchstaben (u oder U für unsigned, l (schlecht, weil ähnlich zu 1) oder L für long, ll oder besser LL für long long, f oder F für float) der Konstanten einen anderen Typ geben: 1L -> 1 vom Typ long (bitte nicht 1l verwenden, das verwechselt man gerne mit 11) 1uL -> 1 vom Typ unsigned long 1.0f -> 1.0 vom Typ float 1e6 -> eine Million als double

8 10e6f -> zehn Millionen als float Wenn man short oder unsigned short Konstante spezifizieren will (das ist eigentlich nie wirklich nötig), muss man eine Typ-Umwandlung verwenden. Diese hat in C++ die Form: static_cast<zieltyp>(ausdruck) static_cast<short>(23) Alternativ kann man auch einen Konstruktor verwenden(ist kürzer): short{23} // ab C++11 in C schreibt man dafür (das geht auch in C++, es wird allerdings nicht gerne gesehen) (Zieltyp) Ausdruck (unsigned short) 23 Ganze Zahlen kann man statt dezimal auch im Oktalsystem angeben (diese beginnt dann mit einer 0 (Null!)) oder das Sedezimalsystem (Hexadezimal-System) verwenden, wobei man dann mit 0x beginnen muss: 10 -> (Oktalsystem) -> 8 0x10 (Hexen-Ein Mal Eins) -> 16 Seit C++11 ist auch die Angabe im Binärsystem möglich, bei der natürlich nur die Ziffern 0 und 1 erlaubt sind. Sie beginnen mit 0b: 0b11101(statt 0b ist auch 0B möglich) -> 29 dezimal Zeichen-Konstante: Stehen in einfachen Anführungszeichen: 'a' Ascii-Wert des Zeichens a: In C ist das ein int, in C++ ein char, in Java ein char (das ist in Java kein numerischer Typ) '\t' ist das Tabulator-Zeichen, '\n' ist das Newline-Zeichen C-String-Literale oder Zeichenketten-Konstante werden in allen unseren Sprachen in doppelte Anführungszeichen gesetzt: "Ich bin ein String-Literal" In C (und damit auch in C++) und Java handelt es sich dabei um ein Array von char, das sind Zeichen, die im Speicher hintereinander liegen: also ein I, ein c, ein h, ein Leerzeichen usw. bis zum l von Literal und danach ein Null-Byte, das den String terminiert. Die Länge des Strings wird nicht abgespeichert, er geht eben bis zum ersten Nullbyte. Wer dynamisch Zeichenketten erzeugt und auf das schließende Nullbyte vergisst, hat u.u. sehr lange Strings generiert!

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

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

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

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

Wertebereich und Genauigkeit der Zahlendarstellung

Wertebereich 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

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

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

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

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

Grundlagen der Informatik 2. Typen

Grundlagen 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

Mehr

Programmierkurs C++ Variablen und Datentypen

Programmierkurs C++ Variablen und Datentypen Programmierkurs C++ Variablen und Datentypen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Überblick Welche Datentypen gibt es in

Mehr

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean 01.11.05 1 Noch für heute: 01.11.05 3 primitie Datentypen in JAVA Primitie Datentypen Pseudocode Name Speichergröße Wertgrenzen boolean 1 Byte false true char 2 Byte 0 65535 byte 1 Byte 128 127 short 2

Mehr

Die Programmiersprache C

Die Programmiersprache C Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,

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

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

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

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

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

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

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 30 Einstieg in die Informatik mit Java Datentypen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 30 1 Überblick 2 Ganzzahlige Typen 3 Gleitkommatypen 4 Zeichen, char

Mehr

2.5 Primitive Datentypen

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

Mehr

Kapitel 3. Grunddatentypen, Ausdrücke und Variable

Kapitel 3. Grunddatentypen, Ausdrücke und Variable Kapitel 3 Grunddatentypen, Ausdrücke und Variable Grunddatentypen, Ausdrücke und Variable 1 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen

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

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

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

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

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

Elementare Konzepte von

Elementare 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

Mehr

Einführung in C. EDV1-04C-Einführung 1

Einführung in C. EDV1-04C-Einführung 1 Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags

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

Programmiertechnik Skalare Typen,Variablen, Zuweisungen

Programmiertechnik Skalare Typen,Variablen, Zuweisungen Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Skalare Typen,Variablen, Zuweisungen int int i; i; long long j; j; boolean boolean isempty; isempty; double double average; average;

Mehr

C++ Notnagel. Ziel, Inhalt. Programmieren in C++

C++ Notnagel. Ziel, Inhalt. Programmieren in C++ C++ Notnagel Ziel, Inhalt Ich versuche in diesem Dokument noch einmal die Dinge zu erwähnen, die mir als absolut notwendig für den C++ Unterricht und die Prüfungen erscheinen. C++ Notnagel 1 Ziel, Inhalt

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

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

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

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

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

Grundlagen der OO- Programmierung in C#

Grundlagen der OO- Programmierung in C# Grundlagen der OO- Programmierung in C# Technische Grundlagen 1 Dr. Beatrice Amrhein Überblick Visual Studio: Editor und Debugging Die Datentypen Methoden in C# Die Speicherverwaltung 2 Visual Studio 3

Mehr

Schleifen in C/C++/Java

Schleifen in C/C++/Java Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

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

Elementare Datentypen in C++

Elementare Datentypen in C++ Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der

Mehr

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A 2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,

Mehr

Modellierung und Programmierung 1

Modellierung 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

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

Integer Integer Integer (Voreinstellung) Integer Gleitkomma Gleitkomma leer/unbestimmt Integer ohne Vorzeichen Integer (explizit) mit Vorzeichen

Integer Integer Integer (Voreinstellung) Integer Gleitkomma Gleitkomma leer/unbestimmt Integer ohne Vorzeichen Integer (explizit) mit Vorzeichen 1 C-Schlüsselwörter Schlüsselwörter sind in allen Programmiersprachen reservierte Wörter. In C sind auch alle Namen _[A-Z]... und... reserviert, auch _... bereichsweise. Weiterhin durch die Standard-

Mehr

3. Java - Sprachkonstrukte I

3. Java - Sprachkonstrukte I Namen und Bezeichner Ein Programm (also Klasse) braucht einen Namen 3. Java - Sprachkonstrukte I Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen, Auswerten von Ausdrücken,

Mehr

Kapitel 4: Elementare Konzepte von Programmiersprachen. Variablen Referenzen Zuweisungen

Kapitel 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

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

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5 Zentrum für Angewandte Informatik Köln Arbeitsgruppe Faigle / Schrader Universität zu Köln Lösungen zum Übungsblatt 3 Programmierkurs C++ Nils Eissfeldt und Jürgen Gräfe. November 001 Aufgabe 5 Innerhalb

Mehr

5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?)

5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?) 5.1 Mehr Basistypen Außer int, stellt Java weitere Basistypen zur Verfügung. Zu jedem Basistyp gibt es eine Menge möglicher Werte. Jeder Wert eines Basistyps benötigt die gleiche Menge Platz, um ihn im

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

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

Numerische Datentypen. Simon Weidmann

Numerische Datentypen. Simon Weidmann Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die

Mehr

Kapitel 2: Python: Ausdrücke und Typen. Grundlagen der Programmierung 1. Holger Karl. Wintersemester 2016/2017. Inhaltsverzeichnis 1

Kapitel 2: Python: Ausdrücke und Typen. Grundlagen der Programmierung 1. Holger Karl. Wintersemester 2016/2017. Inhaltsverzeichnis 1 Kapitel 2: Python: Ausdrücke und Typen Grundlagen der Programmierung 1 Holger Karl Wintersemester 2016/2017 Inhaltsverzeichnis Inhaltsverzeichnis 1 Abbildungsverzeichnis 2 Liste von Definitionen u.ä. 2

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

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

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung

Mehr

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr

Übersicht. Peter Sobe 1

Ü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

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

Primitive Datentypen und Felder (Arrays)

Primitive 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

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

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

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein

Die 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

Mehr

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen Kapitel 4: Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Codierung von rationalen Zahlen Konvertierung

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Moderne C-Programmierung

Moderne C-Programmierung Xpert.press Moderne C-Programmierung Kompendium und Referenz Bearbeitet von Helmut Schellong 1. Auflage 2005. Buch. xii, 280 S. ISBN 978 3 540 23785 3 Format (B x L): 15,5 x 23,5 cm Weitere Fachgebiete

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

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 1/24 Informationsverarbeitung im Bauwesen Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2010/2011 Vorlesung 7

Mehr

Motivation und Überblick

Motivation und Überblick Motivation und Überblick Drei große Bereiche der Vorlesung: Darstellung von Zahlen in Rechnern Verarbeitung von Binärdaten auf der Ebene digitaler Schaltungen Programmierung auf Maschinenebene und relativ

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Ein erstes Java-Programm

Ein erstes Java-Programm Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

Mehr

Grundelemente von C++

Grundelemente von C++ - Zeichensatz - Kommentare - Token - Bezeichner - Schlüsselwörter - Einfache Typen - Literale Ganze Zahlen Reelle Zahlen Wahrheitswerte Zeichen - Variablen und Variablendeklarationen - Benannte Konstanten

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Folgen und Funktionen in der Mathematik

Folgen und Funktionen in der Mathematik Folgen und Funktionen in der Mathematik Anhand von einigen exemplarischen Beispielen soll die Implementierung von mathematischen Algorithmen in C/C++ gezeigt werden: Reelle Funktionen in C/C++ Diese wird

Mehr

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration CoMa-Übung III TU Berlin 30.10.2013 Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration 30.10.2013 1 /

Mehr

Physische Datenstrukturen

Physische 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

Mehr