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

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

C-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07)

Ingenieurinformatik Diplom-FA (Teil 2, C-Programmierung)

2 Einfache Rechnungen

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

Die Programmiersprache C

Klausur in Programmieren

Welche Informatik-Kenntnisse bringen Sie mit?

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

C-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07)

Elementare Datentypen in C++

Dr. Monika Meiler. Inhalt

+ C - Array (Vektoren, Felder)

Einstieg in die Informatik mit Java

Klausur in Programmieren

Fakultät Angewandte Informatik Lehrprofessur für Informatik

Hochschule München, FK 03 FA SS Ingenieurinformatik

GI Vektoren

2. Datentypen und Deklarationen

JAVA-Datentypen und deren Wertebereich

Einführung in die C-Programmierung

Einführung in die Programmierung

Praktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife

Prüfung Algorithmen und Datenstrukturen, WS 2008/2009 (97 Punkte, 4 Seiten)

"Einführung in die Programmierung" Krefeld, den 24. September 2013

Zeichendarstellung. Zeichen sind Zahlen (in C) Zeichen und switch

Kurze Einführung in die Programmiersprache C++ und in Root

Grundlagen zu Datenobjekten und Operatoren

Fallunterscheidung: if-statement

Klausur in Programmieren

Übungspaket 29 Dynamische Speicherverwaltung: malloc() und free()

RO-Tutorien 3 / 6 / 12

Modul 122 VBA Scribt.docx

Kapitel 5. Datentypen und Operatoren

Schleifenanweisungen

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

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Klausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 13. April 2007, Uhr Bearbeitungszeit: 105 Minuten

Programmieren in C / C++ Grundlagen C 2

Tutorium Rechnerorganisation

Programmieren in C. -- ALLE Programmiersprachen sind HÄSSLICH -- Deklaration: erst der Datentyp, dann der Variablenname. Semikolon am Ende.

Lösung Übungszettel 6 Aufgabe 1-4

Hochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller

Zusammenfassung des Handzettels für Programmieren in C

Hochschule Niederrhein Einführung in die Programmierung Prof. Dr. Nitsche. Bachelor Informatik WS 2015/16 Blatt 3 Beispiellösung.

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

2. Programmierung in C

HS Ravensburg-Weingarten Schriftlich Prüfung Programmieren

1 Vom Problem zum Programm

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

Klausur in Programmieren

Übungspaket 23 Mehrdimensionale Arrays

Programmierung WS12/13 Lösung - Übung 1 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder

M. Graefenhan Übungen zu C. Blatt 3. Musterlösung

Deklarationen in C. Prof. Dr. Margarita Esponda

Dr. Monika Meiler. Inhalt

CEN1112 Labor Software-Entwicklung

Einführung in die Programmiersprache C

Numerische Datentypen. Simon Weidmann

Informatik Repetitorium SS Volker Jaedicke

Kurzeinführung in C. Johannes J. Schneider

Klausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber

C- Kurs 04 Anweisungen

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden

Felder (1) Allgemeines

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

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Klausur in Programmieren

Wiederholung C-Programmierung

L6. Operatoren und Ausdrücke

Angewandte Mathematik und Programmierung

Zahlen- und Buchstabencodierung. Zahlendarstellung

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = binär

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

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Ein erstes Java-Programm

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

Übungspaket 19 Programmieren eigener Funktionen

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

DAP2-Programmierpraktikum Einführung in C++ (Teil 1)

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

Arbeiten mit JavaKara

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

MB2-ALG, SS15 Seite 1 Hauptklausur, geschrieben am

Praktikum Ingenieurinformatik. Termin 6. Mehrdimensionale Felder, Kurvendarstellung mit Excel

Kurzeinführung in C++

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Einstieg in die Informatik mit Java

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

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

FB Informatik. Fehler. Testplan

Programmierung in C. Grundlagen. Stefan Kallerhoff

C++ - Einführung in die Programmiersprache Funktionen. Leibniz Universität IT Services Anja Aue

Kapitel 7. Zusammengesetzte Datentypen, Vektoren, Zeichenketten

Algorithmen zur Datenanalyse in C++

Transkript:

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 im 8 Bit Zweierkomplement dargestellt werden. 123 10-9 10 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben. dual/binär oktal (hexa-) sedezimal 10011110 2 365 8 1C3 16 3. Aufgabe (5 Punkte) Welche der folgenden Zeichenketten sind als Variablennamen in C erlaubt und welche nicht? Antworten sie mit Ja oder Nein. Wenn Nein, begründen Sie ihre Antwort. Ja Nein Begründung (Nur wenn Nein) size2 O O char O O Index-a O O 2Stufe O O Case O O Heß O O Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 1 von 6

