3. Aufgabe: Bitmap-Datei

Größe: px
Ab Seite anzeigen:

Download "3. Aufgabe: Bitmap-Datei"

Transkript

1 1 Einleitung 3. Aufgabe: Bitmap-Datei In dieser Programmieraufgabe soll eine Grafik erstellt und gespeichert werden. Es wurde das Bitmap-Format von Microsoft gewählt, da es recht einfach erstellt und von den meisten Grafikprogrammen gelesen werden kann. Diese Aufgabe beschränkt sich dabei auf eine Farbtiefe von 24 Bit, genannt true color, mit jeweils 8 Bit für die Farben rot, grün und blau (RGB), und versucht nicht allgemein das Bitmap-Grafikformat mit allen Optionen zu implementieren. 2 Grundlagen Eine Bitmap-Datei ist wie folgt aufgebaut: file header (14 Byte) info header (40 Byte) [look up table, LUT] pixel data Im file header stehen Informationen zur Datei im Allgemeinen Im info header stehen Angaben zum Bild wie Bildgröße, Art der Farben u.s.w. Die look up table (LUT ) ist eine optionale Farbtabelle, die in diesem Praktikum nicht verwendet wird Im Block pixel data stehen die Pixeldaten des Bildes Im Folgenden werden zunächst einige elementare Datentypen eingeführt, danach werden die vier Blöcke näher erläutert. Schließlich befassen wir uns mit der Speicherbelegung für die benötigten Strukturen. 2.1 Einige elementare Datentypen Damit das Dateiformat unabhängig von Rechnerplattform und Software ist, werden vier neue Datentypen eingeführt, die unter Visual Studio 2015 gemäß Tabelle 1 definiert werden. Typenname in VS 2015 Beschreibung BYTE unsigned char 1 Byte mit Wertebereich 0 bis WORD unsigned short 2 Byte mit Wertebereich 0 bis DWORD unsigned int 4 Byte mit Wertebereich 0 bis LONG long 4 Byte mit Wertebereich 2 31 bis Tabelle 1: Elementare Datentypen 2.2 Der file header Der file header fasst die in Tabelle 2 aufgelisteten Elemente zusammen. Er hat eine Länge von 14 Byte und die Elemente werden in einer Struktur gebündelt Prof. Dr. Robert Heß 1/6

2 Datentyp Name Wert Beschreibung WORD type Die Buchstaben B und M als Kennung: B + 256* M = DWORD filesize <Dateigröße> Größe der gesamten Datei DWORD reserved 0 Für spätere Zwecke reserviert DWORD offbytes 54 Position der Pixeldaten in der Datei Tabelle 2: Die Struktur für den file header. type. In die ersten zwei Bytes werden die ASCII-Codes der Buchstaben B und M gespeichert und in dem Element type zusammengefasst. (Beim Schreiben des Typs WORD wird das niederwertige Byte zuerst geschrieben. Mit der Formel type= B +256* M wird B in das niederwertige und M in das höherwertige Byte geschrieben.) filesize. Die Dateigröße filesize muss berechnet werden und gibt in Summe die Größe der vier Blöcke in Byte an. reserved. Dieses dritte Element ist für spätere Versionen des Formats vorgesehen und wird bis dahin immer mit dem Wert 0 beschrieben. offbytes. Schließlich wird als viertes Element die Position der Pixeldaten innerhalb der Datei angegeben. Für Bilder im true color Format beträgt dieser Wert immer 54, was der Summe der Größe der ersten zwei Blöcke entspricht. 2.3 Der info header Der info header setzt sich aus den in Tabelle 3 aufgelisteten Elementen zusammen und hat eine Größe von 40 Byte. Datentyp Name Wert Beschreibung DWORD infosize 40 Größe des info headers LONG width <Breite> Breite des Bilds in Pixeln LONG height <Höhe> Höhe des Bilds in Pixeln WORD planes 1 Anzahl der Bildebenen (immer 1) WORD bitcount 24 Bits pro Pixel (hier jeweils 8 Bit für die Farben) DWORD compression 0 Art der Kompression (0 für keine Kompression) DWORD imagesize 0 Größe der Pixeldaten in Byte (0 = automatisch) LONG xpixelspermeter 1000 Pixel/Meter in x-richtung (hier 1 Pixel = 1 mm) LONG ypixelspermeter 1000 Pixel/Meter in y-richtung (hier 1 Pixel = 1 mm) DWORD colorused 0 Anzahl der verwendeten Farben in LUT DWORD colorimportant 0 Anzahl der wichtigen Farben in LUT Tabelle 3: Die Struktur für den info header. In diesem Praktikum muss nur die Bildgröße angepasst werden. Alle anderen Werte bleiben unverändert. Auf die Details der anderen Elemente wird hier nicht weiter eingegangen. 2.4 Die look up table, LUT Die LUT dient einigen Varianten des Bitmap-Formats und ist von daher optional. In diesem Praktikum wird sie nicht verwendet und wird hier nicht weiter behandelt Prof. Dr. Robert Heß 2/6

