Übungspaket 12 Der Datentyp char
|
|
- Greta Falk
- vor 5 Jahren
- Abrufe
Transkript
1 Übungspaket 1 Der Datentyp char Übungsziele: Skript: 1. Umgang mit dem Datentyp char,. Deklarationen von char-variablen, 3. char-konstanten 4. und char-rechenoperationen. Kapitel: 9 bis 31 sowie 4, 5 und 7 Semester: Wintersemester 018/19 Betreuer: Thomas, Tim und Ralf Synopsis: In diesem Übungspaket gibt es einiges zum Thema Zeichen. Die Struktur der Aufgaben ähnelt sehr den vorherigen. Neben der eigentlichen Zeichenverarbeitung ist die Umwandlung von Werten des Datentyps char in Werte des Datentyps int und umgekehrt Teil dieses Übungspaketes.
2 Teil I: Stoffwiederholung Aufgabe 1: Notation von Zeichenkonstanten In Vorlesung und Skript haben wir gesehen, dass in der Programmiersprache C Zeichen in drei verschiedenen Formen angeben können. Vervollständige folgende Tabelle: C-Notation Zeichen Zeichen Escape/Oktal Ganzzahl Hexadezimal Großbuchstabe A A \ x41 Semikolon ; \73, \ x3B Ziffer 3 3 \63, \ x33 Nullbyte \0, \00, \ x0 Aufgabe : Ein- und Ausgabe Erläuter anhand von zwei Beispielen, wie Zeichen ein und ausgelesen werden können? Format: %c, %nc Eingabe: scanf( "%c", & c ) Ausgabe: printf( "%3c", c ) Aufgabe 3: Zeichen und deren ASCII-Werte Schreibe ein kleines Testprogramm, das die Zeichen A bis Z nebst ihrer zugehörigen ASCII Werte in tabellarischer Form ausgibt. Frage: Muss man bei der Aufgabe die konkrete ASCII-Kodierung der einzelnen Zeichen selber in der ASCII-Tabelle nachschlagen oder kann das der Compiler dies erledigen? nein, der Compiler kann es: Zeichen 5 char c; 6 printf ( " Zeichen Dezimalwert \n" ); 7 for ( c = A ; c <= Z ; c = c + 1 ) 8 printf ( "%7c %d\n", c, c ); 9 } 1-1 Wintersemester 018/19, Einführung in die Praktische Informatik
3 Teil II: Quiz Aufgabe 1: Datentyp char vs. Datentyp int Der Datentyp char gehört zu den Ganzzahldatentypen, da die einzelnen Zeichen einzeln aufgeführt werden können. Aber dennoch gibt es einige Unterschiede zum Datentyp int. Diese Unterschiede betreffen in erster Linie die Zahl der verwendeten Bytes im Arbeitsspeicher und damit die Zahl der verfügbaren Bits und dem daraus resultierenden Wertebereich. Ergänze folgende Tabelle: Datentyp # der Bytes # der Bits Wertebereich int bis char bis 17 bzw. 0 bis 55 Aufgabe : Ausdrücke Welche Werte erhalten die Variablen char c und int i durch die angegebenen Ausdrücke? Ausdruck c = a + 1 c = m - 1 c = a + 4 c = m - a + A Resultat c = b c = l c = e c = M Ausdruck Resultat c = n - z + Z c = N c = P - A + a + 1 c = q i = z - a i = 5 i = 9-0 i = 9 Aufgabe 3: Datentypen Im Zusammenhang mit Variablen und Werten vom Typ char gibt es immer wieder Fragen bezüglich des resultierenden Datentyps. In den folgenden Ausdrücken gilt folgende Variablendefinition: char c und int i Ausdruck Datentyp c char a int \101 int Ausdruck c + 1 c - 0 c + i Datentyp int int int Hinweis: Die Anweisung printf("%d\n", Ausdruck) gibt einen Hinweis auf den resultierenden Typ. Ausdruck kann eine Variable, ein Ausdruck oder ein Typ sein. Einführung in die Praktische Informatik, Wintersemester 018/19 1-
4 Teil III: Fehlersuche Aufgabe 1: Summenberechnung mit kleinen Fehlern Das folgende Programm soll die Summe der Zeichen a bis z, A bis Z und 0 bis 9 bestimmen. Leider sind dem Programmierer wieder einmal ein paar kleine Fehler unterlaufen. Finde die 14 Fehler und korrigiere sie: 1 # include stdio.h 5 char c, 6 int s. 7 for ( s = a, c = b ; c < z ; c = c + 1 ) 8 s = c; 9 for ( c = A ; c >= Z"; c = + 1 ) 10 s = s + c; 11 for ( c "9 ; c > 0, c = c + 1 ) 1 s = s + c; 13 printf ( " summe = %d\n, s ); 14 ] Zeile Fehler Erläuterung Korrektur 1... statt <...> Die standard.h-dateien müssen in <...> angegeben werden. <stdio.h> 5/6,/. statt ; Alle Anweisungen müssen mit einem Semikolon abgeschlossen werden. char c; int x; 7 < statt <= Gemäß Aufgabentellung muss auch das z mit zur Summe gezählt werden. Daher muss dort der <= Operator stehen. c <= z 8 s + fehlt Es fehlt die Summenbildung. s = s + c 9 c fehlt So wird c nicht weitergeschaltet. c = c Die for- Schleife ist mehrfach fehlerhaft Entweder soll innerhalb der for-schleife aufwärts oder abwärts gezählt werden. Für keine dieser beiden Möglichkeiten passen die Angaben zusammen. Wir entscheiden uns fürs Abwärtszählen. for( c = 9 ; c >= 0 ; c = c - 1 ) 13 statt " Die Ausgabeanweiung benötigt die Textausgaben in Gänsefüßchen "..." eingeschlossen werden. "su... " 1-3 Wintersemester 018/19, Einführung in die Praktische Informatik
5 Programm mit Korrekturen: 5 char c; 6 int s; 7 for ( s = a, c = b ; c <= z ; c = c + 1 ) 8 s = s + c; 9 for ( c = A ; c <= Z ; c = c + 1 ) 10 s = s + c; 11 for ( c = 9 ; c >= 0 ; c = c - 1 ) 1 s = s + c; 13 printf ( " summe = %d\n", s ); 14 } Einführung in die Praktische Informatik, Wintersemester 018/19 1-4
6 Teil IV: Anwendungen Aufgabe 1: Umwandlung von Ziffern in Zahlen Ein echter Klassiker: Schreibe ein kleines Programm, das eine einzelne Ziffer, also die Zeichen von 0 bis 9, in ihren entsprechenden Zahlenwerte, also ints von 0 bis 9, umwandelt. Das folgende Programmschnipsel zeigt, wie ihr es nicht machen sollt... 5 char zeichen ; 6 int zahl ; 7 zeichen = 5 ; 8 switch ( zeichen ) 9 { 10 case 0 : zahl = 0; break ; 11 case 1 : zahl = 1; break ; 1 case : zahl = ; break ; 13 case 3 : zahl = 3; break ; 14 case 4 : zahl = 4; break ; 15 case 5 : zahl = 5; break ; 16 case 6 : zahl = 6; break ; 17 case 7 : zahl = 7; break ; 18 case 8 : zahl = 8; break ; 19 case 9 : zahl = 9; break ; 0 } 1 printf ( " Zeichen = %c Zahl = %d\n", zeichen, zahl ); } Eine derartige Umwandlung geht mit einer einfachen Anweisung. Überlege zunächst, in welchem Zusammenhang die ASCII-Zeichen und deren Kodierung zueinander stehen. Formuliere und erkläre die entsprechende C-Anweisung, und schreibe ein entsprechendes Testprogramm: Alle Ziffern sind in der ASCII-Tabelle nacheinander angeordnet, sodass sich die Werte benachbarter Ziffern um eins unterscheiden. Beispielsweise ist der (ASCII-) Wert der Ziffer 7 um genau eins größer als der (ASCII-) Wert der Ziffer 6. Den Wert einer beliebigen Ziffer bekommt man, in dem man vom ASCII-Wert den Wert des Zeichens 0 subtrahiert. Daher kann man einfach formulieren: int value = ascii char - 0 ; 1-5 Wintersemester 018/19, Einführung in die Praktische Informatik
7 Testprogramm zur einfachen Wandlung von Ziffern in Zahlenwerte: 5 char c; 6 int value ; 7 printf ( " Zeichen Dezimalwert \n" ); 8 for ( c = 0 ; c <= 9 ; c = c + 1 ) 9 { 10 value = c - 0 ; 11 printf ( "%7c %d\n", c, value ); 1 } 13 } Aufgabe : Klassifizierung von Zeichen: <ctype.h> Die Include-Datei <ctype.h> stellt eine Reihe von nützlichen Makros zur Klassifizierung von Zeichen zur Verfügung. Nenne mindestens sechs von ihnen: Bedeutung Buchstaben Kleinbuchstaben Großbuchstaben Makroname isalpha() islower() isupper() Bedeutung Makroname Ziffern isdigit() Hex-Ziffern isxdigit() Leerzeichen isspace() Aufgabe 3: Wandeln von hexadezimalen Ziffern 1. Aufgabenstellung Erweiter das Programm aus Aufgabe 1 dieses Teils so, dass es auch hexadezimale Ziffern, A bis F bzw. a bis f korrekt wandelt.. Pflichtenheft Aufgabe : Umwandlung hexadezimaler Ziffern in die entsprechenden Zahlenwerte Eingabe : eine hexadezimale Ziffer Ausgabe : eingegebene Ziffer und ihr Zahlenwert Sonderfälle : Fehlermeldung bei Eingabe nicht-hexadezimaler Zeichen Einführung in die Praktische Informatik, Wintersemester 018/19 1-6
8 3. Testdaten Alle Ziffern von 0 bis 9, A bis F und a bis f 4. Implementierung Das Wesentliche haben wir ja schon in der vorherigen Übungsaufgabe gehabt. Jetzt müssen wir nur überprüfen, ob wir eine Ziffer 0-9, einen Kleinbuchstaben a - f oder einen Großbuchstaben A - F vorliegen haben. Je nach dem ändert sich die Umwandlung geringfügig. Im Kern sieht die Änderung also wie folgt aus: Umwandlung von hexadezimalen Ziffern in Zahlenwerte Variablen: Integer: zahl Char: zeichen wenn ziffer 0 und ziffer 9 dann zahl = ziffer - 0 sonst wenn ziffer a und ziffer f dann zahl = ziffer - a + 10 sonst wenn ziffer A und ziffer F dann zahl = ziffer - A + 10 sonst Ausgabe einer Fehlermeldung 5. Kodierung 5 char c; 6 int val, error = 0; 7 scanf ( "%c", & c ); 8 if (c >= 0 && c <= 9 ) 9 val = c - 0 ; 10 else if (c >= a && c <= f ) 11 val = c - a + 10; 1 else if (c >= A && c <= F ) 13 val = c - A + 10; 14 else error = 1; 15 if ( error ) 16 printf (" %c ist kein hex - zeichen \n",c); 17 else printf ( "%c hat den wert %d\n", c, val ); 18 } 1-7 Wintersemester 018/19, Einführung in die Praktische Informatik
9 Aufgabe 4: Umwandlung von Klein in Großbuchstaben 1. Aufgabenstellung Enwickle ein Programmstückchen, das Kleinbuchstaben in Großbuchstaben umwandeln kann und umgekehrt. Auch diese Umwandlung geht wieder in einer Zeile.. Pflichtenheft Aufgabe : Umwandlung von Klein- in Großbuchstaben und umgekehrt Eingabe : keine; die entwickelten Anweisungen werden direkt in Schleifen aufgerufen Ausgabe : Paare von Klein- und Großbuchstaben in Tabellenform Sonderfälle : keine 3. Testdaten Alle Buchstaben von a bis z und A bis Z. 4. Implementierung Da diese Aufgabe eigentlich keine größeren Schwierigkeiten bereiten sollte, konzentrieren wir uns hier auf die eigentliche Umwandlung der Zeichen. Wie lautet die jeweiligen Anweisungen zum Umwandeln der Buchstaben? Klein- in Großbuchstaben: Groß- in Kleinbuchstaben: upper = lower - a + A lower = upper - A + a 5. Kodierung Schreibe ein entsprechendes Testprogramm für die beiden obigen Anweisungen: 5 char c; 6 printf ( " klein gross \n" ); 7 for ( c = a ; c <= z ; c = c + 1 ) 8 printf ( "%5c %c\n", c, c - a + A ); 9 printf ( "\ ngross klein \n" ); 10 for ( c = A ; c <= Z ; c = c + 1 ) 11 printf ( "%5c %c\n", c, c - A + a ); 1 } Einführung in die Praktische Informatik, Wintersemester 018/19 1-8
10 Aufgabe 5: Zeichen-Matrix 1. Aufgabenstellung Zur Wiederholung: Eine Variable vom Typ char besitzt in der Regel acht Bits, womit sich 56 verschiedene Werte darstellen lassen. Entwickle ein Programm, das diese 56 Möglichkeiten in Form einer Matrix darstellt, und zwar nicht als Zahlenwerte sondern als Zeichen. Da einige Zeichen merkwürdig aussehen, ist es günstig " %c" als Formatierung zu nehmen. Mit etwas Glück wird folgende Matrix ausgegeben. Gewünschte Ausgabe:. Pflichtenheft Aufgabe : Darstellung aller 56 Zeichen in Form einer Matrix Eingabe : keine, die Tabelle wird direkt ausgegeben Ausgabe : Ausgabe der Tabelle Sonderfälle : keine 3. Implementierung Ausgabe aller 56 Zeichen als Matrix setze zeichen = 0 für i = 0 bis 16 schrittweite 1 wiederhole für j = 0 bis 16 schrittweite 1 wiederhole setze zeichen = zeichen + 1 Ausgabe zeichen Ausgabe Zeilenumbruch 1-9 Wintersemester 018/19, Einführung in die Praktische Informatik
11 4. Kodierung 5 int i, j, c; 6 for ( c = i = 0; i < 16; i ++ ) 7 { 8 for ( j = 0; j < 16; j ++, c ++ ) 9 printf ( " %c", c ); 10 printf ( " \n" ); 11 } 1 } 5. Alternative-I: Berechnung des auzugebenen Zeichens in Zeile 9: 5 int i, j; 6 for ( i = 0; i < 16; i ++ ) 7 { 8 for ( j = 0; j < 16; j ++ ) 9 printf ( " %c", i * 16 + j ); 10 printf ( " \n" ); 11 } 1 } 6. Alternative-II: Test auf die notwendigen Zeilenumbrüchen in den Zeilen 9 und 10: 5 int c; 6 for ( c = 0; c < 56; c ++ ) 7 { 8 printf ( " %c", c ); 9 if ( c % 16 == 15 ) 10 printf ( " \n" ); 11 } 1 } Einführung in die Praktische Informatik, Wintersemester 018/
Ü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Übungspaket 10 Fallunterscheidungen
Übungspaket 10 Fallunterscheidungen Übungsziele: Skript: 1. Umgang mit der einfachen Fallunterscheidung, 2. sowie mehrfachen Fallunterscheidung und 3. problemangepasster Auswahl Kapitel: 24 und 25 Semester:
MehrÜ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Übungspaket 8 Datentyp int
Übungspaket 8 Datentyp int Übungsziele: Skript: 1. Umgang mit dem Datentyp int, 2. Deklarationen von int-variablen, 3. int-konstanten 4. und int-rechenoperationen. Kapitel: 21 Semester: Wintersemester
MehrÜbungspaket 8 Datentyp int
Übungspaket 8 Datentyp int Übungsziele: Skript: 1. Umgang mit dem Datentyp int, 2. Deklarationen von int-variablen, 3. int-konstanten 4. und int-rechenoperationen. Kapitel: 21 Semester: Wintersemester
MehrÜ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Ü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Übungspaket 23 Mehrdimensionale Arrays
Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:
MehrÜbungspaket 25 Kommandozeilenargumente
Übungspaket 25 Kommandozeilenargumente Übungsziele: Skript: 1. Umgang mit argc/argv 2. argc/argv als Schnittstelle von Programm und Betriebssystem 3. Vereinfachtes Testen mit argc/argv Kapitel: 51 und
MehrÜbungspaket 23 Mehrdimensionale Arrays
Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:
MehrÜbungspaket 29 Dynamische Speicherverwaltung: malloc() und free()
Übungspaket 29 Dynamische Speicherverwaltung malloc() und free() Übungsziele Skript In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten
MehrÜ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Übungspaket 17 Der gcc Compiler
Übungspaket 17 Der gcc Compiler Übungsziele: Skript: 1. Sicherer Umgang mit gemischten Ausdrücken 2. Herleiten der unterschiedlichen Datentypen in gemischten Ausdrücken 3. Kenntnis über die implizite Durchführung
MehrÜbungspaket 22 Rekursive Funktionsaufrufe
Übungspaket 22 Rekursive Funktionsaufrufe Übungsziele: Skript: 1. Technische Voraussetzungen für rekursive Funktionsaufrufe 2. Umsetzung mathematisch definierter Rekursionen in entsprechende C-Programme
MehrÜbungspaket 20 Zeiger und Zeigervariablen
Übungspaket 20 Zeiger und Zeigervariablen Übungsziele: Skript: 1. Definition von Zeigervariablen 2. Verwendung von Zeigern 3. Arrays und Adressberechnungen Kapitel: 45 und 46 Semester: Wintersemester 2017/18
MehrÜbungspaket 24 Zeichenketten
Übungspaket 24 Zeichenketten Übungsziele: Skript: 1. Verständnis über die interne Repräsentation von Zeichenketten 2. Arbeiten mit Zeichenketten 3. Definition konstanter Zeichenketten 4. Verwendung diverser
MehrÜbungspaket 7 Angemessenes Formatieren von C-Programmen
Übungspaket 7 Angemessenes Formatieren von C-Programmen Übungsziele: Skript: 1. Gute Layout-Struktur durch Einrücken. Richtiges Verwenden von Kommentaren Kapitel: 19 Semester: Wintersemester 018/19 Betreuer:
MehrÜbungspaket 7 Angemessenes Formatieren von C-Programmen
Übungspaket 7 Angemessenes Formatieren von C-Programmen Übungsziele: Skript: 1. Gute Layout-Struktur durch Einrücken. Richtiges Verwenden von Kommentaren Kapitel: 19 Semester: Wintersemester 016/17 Betreuer:
MehrÜbungspaket 4 Klassifikation von Dreiecken
Übungspaket 4 Klassifikation von Dreiecken Übungsziele: Skript: 1. Selbstständiges Entwickeln eines ersten Programms 2. Anwenden der Methoden des Software Life Cycles 3. Programmentwurf durch Anwendung
MehrÜbungspaket 20 Zeiger und Zeigervariablen
Übungspaket 20 Zeiger und Zeigervariablen Übungsziele: Skript: 1. Definition von Zeigervariablen 2. Verwendung von Zeigern 3. Arrays und Adressberechnungen Kapitel: 45 und 46 Semester: Wintersemester 2017/18
MehrÜbungspaket 3 Mein erstes Programm: Fläche eines Rechtecks
Übungspaket 3 Mein erstes Programm: Fläche eines Rechtecks Übungsziele: Skript: 1. Der Software Life Cycle im Überblick. Umgang mit Editor und Compiler 3. Editieren und Starten eines eigenen Programms
MehrEinheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen
Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik
MehrÜbungspaket 17 Der gcc Compiler
Übungspaket 17 Der gcc Compiler Übungsziele: Skript: 1. Sicherer Umgang mit gemischten Ausdrücken 2. Herleiten der unterschiedlichen Datentypen in gemischten Ausdrücken 3. Kenntnis über die implizite Durchführung
MehrÜbungspaket 5 Abstrakte Programmierung
Übungspaket 5 Abstrakte Programmierung Übungsziele: Skript: 1. Strukturierung einer gegebenen Aufgabe, 2. Bearbeitung von Arbeitsabläufen des alltäglichen Lebens mittels Struktogrammen 3. und der Methode
MehrÜbungspaket 32 Einfach verkettete, sortierte Liste
Übungspaket 32 Einfach verkettete, sortierte Liste Übungsziele: Skript: 1. Aufbau einer einfach verketteten, sortierten Liste 2. Traversieren von Listen 3. Vereinfachung durch ein Dummy-Element Kapitel:
MehrÜbungspaket 11 Schleifen
Übungspaket 11 Schleifen Übungsziele: Skript: 1. Umgang mit den Schleifen in C. Wahl des richtigen Schleifentyps 3. Umwandlung der Schleifen ineinander Kapitel: 6 bis 8 Semester: Wintersemester 017/18
Mehr4. 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Übungspaket 24 Zeichenketten
Übungspaket 4 Zeichenketten Übungsziele: Skript: 1. Verständnis über die interne Repräsentation von Zeichenketten. Arbeiten mit Zeichenketten 3. Definition konstanter Zeichenketten 4. Verwendung diverser
MehrÜbungspaket 21 Funktionen mit Zeigern und Arrays als Parameter
Übungspaket 21 Funktionen mit Zeigern und Arrays als Parameter Übungsziele: Skript: 1. Funktionen mit Zeigern als Parameter 2. Emulation von Variablenparametern 3. Funktionen mit Arrays als Parameter 4.
MehrProgrammiertechnik 1 FOR-SCHLEIFEN
Programmiertechnik 1 FOR-SCHLEIFEN In diesem Dokument wollen wir uns mit Kontrollstrukturen befassen. Dazu sind im Folgenden einige Übungsaufgaben zu den Themen Schleifen (FOR, WHILE, DO) und Bedingungen
MehrÜbungspaket 28 Module und getrenntes Übersetzen
Übungspaket 28 Module und getrenntes Übersetzen Übungsziele: Skript: 1. Verteilen von Programmteilen auf mehrere Dateien 2. Richtige Verwendung der Header-Dateien 3. Richtiger Umgang mit dem C-Compiler
Mehr2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Ende SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll im
MehrVorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 4 Besprechung: 13. 17.11.2017 (KW 46) Vorbereitende
MehrZeichenketten sind uns bisher nur als konstante Texte begegnet, welche in "" angegeben waren; z.b. als Formatstring in der printf()-funktion:
Zeichenketten (Strings) Seite 1 von 11 Zeichenketten(Strings) sind wichtige Bestandteile fast eines jeden Programms. Beispiele sind Eingabe von Namen oder Adressen, Ausgabe von Meldetexten oder Bearbeitung
MehrZeichendarstellung. Zeichen sind Zahlen (in C) Zeichen und switch
darstellung Arbeiten mit darstellung werden im Computer durch (kleine) Zahlen dargestellt in C können im Datentyp char gespeichert werden, dieser umfasst ein Byte und gilt als Ganzzahltyp darstellung Arbeiten
MehrÜbungspaket 19 Programmieren eigener Funktionen
Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame
MehrProgrammiertechnik 1 FOR-SCHLEIFEN
Programmiertechnik 1 FOR-SCHLEIFEN In diesem Dokument wollen wir uns mit Kontrollstrukturen befassen. Dazu sind im Folgenden einige Übungsaufgaben zu den Themen Schleifen (FOR, WHILE, DO) und Bedingungen
MehrÜbungspaket 29 Dynamische Speicherverwaltung: malloc() und free()
Übungspaket 29 Dynamische Speicherverwaltung: malloc() und free() Übungsziele: Skript: In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten
MehrNachklausur: 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
MehrNachklausur: 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
MehrFH 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:
MehrGrundlagen der Informatik 2. Typen
Grundlagen der Informatik 2. Typen Speicher, Speicherbedarf Ein-/Ausgabe Grundlagen der Informatik (Alex Rempel) 1 Wiederholung // root calculation #include #include using namespace
MehrProgrammierkurs 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
MehrObjekte werden eindeutig beschrieben durch ihren Typ und einen beliebig wählbaren Bezeichner.
Grundlegende Deklarationen Seite 1 von 6 Jedes Programm benötigt Objekte. Ein Objekt ist ein reservierter Bereich im Systemspeicher in welchem Informationen abgelegt werden. Informationen sind z.b. Zahlen,
Mehr*** 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 **
MehrIntensivü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
MehrKlausur. 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Anfang SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll
MehrÜbungspaket 3 Mein erstes Programm: Fläche eines Rechtecks
Übungspaket 3 Mein erstes Programm: Fläche eines Rechtecks Übungsziele: Skript: 1. Der Software Life Cycle im Überblick. Umgang mit Editor und Compiler 3. Editieren und Starten eines eigenen Programms
MehrGI 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
MehrGrundlagen 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:
MehrWintersemester 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Übungspaket 5 Abstrakte Programmierung
Übungspaket 5 Abstrakte Programmierung Übungsziele: Skript: 1. Strukturierung einer gegebenen Aufgabe, 2. Bearbeitung von Arbeitsabläufen des alltäglichen Lebens mittels Struktogrammen 3. und der Methode
MehrWiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe
Informatik Vorlesung 03b Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe 12. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik
MehrProgrammieren in C (Übungsblatt 1)
21.02.2017 Aufgabe 1: Programmausführung Programmieren in C (Übungsblatt 1) a) Bitte geben Sie den folgenden Programmcode ein: /* Beispiel fuer Textausgaben */ #include int main() { printf("c-programmierung
MehrÜbungspaket 19 Programmieren eigener Funktionen
Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame
MehrProgrammieren in C (Übungsblatt 1)
23.02.2016 Aufgabe 1: Programmausführung Programmieren in C (Übungsblatt 1) a) Bitte geben Sie den folgenden Programmcode ein: /* Beispiel fuer Textausgaben */ #include int main() { printf("c-programmierung
MehrProgrammieren in C (Übungsblatt 1)
27.02.2018 Aufgabe 1: Programmausführung Programmieren in C (Übungsblatt 1) a) Bitte geben Sie den folgenden Programmcode ein: /* Beispiel fuer Textausgaben */ #include int main(void) { printf("c-programmierung
MehrGrundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen.
Grundlegende Programmstrukturen Seite 1 von 14 Grundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen. Sequenzen Eine Sequenz ist eine Folge von en (sblock) ohne Verzweigungen. Der
MehrHochschule Niederrhein Einführung in die Programmierung Prof. Dr. Nitsche. Bachelor Informatik WS 2015/16 Blatt 3 Beispiellösung.
Zahldarstellung Lernziele: Vertiefen der Kenntnisse über Zahldarstellungen. Aufgabe 1: Werte/Konstanten Ergänzen Sie die Tabelle ganzzahliger Konstanten auf einem 16- Bit- System. Die Konstanten in einer
MehrÜbungspaket 22 Rekursive Funktionsaufrufe
Übungspaket 22 Rekursive Funktionsaufrufe Übungsziele: Skript: 1. Technische Voraussetzungen für rekursive Funktionsaufrufe 2. Umsetzung mathematisch definierter Rekursionen in entsprechende C-Programme
MehrKlausur Informatik WS 2012/13
Klausur Informatik WS 2012/13 Name Gruppe 1 Vorname Dauer 90 min Matrikelnummer Hilfsmittel keine Die Klausur ist mit 50 Punkten sicher bestanden. Hinweies: Voraussetzung für die Teilnahme ist das Bestehen
Mehreinlesen 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Übungspaket 6 Arbeiten mit Syntaxdiagrammen
Übungspaket 6 Arbeiten mit Syntaxdiagrammen Übungsziele: Skript: Verstehen, Anwenden und Erstellen von Syntaxdiagrammen Kapitel: 20 Semester: Wintersemester 2017/18 Betreuer: Kevin, Theo, Thomas und Ralf
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik
Seite 1 von 7 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
MehrAlgorithmen & Programmierung. Zahlensysteme Bits und Bytes
Algorithmen & Programmierung Zahlensysteme Bits und Bytes Zahlensysteme Positionssystem Bei sogenannten Positionssystemen bestimmt (im Gegensatz zu additiven Systemen wie dem römischen Zahlensystem) die
MehrVerwenden Sie für jede Aufgabe die C++ IDE von Eclipse (pro Aufgabe ein Projekt).
3 Erste Programme 3.1 Übungsaufgabe Verwenden Sie für jede Aufgabe die C++ IDE von Eclipse (pro Aufgabe ein Projekt). 3.1.1 Aufgabe 1 Schreiben Sie ein C++ Programm, das einen String einliest und testet,
Mehr2. 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Übungspaket 1 Grundlagen: von der Hardware zum Programmieren
Übungspaket 1 Grundlagen: von der Hardware zum Programmieren Übungsziele: Skript: 1. Die Bedeutung des Programmierens für mein Studium und meine spätere Berufstätigkeit 2. Was ist eine erfolgreiche Lernstrategie?
MehrÜbungspaket 1 Grundlagen: von der Hardware zum Programmieren
Übungspaket 1 Grundlagen: von der Hardware zum Programmieren Übungsziele: Skript: 1. Die Bedeutung des Programmierens für mein Studium und meine spätere Berufstätigkeit 2. Was ist eine erfolgreiche Lernstrategie?
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
MehrPhysische Datenstrukturen
Elementare Datentypen Strukturierte Datentypen Zeiger Seite 1 Einfache Datentypen Datentyp char Verwendung: ASCII-Zeichen Wertebereich: alle darstellbaren Zeichen, 8 bit lange Ganzzahlen im Intervall -128
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,
MehrKurze Einführung in die Programmiersprache C++ und in Root
Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrKlausur Grundlagen der Programmierung
Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel
MehrVorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
MehrGanze Zahlen, Ausdrücke Variablen/Konstanten
Ganze Zahlen, Ausdrücke Variablen/Konstanten InE1 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Programmieren in C ganze Zahlen, Konstanten und Variablen 2 Lernziele Siekönnen
MehrViel Erfolg bei der Bearbeitung der Aufgaben!
Musterlösung Name:... 1 2 3 4 5 Gesamt Note 12 8 10 15 11 56 Bitte tragen Sie auf dem Deckblatt Ihr Namen und Ihre Matrikelnummer ein und auf allen weiteren Seiten nur noch Ihre Matrikelnummer. Lösungen
MehrInstitut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme
Institut für Computational Science Prof. Dr. H. Hinterberger Praxismodul 1 Einführung in die Programmierung Erste Programme Einführung in die Programmierung 2 Institut für Computational Science, ETH Zürich,
MehrInstitut für Informatik und Angewandte Kognitionswissenschaften
Grundlegende Programmiertechniken (»Programmierung«), WS 2007/2008 Übungsblatt 5 Präsenzaufgaben: 11, 12, 13 Hausaufgabe: 14 Aufgabe 11 STRING- UND OBJEKT-VERGLEICH String s1 = new String("Test String");
MehrDas 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
MehrProjekt 3 Variablen und Operatoren
Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.
MehrZahlen- und Buchstabencodierung. Zahlendarstellung
Dezimalsystem: Zahlen- und Buchstabencodierung Zahlendarstellung 123 = 1 10 2 + 2 10 1 + 3 10 0 1,23 = 1 10 0 + 2 10-1 + 3 10-2 10 Zeichen im Dezimalsystem: 0,1,...9 10 ist die Basis des Dezimalsystems
MehrVorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2018/19 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 4 Besprechung: 19. 23.11.2018 (KW 47) Vorbereitende
MehrEinführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)
Wintersemester 2006/07 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
MehrVariablen, 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
MehrInformatik 1 für Nebenfachstudierende Beispiele für Klausuraufgaben
Informatik 1 für Nebenfachstudierende Beispiele für Klausuraufgaben Aufgabe 1: Zahlensysteme a) Stellen sie die Zahl Z als allgemeine Formel mittels eines polyadischen Zahlensystems zur Basis B dar. b)
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 2: Prof. Dr. Unser erstes C-Programm int main (int argc, char *argv[]) int i; int sum = 0; for (i = 0; i
MehrÜbungspaket 4 Funktionszeiger
Übungspaket 4 Funktionszeiger Übungsziele: Literatur: 1. Verstehen von Funktionszeigern. 2. Anwenden von Funktionszeigern. C-Skript 1, Kapitel: 85 Semester: Wintersemester 2017/18 Betreuer: Kevin, Peter
MehrInhalt. Zeichen und Zeichenketten (engl. Strings)
Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Pointern
Mehr