4. Aufgabe (2 Punkte) Bestimmen Sie den Zahlenbereich der aufgeführten Datentypen. Nehmen Sie an, dass der Typ int auf Ihrem Rechner 2 Byte beansprucht. Sie können auch Formeln eintragen. Typ kleinster Wert größter Wert int unsigned char 5. Aufgabe (5 Punkte) Nehmen Sie an, folgende Variablen seien definiert worden: char c; int i=7; long li=4; float f; double d=2.2; Bestimmen Sie Typ und Wert folgender Ausdrücke: Ausdruck Typ Wert i+5l i<<2 c='b'+li!i li!=4 1?2:3 f=(long)d 10/4*d (i-li!=2)?4:5 ~li&li ++li*i++ 6. Aufgabe (2 Punkte) Nennen Sie die vier Eigenschaften von Variablen: Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 2 von 6

7. Aufgabe (7 Punkte) Betrachten Sie folgendes Programm: #include <stdio.h> void Funktion(int Zahl); int main() { Funktion(10); return 0; void Funktion(int Zahl) { if(zahl>0) { Funktion(Zahl/2); printf("%d", Zahl%2); Erstellen Sie das Struktogramm für die Funktion Funktion. Wie sieht die Ausgabe auf dem Bildschirm aus? 8. Aufgabe (5 Punkte) Erstellen Sie eine C-Funktion, die als Parameter eine ganze Zahl n vom Typ short übernimmt, und bei positiven Werten die Summe der Zahlen 1 bis n berechnet (1+2+3+... +n). Da das Ergebnis größer als der Wertebereich des Parameters werden kann, soll der Rückgabewert vom Typ long sein. Bei Zahlen kleiner oder gleich null soll der Wert null zurückgegeben werden. Der Name der Funktion ist Summe. Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 3 von 6

9. Aufgabe (7 Punkte) Das folgende Struktogramm gibt die Definition einer Funktion wieder, welche als Parameter zwei Zahlen vom Typ unsigned übernimmt und ebenfalls den Typ unsigned zurückgibt. Machen Sie sich mit der Arbeitsweise dieser Funktion vertraut. Welcher Wert wird zurückgegeben, wenn die Zahlen 8 und 12 übergeben wurden: Welcher Wert wird zurückgegeben, wenn die Zahlen 6 und 15 übergeben wurden: Geben Sie der Funktion einen sinnvollen Namen und schreiben Sie den geeigneten Code dazu. Geben Sie nur die Funktion selbst (Definition, inkl. Funktionskopf) ohne den Überbau (#include, Deklaration, main() etc.) wieder. Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 4 von 6

10. Aufgabe (4 Punkte) Definieren Sie eine Funktion in C, die für die übergebene Zahl ermittelt, ob sie sich durch zwei oder drei teilen lässt (Rückgabewert 1) oder nicht (Rückgabewert 0). int TwoOrThree(int Value) { 11. Aufgabe (2 Punkte) Nehmen wir an, es wurden folgende Variablen definiert: char* text = "Sie haben es bald geschafft!"; int list[] = { 3, 4, 2, 9, 13, 2, 1 ; Was ist der Wert folgender Ausdrücke? list[0] text[5] *text *(list+4) 12. Aufgabe (2 Punkte) Welchen Wert haben nach diesem Programmstück die Variablen x und y? double x=3.2, y=3.2; double *pd; pd = &y; x = *pd/2; *pd = 3.0/2; pd = &x; *pd /= 2; Antwort: x hat den Wert... und y hat den Wert... Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 5 von 6

13. Aufgabe (4 Punkte) Im folgenden Programmcode haben sich 8 Fehler eingeschlichen. Finden Sie diese Fehler und tragen Sie die gefundenen Fehler in die Tabelle ein. Zeile 1: /* Prim1.c: Einfaches Programm zur Berechnung von Primzahlen */ Zeile 2: include <stdio.h> Zeile 3: Zeile 4: /* Größte zu testende Zahl */ Zeile 5: #define MAX_ZAHL 100 Zeile 6: Zeile 7: int main() Zeile 8: { Zeile 9: int Proband; /* aktuelle Zahl, die geprüft werden soll */ Zeile 10: int Divisor; /* aktueller Divisor */ Zeile 11: char Primzahl; /* Marke für Primzahl */ Zeile 12: Zeile 13: /* Überschrift /* Zeile 14: printf("primzahlen zwischen 1 und %d:\n", MAX_ZAHL); Zeile 15: Zeile 16: /* Schleife für alle zu prüfenden Zahlen */ Zeile 17: for(proband=1, Proband<=MAX_ZAHL, Proband++) { Zeile 18: Zeile 19: Primzahl := 1; /* Annahme: Es ist eine Primzahl */ Zeile 20: Zeile 21: /* Schleife für alle Divisoren */ Zeile 22: Divisor = 2; Zeile 23: while(primzahl && Divisor<Proband) { Zeile 24: /* Wenn kein Rest bei Division: keine Primzahl */ Zeile 25: if(proband%divisor==0) Primzahl = 0 Zeile 26: else Divisor++; Zeile 27: Zeile 28: Zeile 29: /* Ggf. Primzahl ausgeben */ Zeile 30: if(primzahl) printf(%8d, Proband); Zeile 31: Zeile 32: printf("\n"); /* Zeilenvorschub */ Zeile 33: Zeile 34: return; Zeile 35: Zeile gefundener Fehler korrekter Code Programmieren TMM1, IST1, ET1 Anfang Sommersemester 2003 Seite 6 von 6