3 2.5 Der Block pixel data Im Block pixel data stehen die Pixeldaten des Bildes. Je nach gewählter Variante werden hier entweder direkt die Farben eingetragen (true color), oder es finden sich hier Indices, mit denen über die LUT die Farben der Pixel ermittelt werden. In diesem Praktikum verwenden wir ausschließlich die Variante true color. Für die Farben erstellen wir eine weitere Struktur, siehe Tabelle 4. Die Pixel eines Bildes werden beginnend mit der untersten Zeile des Bildes von links nach rechts in die Datei eingetragen. Datentyp Name Wert Beschreibung BYTE blue <blau> blauer Farbanteil im Pixel BYTE green <grün> grüner Farbanteil im Pixel BYTE red <rot> roter Farbanteil im Pixel Tabelle 4: Die Struktur für true color pixel. Wichtiger Hinweis: Auch wenn die Bilder beliebig breit sein können, muss in der Datei die Anzahl der Bytes pro Zeile ein vielfaches von vier betragen! Um das zu erreichen, müssen am Ende einer jeden Pixelzeile zwischen null und drei Bytes angehängt werden. Diese angehängten Bytes müssen auch bei der Berechnung der Dateigröße im file header berücksichtigt werden. Die angehängten Bytes sind nur ein Lückenfüller und werden von Grafikprogrammen bei der Anzeige nicht ausgewertet. Beispiel: Wenn ein Bild 19 Pixel breit sein soll, werden true color Format pro Zeile 3*19=57 Bytes für die Pixeldaten benötigt. Um ein Vielfaches von 4 zu erreichen (60), müssen beim Speichern bei jeder Zeile drei Byte angehängt werden. Siehe auch Abbildung 1 für eine Breite von fünf Pixeln. Abbildung 1: Beispiel für angehängte Bytes: Bei einer Breite von 5 Pixeln muss an jede Zeile ein Byte angehängt werden, damit die Anzahl der Bytes ein Vielfaches von vier ergibt. 2.6 Ausrichtung der Elemente einer Struktur im Speicher Die Elemente einer Struktur werden standardmäßig im Speicher auf 8 Byte-Blöcke ausgerichtet. Dadurch wird vermieden, dass ein Element unnötig eine 8 Byte-Grenze überschreitet. Das führt dazu, dass an einigen Stellen eine Lücke in Kauf genommen wird, um im Gegenzug die Geschwindigkeit zu erhöhen. Diese Lücken führen dazu, dass eine Struktur im Speicher mehr Platz als die Summe der Elemente der Struktur belegt. Beim Schreiben oder Lesen einer Struktur als Ganzes führt das zu Problemen. Um das zu vermeiden, kann dem Compiler explizit mitgeteilt werden, dass er seine Elemente an einem anderen Raster ausrichtet. Folgende Zeile sorgt dafür, dass alle folgenden Strukturen auf ein Raster von nur 2 Byte ausgerichtet werden: Prof. Dr. Robert Heß 3/6

4 #pragma pack(push, 2) Der Befehl für den Pre-Compiler pragma gibt Anweisungen an den Compiler. Der Befehl pack ist für die Ausrichtung von Strukturelementen im Speicher zuständig. Mit push wird dafür gesorgt, dass der alte Wert für die Speicher-Ausrichtung gespeichert wird. Mit der Zahl 2 werden die Elemente von Strukturen ab dieser Zeile auf zwei Byte ausgerichtet. Die folgende Zeile hebt den vorherigen Befehl wieder auf: #pragma pack(pop) Mit pop wird die zuvor mit push zwischengespeicherte Speicher-Ausrichtung wieder reaktiviert. Schreiben Sie diese beiden Zeilen um Ihre Struktur-Deklarationen herum, um Probleme beim Schreiben und Lesen einer Bitmap-Datei zu vermeiden. 3 Obligatorische Aufgaben 3.1 Strukturen anlegen Deklarieren Sie in einer Headerdatei bitmap.h die oben angegebenen Typen und Strukturen und vergeben Sie mit typedef folgende Namen: BYTE, WORD, DWORD, LONG, tfileheader, tinfoheader und trgb. Prüfen Sie mit sizeof(tfileheader), dass die Größe der Struktur genau 14 Byte beträgt. Erstellen Sie als nächstes wieder in bitmap.h eine Struktur für die gesamte Bitmap gemäß Tabelle 5. Geben Sie der Struktur mit typedef den Namen tbmp und definieren Sie in main() einen Zeiger auf diesen Typ mit Namen bmp und initialisieren Sie ihn mit NULL. Datentyp Name Beschreibung tfileheader* pfile Zeiger auf den file header tinfoheader* pinfo Zeiger auf den info header trgb** pixel Zeiger für Pixeldaten char* data Zeiger zur dynamischer Speicherreservierung Tabelle 5: Die Struktur für den file header. Ähnlich wie beim Arbeiten mit Dateien soll diese Variable als Bindeglied zwischen allen Funktionen zum Bearbeiten der Bitmap dienen. 3.2 Strukturen initialisieren Erstellen Sie in einer Quellcodedatei bitmap.c eine Funktion zum Erstellen und Initialisieren einer Bitmap: tbmp createbmp ( int width, int height ) ; In einem ersten Schritt muss dynamischer Speicher reserviert und die Zeiger dafür initialisiert werden. Es werden drei Speicherblöcke benötigt: 1. Speicher für die Struktur tbmp. 2. Speicher für die Daten der Bitmap. In diesem Speicherblock werden hintereinander der file header, der info header und die Pixeldaten gespeichert. Dieser Block kann später als ganzes in eine Datei geschrieben werden Prof. Dr. Robert Heß 4/6

5 3. Speicher für einen Zeigervektor, über den die Pixel als zweidimensionaler Vektor angesprochen werden können. Für eine Bitmap mit 3 3 Pixeln ist die Verknüpfung der Speicherblöcke in Abbildung 2 schematisch dargestellt. xxx steht für die angehängten Bytes (hier drei Bytes), damit die Anzahl der Bytes pro Zeile durch vier teilbar ist. tbmp* Zeiger auf Bitmap (statisch) tfileheader* tinfoheader* trgb** char* tbmp (dynamisch) Zeigervektor (dynamisch) trgb* trgb* trgb* Bitmap (dynamisch) tfileheader tinfoheader trgb trgb trgb xxx trgb trgb trgb xxx trgb trgb trgb xxx Abbildung 2: Speicherbelegung der Stukturen. Nachdem die Datenstrukturen erstellt und verlinkt wurden, müssen danach alle Datenfelder initialisiert werden. Gehen Sie dafür die Tabellen 2 und 3 durch und füllen Sie die Strukturelemente entsprechend auf. Initialisieren Sie die Pixeldaten mit null (schwarzes Bild). Bei einem Fehler soll die Adresse NULL zurückgeben werden. 3.3 Bitmap freigeben Erstellen Sie in der Quellcodedatei bitmap.c eine Funktion, die den Speicher der Bitmap freigibt: void freebmp ( tbmp bmp ) ; Die Funktion prüft, ob die Bitmap vorhanden ist (d.h. bmp!=null), und gibt dann ggf. den reservierten Speicher frei. 3.4 Bitmap in eine Datei schreiben Erstellen Sie in der Quellcodedatei bitmap.c eine Funktion, welche die erstellte Bitmap binär in eine Datei schreibt: int writebmp ( char filename, tbmp bmp ) ; Die Bitmap kann mit einem einzigen fwrite()-befehl in die Datei geschrieben werden. 3.5 Funktion zum Zeichnen eines Pixels Erstellen Sie eine Funktion zum Zeichnen eines Pixels: void setpixelbmp ( int x, int y, BYTE red, BYTE green, BYTE blue, tbmp bmp ) ; Die Funktion prüft, ob eine Bitmap vorhanden ist und ob sich die Koordinaten x und y innerhalb des Bildes befinden. Ist dies der Fall, trägt die Funktion die übergebenen Farben an der entsprechenden Stelle in das Bitmap ein Prof. Dr. Robert Heß 5/6

6 3.6 Zusammenfassung in einem Programm Fassen Sie die bisher erstellten Programmstücke in einem Hauptprogramm zusammen. Fragen Sie vom Benutzer die Größe des Bildes ab, erstellen Sie die Bitmap, zeichnen Sie einige Pixel mit unterschiedlichen Farben und schreiben Sie die Bitmap in eine Datei. Das Bild können Sie z.b. mit Paint von Microsoft lesen und weiter bearbeiten. 4 Optionale Aufgaben 4.1 Funktion zum Zeichnen einer Linie Erstellen Sie eine Funktion zum Zeichnen einer Linie: void drawlinebmp ( int x1, int y1, int x2, int y2, BYTE red, BYTE green, BYTE blue, tbmp bmp ) ; Es sollen beliebige Koordinaten möglich sein. Liegen die Koordinaten außerhalb des Bildes, so soll nur der sichtbare Teil der Linie gezeichnet werden. 4.2 Funktion zum Zeichnen eines Kreises Erstellen Sie eine Funktion zum Zeichnen eines Kreises: void drawcirclebmp ( int xmid, int ymid, int radius, BYTE red, BYTE green, BYTE blue, tbmp bmp ) ; 4.3 Funktion zum Zeichnen eines ausgefüllten Rechtecks Erstellen Sie eine Funktion zum Zeichnen eines ausgefüllten Rechtecks: void drawbarbmp( int x1, int y1, int x2, int y2, BYTE red, BYTE green, BYTE blue, tbmp bmp ) ; Viel Erfolg beim Programmieren! Prof. Dr. Robert Heß 6/6

4. Aufgabe: Medizinische Bilder

4. Aufgabe: Medizinische Bilder 4. Aufgabe: Medizinische Bilder 1 Einleitung In der modernen Medizin gibt es zahlreiche bildgebende Verfahren, die eine zuverlässige Diagnose unterstützen. Eine große Rolle spielen dabei das klassische

Mehr

7. Organisation von Informationen

7. Organisation von Informationen Computeranwendung in der Chemie Informatik für Chemiker(innen) 7. Organisation von Informationen Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL7 Folie 1 Grundlagen Programme

Mehr

Übungsblatt 1. Java Vorkurs (WS 2017)

Übungsblatt 1. Java Vorkurs (WS 2017) Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die

Mehr

Objekte werden eindeutig beschrieben durch ihren Typ und einen beliebig wählbaren Bezeichner.

Objekte werden eindeutig beschrieben durch ihren Typ und einen beliebig wählbaren Bezeichner. Grundlegende Deklarationen Seite 1 von 6 Jedes Programm benötigt Objekte. Ein Objekt ist ein reservierter Bereich im Systemspeicher in welchem Informationen abgelegt werden. Informationen sind z.b. Zahlen,

Mehr

Klausur. 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.

Klausur. 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben. Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Anfang SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll

Mehr

Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek 25. März 2011

Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek 25. März 2011 Kompaktkurs Einführung in die Programmierung Klausur Seite 1/10 Name, Vorname, Unterschrift: Matrikelnummer: Wichtig: Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek

Mehr

Auslesen einer Bitmap-Ressource: 16bpp BGR565

Auslesen einer Bitmap-Ressource: 16bpp BGR565 Auslesen einer Bitmap-Ressource: 16bpp BGR565 1 Grundlagen... 2 1.1 Vorbemerkungen... 2 1.2 Die Farbinformationen... 2 1.3 Gewinnen der Farbinformationen... 2 1.3.1 Farbinformationen Blau... 2 1.3.2 Farbinformation

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

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff Programmieren in C Speicher anfordern, Unions und Bitfelder Prof. Dr. Nikolaus Wulff Vergleich: Felder und Strukturen Felder müssen Elemente vom selben Typ enthalten. Strukturen können Elemente unterschiedlichen

Mehr

2.1 Fundamentale Typen

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

Mehr

GI Vektoren

GI Vektoren Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung

Mehr

Arbeitsblatt 6: Programmierung geometrischer Figuren

Arbeitsblatt 6: Programmierung geometrischer Figuren Arbeitsblatt 6: Programmierung geometrischer Figuren Die Karten, auf denen die Lärmmessungen dargestellt werden, bestehen aus einer Vielzahl geometrischer Formen. Diese geometrischen Formen ergeben zusammen

Mehr

Automatische Ballerkennung

Automatische Ballerkennung 7. Juli 2008 1 Grundlegende Vorgehensweise 2 Einführung VCAM von Mikrotron profil kann geladen werden, Bilder werden angezeigt und können gespeichert werden VCAM von Mikrotron profil kann geladen werden,

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

HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren

HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren Prof. Dr. M. Zeller Datum, Zeit, 08:00 10:00 Uhr (120 min) Aufgabenblätter 12 Seiten (einschl. Deckblatt) erreichbare Punktzahl 58 zugelassene

Mehr

Java programmieren mit JavaKara. Eine Zusammenfassung in Beispielen

Java programmieren mit JavaKara. Eine Zusammenfassung in Beispielen Java programmieren mit JavaKara Eine Zusammenfassung in Beispielen Kleeblätter in einer Zeile zählen @Override public void mymainprogram() { int anzahlkleeblaetter = 0; for (int x = 0; x < world.getsizex();

Mehr

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Geben

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 4 Storage classes Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Compilation units Compilierung eines mehrteiligen Programms:

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 4 Storage classes Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Compilation units Compilierung eines mehrteiligen Programms:

Mehr

Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid. Übung zur Vorlesung

Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid. Übung zur Vorlesung Übung zur Vorlesung Digitale Medien Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid Wintersemester 2016/17 Bildgröße und Auflösung Beispiel: Bild mit 2560 x 1920 Pixel Größe. Breite [px] = Breite

Mehr

Übung zur Vorlesung. Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider

Übung zur Vorlesung. Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider Übung zur Vorlesung Digitale Medien Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider Wintersemester 2015/16 Bildgröße und Auflösung Beispiel: Bild mit 2560 x 1920 Pixel Größe. Breite

Mehr

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer Block 1 1. Welcher Wert hat w? int w = 034; 28 (Dezimal) 034 wird als Octal interpretiert 34oct = 28dec 2. Wie lauten die Ergebnisse? unsigned int a = 3, b = 5, c = 7; unsigned int x, y, z; x = a == 3;

Mehr

Variablen, Konstanten und Datentypen

Variablen, Konstanten und Datentypen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Variablen, Konstanten und Datentypen Überblick

Mehr

Hello World! Eine Einführung in das Programmieren Variablen

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

Mehr

Objekte. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 5. 1 Modulübersicht 3

Objekte. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 5. 1 Modulübersicht 3 Programmieren mit Java Modul 5 Objekte Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Klassen und Objekte 3 2.1 Klassen.................................... 4 2.2 Objektvariablen und Methoden.......................

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

Übung zur Vorlesung Digitale Medien. Dr. Alexander De Luca Ludwig-Maximilians-Universität München Wintersemester 2013/2014

Übung zur Vorlesung Digitale Medien. Dr. Alexander De Luca Ludwig-Maximilians-Universität München Wintersemester 2013/2014 Übung zur Vorlesung Digitale Medien Dr. Alexander De Luca Ludwig-Maximilians-Universität München Wintersemester 2013/201 1 Bildgröße und Auflösung (1) Breite [px] = Breite [in] * Auflösung [ppi] Beispiel:

Mehr

Teilprüfung Software- und Internettechnologie Programmierkurs 2 Wintersemester 2004/2005

Teilprüfung Software- und Internettechnologie Programmierkurs 2 Wintersemester 2004/2005 Universität Mannheim Fakultät für Mathematik und Informatik Lehrstuhl für Praktische Informatik IV Prof. Dr. Wolfgang Effelsberg Teilprüfung Software- und Internettechnologie Programmierkurs 2 Wintersemester

Mehr

Tagged Image File Format. Im Printbereich neben EPS sehr verbreitet.

Tagged Image File Format. Im Printbereich neben EPS sehr verbreitet. 1.1 Pixelgrafik (auch ) Beispiel: Bei en wird das Bild in kleine Quadrate (Pixel) zerlegt. Für jedes Pixel wird die entsprechende Farbe gespeichert. Ein Foto kann nur durch eine große Zahl von Pixeln realistisch

Mehr

HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren

HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren Prof. Dr. M. Zeller Datum, Zeit, 08:00 10:00 Uhr (120 min) Aufgabenblätter 16 Seiten (einschl. Deckblatt) erreichbare Punktzahl 58 zugelassene

Mehr

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

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1 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 1 SS 2016

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

1. Aufgabe (6 Punkte)

1. Aufgabe (6 Punkte) Nachname:... Vorname:... MatrNr.:... Klausur PR2 HAW-Hamburg, Fakultät Technik und Informatik, Department Informations- und Elektrotechnik Dr. Robert Heß, 1.2.2008 Bearbeitungsdauer: 90 min Hilfsmittel:

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

Nachname:... Vorname:... MatrNr.:... Klausur PR2. Erstellen Sie eine Struktur für eine Komplexe Zahl mit den Elementen real und imag vom Typ double.

Nachname:... Vorname:... MatrNr.:... Klausur PR2. Erstellen Sie eine Struktur für eine Komplexe Zahl mit den Elementen real und imag vom Typ double. Nachname:... Vorname:... MatrNr.:... Klausur PR2 HAW-Hamburg, Fakultät Technik und Informatik, Department Informations- und Elektrotechnik Dr. Robert Heß, 4.7.2008 Bearbeitungsdauer: 90 min Hilfsmittel:

Mehr

2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.

2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben. Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Ende SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll im

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 2 Arrays und Pointer Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät statische Arrays Deklaration (eindimensional): /* 40

Mehr

ÜBUNGS-BLOCK 7 LÖSUNGEN

ÜBUNGS-BLOCK 7 LÖSUNGEN ÜBUNGS-BLOCK 7 LÖSUNGEN Aufgabe 1: Gegeben ist folgender Code: Auto[] array = new Auto[3]; // Alle Autos im Array tunen: for (int i = 1; i

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

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 2 AM 10.05.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

Mehr

Pseudo-Programmiersprache

Pseudo-Programmiersprache 1 Erste Schritte in C++ 4 Beschreibungsmöglichkeiten für Algorithmen Struktogramm Das gezeigte Struktogramm enthält die elementaren Grundstrukturen Folge, Auswahl und Schleife. Diese werden in einem der

Mehr

Mehrdimensionale Arrays

Mehrdimensionale Arrays Mehrdimensionale Arrays Prof. Dr.-Ing. Thomas Schwotzer 1 Einführung Eindimensionale Arrays haben wir bereits kennen gelernt. Es gibt aber auch mehrdimensionale Arrays. Die sind auch sehr notwendig, denken

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

Grundlagen und Konzepte von C Datenstrukturen

Grundlagen und Konzepte von C Datenstrukturen Grundlagen und Konzepte von C Datenstrukturen Ausarbeitung von Andreas Gadelmaier Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik,

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 11 Was bisher verschwiegen wurde Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Type qualifier Typen können mit folgenden

Mehr

1. Laboraufgabe. Grafische Nutzerschnittstellen. Studiengang I / IEA / SAT

1. Laboraufgabe. Grafische Nutzerschnittstellen. Studiengang I / IEA / SAT 1. Laboraufgabe Grafische Nutzerschnittstellen Studiengang I / IEA / SAT FB Automatisierung und Informatik: Grafische Nutzerschnittstellen 1 1. Laboraufgabe: Die Aufgabe lautet, ein Javaprogramm zu schreiben,

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 11 Was bisher verschwiegen wurde Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Type qualifier Typen können mit folgenden

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15 Vorwort... 15 1 Einstieg in die Welt von C 17 1.1 Die Sprache C... 17 1.2 Die C-Standardbibliothek... 18 1.3 Die nötigen Werkzeuge für C... 21 1.4 Übersetzen mit der Entwicklungsumgebung... 23 1.5 Übersetzen

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dynamische Datenobjekte Pointer/Zeiger, Verkettete Liste Eigene Typdefinitionen 1 Zeigeroperatoren & und * Ein Zeiger ist die Speicheradresse irgendeines Objektes. Eine

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

Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3

Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3 Programmieren mit Java Modul 3 Arrays Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Eindimensionale Arrays 3 2.1 Arrays deklarieren.............................. 3 2.2 Arrays erzeugen................................

Mehr

Arduino Kurs Das LC-Display. Stephan Laage-Witt FES Lörrach

Arduino Kurs Das LC-Display. Stephan Laage-Witt FES Lörrach Arduino Kurs Das LC-Display Stephan Laage-Witt FES Lörrach - 2018 Themen LC-Display zur Anzeige von Text Serieller Datenbus Ausgabe von Zeichen, Texten und Zahlen FES Lörrach Juli 2017 2 LC-Display zur

Mehr

Arrays (Felder/Vektoren)

Arrays (Felder/Vektoren) Arrays (Felder/Vektoren) Zusammenfassung mehrerer Variablen des gleichen Typs unter einem Namen im Speicher direkt hintereinander abgelegt Definition: Typname Arrayname [Größe]; Beispiel: int ar [5]; Zugriff

Mehr

Aufgabenblatt 4. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt:

Aufgabenblatt 4. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt: Aufgabenblatt 4 Kompetenzstufe 1 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 08.12.2017 13:00 Uhr in TUWEL hoch.

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

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom bis zum 4.6.

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom bis zum 4.6. Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom 31.5. bis zum 4.6.2010 (KW 22) Organisatorisches Diese Woche führen wir Methoden ein und behandeln

Mehr

Mussten wir eine ganze Reihe solcher Zahlen speichern, haben wir das eindimensionale Array verwendet.

Mussten wir eine ganze Reihe solcher Zahlen speichern, haben wir das eindimensionale Array verwendet. C Zweidimensionale Arrays Fachspezifische Softwaretechnik 1 Scriptum 2017 HTL St.Pölten Elektronik und Technische Informatik EL Autor: Kuran Zweidimensionale Arrays: Bisher konnten wir in Variablen einfache

Mehr

Inhalt. 4.5 Arbeit mit Zeigern (engl. Pointer)

Inhalt. 4.5 Arbeit mit Zeigern (engl. Pointer) Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Zeigern

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

Zeiger in C und C++ Zeiger in Java und C/C++

Zeiger in C und C++ Zeiger in Java und C/C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,

Mehr

Teil 6: Strukturen und Unionen Gliederung

Teil 6: Strukturen und Unionen Gliederung Teil 6: Strukturen und Unionen Gliederung Strukturen Typdefinitionen Unionen Dynamische Speicherverwaltung Strukturen Typdefinitionen Unionen Dynamische Speicherverwaltung Strukturen 6.2 Strukturen Typdefinitionen

Mehr

Prozeduren vs. Funktionen

Prozeduren vs. Funktionen Prozeduren vs. Funktionen Mit der Formalisierung wird auch der Unterschied zwischen Prozeduren und Funktionen noch einmal klar. Der Aufruf beider Varianten bewirkt zunächst das Gleiche: die Eingabevariablen

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Erklären

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben

Mehr

Digitale Medien. Übung

Digitale Medien. Übung Digitale Medien Übung Heute Bildgröße und Auflösung Grundlagen Bildbearbeitung Bildauflösung Bildgröße und Auflösung Breite [px] = Breite [in] * Auflösung [ppi] Beispiel: 1 Inch (Zoll) = 2,5cm Bild mit

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 und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

Zeiger. C-Kurs 2012, 2. Vorlesung. Tino Kutschbach 10.

Zeiger. C-Kurs 2012, 2. Vorlesung. Tino Kutschbach  10. Zeiger C-Kurs 2012, 2. Vorlesung Tino Kutschbach tino.kutschbach@campus.tu-berlin.de http://wiki.freitagsrunde.org 10. September 2012 This work is licensed under the Creative Commons Attribution-ShareAlike

Mehr

+ C - Array (Vektoren, Felder)

+ C - Array (Vektoren, Felder) + C - Array (Vektoren, Felder) Eindimensionale Arrays Beim Programmieren steht man oft vor dem Problem, ähnliche, zusammengehörige Daten (vom gleichen Datentyp) zu speichern. Wenn man zum Beispiel ein

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

3. Mit Dateien arbeiten

3. Mit Dateien arbeiten 3. Mit Dateien arbeiten Übungsbeispiel Nachdem Sie gelernt haben, Programme zu starten, werden Sie in diesem Kapitel ein Programm benutzen, um Dateien zu erstellen. Sie werden lernen, einen Text zu schreiben

Mehr

Farbtiefe. Gängige Farbtiefen

Farbtiefe. Gängige Farbtiefen Farbtiefe Die Anzahl der darstellbaren Farben ist abhängig von den Farbabstufungen, die in einem Pixel gespeichert werden. Die Anzahl der darstellbaren Farbtöne wird als Farbtiefe bezeichnet. Die Farbtiefe

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

Klausur: Informatik, am 11. Juli 2013 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik, am 11. Juli 2013 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Was liefert

Mehr

In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es.

In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es. In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es. Im Spiel fällt ein Meteor vom oben zum unteren Rand. Das Raumschiff

Mehr

Kap 9. Bitoperationen und -strukturen

Kap 9. Bitoperationen und -strukturen Kap 9. Bitoperationen und -strukturen 9.1 Anwendung von Bits Im Gegensatz zu den üblicherweise Byte-orientierten Daten gibt es auch Bit-Anwendungsbeispiele Statusanzeigen bei Ein-/Ausgabe (Stream-Klassen)

Mehr

int i=1; //Integerzahl i anlegen und mit 1 initialisieren float wert; //Floatzahl deklarieren scanf( %f,&wert); //Wert über Tastatur eingeben

int i=1; //Integerzahl i anlegen und mit 1 initialisieren float wert; //Floatzahl deklarieren scanf( %f,&wert); //Wert über Tastatur eingeben Datenfelder (Array) Seite 1 von 7 Bei den bisherigen Programmen wurde für jede verwendete Variable (oder für jedes Objekt) ein eigener Typ und Name vergeben. Die Initialisierung, d.h. die Belegung mit

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

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

Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher

Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher Arvid Terzibaschian 1 Zusammengesetzte Datentypen 2 Wozu zusammengesetzte Datentypen? Anforderung: Sie sollen ein Kundenverzeichnis

Mehr

C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen. Leibniz Universität IT Services Anja Aue

C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen. Leibniz Universität IT Services Anja Aue C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen Leibniz Universität IT Services Anja Aue Zeiger (Pointer) Verweis auf eine Speicherstelle. Speicherung einer Speicheradresse.

Mehr

Java Übung. Übung 2. Werner Gaulke. 19. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.

Java Übung. Übung 2. Werner Gaulke. 19. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Java Übung Übung 2 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 19. April 2006 (UniDUE) 19. April 2006 1 / 13 Java Programme Java Programme bestehen aus (meist mehreren) Klassen. In den Klassen

Mehr

Praktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14

Praktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14 Praktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14 Fakultät für Informatik Lehrstuhl 1 Dr. Lars Hildebrand Iman Kamehkhosh, Marcel Preuÿ, Henning Timm Übungsblatt 2

Mehr

Klausur: Informatik, am 11. Juli 2013 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik, am 11. Juli 2013 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Geben

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

Aufgabe 2 -Grafische Messwertdarstellung. Labor Mikrocontroller mit NUC130. Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) J.Hampel Dipl.-Ing. (FH) A.

Aufgabe 2 -Grafische Messwertdarstellung. Labor Mikrocontroller mit NUC130. Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) J.Hampel Dipl.-Ing. (FH) A. Aufgabe 2 -Grafische Messwertdarstellung Labor Mikrocontroller mit NUC130 Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) J.Hampel Dipl.-Ing. (FH) A. Reber 22.10.2014 Inhalt 1 Einführung und Grundlagen... 2 1.1

Mehr

Felder, Zeiger und Adreßrechnung

Felder, Zeiger und Adreßrechnung Felder, Zeiger und Adreßrechnung Felder bestehen aus Variablen eines einzigen Datentyps. Bisher kennen wir eindimensionale Felder. In C sind Felder mit beliebigen Dimensionen möglich. Unsere räumliche

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

Zeiger (engl. Pointer)

Zeiger (engl. Pointer) Zeiger (engl. Pointer) Zeiger Ein Zeiger (engl. Pointer) speichert eine Adresse, unter der ein Wert im Speicher des Computers gespeichert werden kann. Eine Variable im Gegensatz speichert einen Wert. Der

Mehr

Felder (1) Allgemeines

Felder (1) Allgemeines Felder (1) Allgemeines Gleichartige Daten, wie Tabelle von Zahlen, Datumswerten, Namen etc. Felder (engl. Array) stellen einen Verbundtyp dar, in dem mehrere Daten desselben Typs gespeichert werden Oft

Mehr

*** Viel Erfolg! ***

*** Viel Erfolg! *** Hochschule München, FK 03 SS 2016 Ingenieurinformatik C-Programmierung Zulassung geprüft: Bachelorstudiengang: Studienbeginn vor WS13/14 (Kombinationsprüfung) ** Studienbeginn ab WS13/14 bis WS15/16 **

Mehr

Grundlagen von C# - 1

Grundlagen von C# - 1 Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften

Mehr

3.2 Datentypen und Methoden

3.2 Datentypen und Methoden Kap03.fm Seite 217 Dienstag, 7. September 2010 1:48 13 3.2 Datentypen und Methoden 217 3.2 Datentypen und Methoden Wie bei vielen höheren Programmiersprachen gibt es auch in Java einfache und strukturierte

Mehr

Informatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5

Informatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5 Informatik 1 (251-0832-00) D-MAVT F2010 Schleifen, Felder Nachbesprechung Blatt 3 Aufgabe 1 ASCII... A > a Vorsicht: Lösen Sie sich von intuitiven Schlussfolgerungen. A ist nicht grösser als a, denn in

Mehr