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



Ähnliche Dokumente
Ingenieurinformatik Diplom-FA (C-Programmierung)

Hochschule München, FK 03 FA SS Ingenieurinformatik

*** Viel Erfolg! ***

*** Viel Erfolg! ***

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

1 Vom Problem zum Programm

Hochschule München, FK 03 FA WS 2012/13. Ingenieurinformatik

Wiederholung C-Programmierung

Einführung in die Programmierung

Hochschule München, FK 03 FA SS Ingenieurinformatik

*** Viel Erfolg! ***

Wiederholung C-Programmierung

Informatik Repetitorium SS Volker Jaedicke

2. Programmierung in C

Übungskomplex Felder (1) Eindimensionale Felder Mehrdimensionale Felder

*** Viel Erfolg!!! ***

Programmierkurs Java

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

Klausur in Programmieren

Einführung in die Programmierung (EPR)

Eigenwerte und Eigenvektoren von Matrizen

Das Mathematik-Abitur im Saarland

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)

Ingenieurinformatik Teil 2 (Numerik für Ingenieure)

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Lineare Gleichungssysteme

Einführung in die Programmierung

Hochschule München, FK 03 FA WS 2010/11. Ingenieurinformatik

FB Informatik. Fehler. Testplan

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse

Lineare Gleichungssysteme

Erstellen von x-y-diagrammen in OpenOffice.calc

Das Modul ARTIKEL-BARCODE ermöglicht den Druck von Barcode-Etiketten der EAN-Codes 8 und 13.

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Dr. Monika Meiler. Inhalt

Fakultät Angewandte Informatik Lehrprofessur für Informatik

Felder, Rückblick Mehrdimensionale Felder. Programmieren in C

Fallunterscheidung: if-statement

Professionelle Seminare im Bereich MS-Office

Übungen zu C++ Kapitel 1

Wiederholung C-Programmierung

7 Rechnen mit Polynomen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Klausur in Programmieren

4 Vorlesung: Matrix und Determinante

Zm Eingewöhnen Aufgabe 1 Schreiben Sie ein Programm, daß Ihren Namen in einem Fenster ausgibt.

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

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

Die reellen Lösungen der kubischen Gleichung

Übungen Programmieren 1 Felix Rohrer. Übungen

Lösen von linearen Gleichungssystemen mit zwei Unbekannten:

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

Programmierung in C. Grundlagen. Stefan Kallerhoff

Kontrollstrukturen und Funktionen in C

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

Orientierungstest für angehende Industriemeister. Vorbereitungskurs Mathematik

Version 0.3. Installation von MinGW und Eclipse CDT

der Eingabe! Haben Sie das Ergebnis? Auf diesen schwarzen Punkt kommen wir noch zu sprechen.

Lösung. Prüfungsteil 1: Aufgabe 1

Pangea Ablaufvorschrift

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

Vorkurs Mathematik Übungen zu Polynomgleichungen

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

Angewandte Mathematik und Programmierung

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Formelsammlung zur Kreisgleichung


Klausur in Programmieren

Arbeitsschritte EAÜ Leistungserbringer Einnahmen erfassen

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

Die Größe von Flächen vergleichen

Excel Funktionen durch eigene Funktionen erweitern.

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Mathematik VERA-8 in Bayern Testheft B: Realschule Wirtschaftsschule

Universität Bonn, Institut für Angewandte Mathematik. WS 2012/2013 Prüfung Angewandte Mathematik und Statistik - Agrarwiss. /ELW

Aufgaben zur C-Programmierung für die Praktikumsperiode des 1.Semesters

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Dieser Text beschreibt die Neuerungen von DaNiS und die Vorgehensweise beim DaNiS-Update.

Handbuch für Easy Mail in Leicht Lesen

DHBW Karlsruhe, Vorlesung Programmieren, Klassen (2)

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Vorkurs Mathematik Übungen zu Differentialgleichungen

Übungspaket 19 Programmieren eigener Funktionen

3. Verpackungskünstler. Berechnungen am Quader, Umgang mit Termen, räumliche Vorstellung

Rekursionen. Georg Anegg 25. November Methoden und Techniken an Beispielen erklärt

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm

Dateiname Name(n) und Matrikelnr. des/der Bearbeiter Tel.-Nr. und -Adresse für den Fall, dass die Diskette nicht lesbar ist.

Anleitung zur Einrichtung der elektronischen Arbeitszeitkarte im Browser und Vergabe eines neuen Passwortes

Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben

1.5 Umsatzsteuervoranmeldung

Umgekehrte Kurvendiskussion

Stand: Adressnummern ändern Modulbeschreibung

Definition und Begriffe

Kurzanleitung MAN E-Learning (WBT)

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Transkript:

Hochschule München, FK 03 SS 2014 Ingenieurinformatik Diplom-FA (Teil 2, C-Programmierung) Zulassung geprüft: (Grundlagenteil) Die Prüfung ist nur dann gültig, wenn Sie die erforderliche Zulassungsvoraussetzung erworben haben (erfolgreiche Teilnahme am Praktikum). Dies wird vom Aufgabensteller überprüft. FA-Diplom Aufgabensteller: Dr. Reichl, Dr. Küpper und Kollegen Bearbeitungszeit: 60 Minuten Hilfsmittel: - Taschenrechner nicht zugelassen - PC/Notebook nicht zugelassen - Sonstige eigene Hilfsmittel sind erlaubt - Bearbeitung mit Bleistift ist erlaubt Seite 1 von 8

Aufgabe 1: (ca. 24 Punkte) Schreiben Sie ein C-Programm zur Berechnung der Funktionswerte von reellen Polynomen: - Nach dem Start des Programms muss der Anwender die Anzahl der Koeffizienten des Polynoms eingeben (maximal 10). - Wenn eine ungültige Anzahl eingegeben wird (kleiner als null oder größer als 10), dann soll die Eingabe wiederholt werden siehe Bildschirmfoto! - Es folgt die Eingabe aller Koeffizienten. Auf die Überprüfung von Eingabefehlern (zum Beispiel: Eingabe von Buchstaben statt Zahlen) wird hier verzichtet. - Schließlich kann der Anwender beliebig viele x-werte eingeben, für die der Wert des Polynoms jeweils berechnet wird. Wenn der Anwender als x-wert null eingibt, wird zunächst der Wert des Polynoms an der Stelle x = 0 berechnet und dann das Programm beendet. - Achten Sie darauf, dass alle Eingabeaufforderungen so wie in der Abbildung gezeigt auf dem Bildschirm ausgegeben werden. Eingabefehler werden erkannt, ggf. wird die Eingabe wiederholt! Nach der Eingabe von x = 0 wird das Polynom nochmals berechnet und dann das Programm beendet. Im abgebildeten Beispiel wird der Wert des Polynoms y = 4,5 x³ + 2 x² - 5 x + 1,5 an den Stellen x = 1 und x = -1,5 berechnet. Danach gibt der Anwender den Wert x = 0 ein, das Programm berechnet nochmals den Wert des Polynoms für x = 0 und wird dann beendet. Seite 2 von 8

Seite 3 von 8

Aufgabe 2: (ca. 21 Punkte) Das folgende C-Programm berechnet die reellen und komplexen Nullstellen der quadratischen Gleichung x² + px + q = 0. Vor Beginn der Berechnung wird der Anwender zur Eingabe der Parameter p und q aufgefordert. Nach der Ergebnisausgabe wird der Anwender gefragt, ob er eine weitere Berechnung wünscht (Eingabe von 1) oder das Programm beenden möchte (Eingabe von 2). #include <studio.h> #include <math.h> int main(void) int weiter; double p, q, w, x; do printf("p: "); scanf("%lf", &p); printf("q: "); scanf("%lf", &q); x = -p / 2.0; w = x * x - q; if(w == 0) printf("x = %d\n", x); else if(w >= 0) printf("x1 = %f\n", x + sqrt(w)); printf("x2 = %f\n", x - sqrt(w)); else printf("x1 = %f + %f i\n", x, sqrt(-w)); printf("x2 = %f - %f i\n", x, sqrt(-w)); do printf("nochmal (1) oder Ende (2)?"); scanf("%d", &weiter); while(weiter < 1 && weiter > 2) while(weiter == 1); return 0; 2.1. Korrigieren Sie die fünf Fehler, die sich in den Quelltext eingeschlichen haben. 2.2. Zeichnen Sie für das (korrigierte) Hauptprogramm ein Struktogramm, welches den genauen Ablauf der Funktion main beschreibt. 2.3. Warum nennt man die hier verwendete do-while-schleife auch nicht-abweisende Schleife? Seite 4 von 8

Seite 5 von 8

Aufgabe 3: (ca. 22 Punkte) #include <stdio.h> void hex2bin(char *hex); 3.1. Wie lautet die Ausgabe des nebenstehenden C-Programms? int main(void) hex2bin("ff"); hex2bin("100"); hex2bin("0"); return 0; void hex2bin(char *hex) int idx; for(idx = 0; hex[idx]!= 0; ++idx) switch(hex[idx]) case '0': printf("0000"); break; case '1': printf("0001"); break; case '2': printf("0010"); break; case '3': printf("0011"); break; case '4': printf("0100"); break; case '5': printf("0101"); break; case '6': printf("0110"); break; case '7': printf("0111"); break; case '8': printf("1000"); break; case '9': printf("1001"); break; case 'A': printf("1010"); break; case 'B': printf("1011"); break; case 'C': printf("1100"); break; case 'D': printf("1101"); break; case 'E': printf("1110"); break; case 'F': printf("1111"); break; printf("\n"); 3.2. Mittels sizeof(x) kann die Anzahl der Speicherzellen (Bytes) ermittelt werden, die von der Variablen x im Hauptspeicher des Rechners belegt werden. Wie lautet die Ausgabe des folgenden C-Programms, wenn es auf einem Windows-PC im Praktikumsraum ausgeführt wird? Ausgabe des Programms: #include <stdio.h> int main(void) int i; float f; printf("%d\n", sizeof(i)); printf("%d\n", sizeof(f)); return 0; 3.3. Zwei Vektoren werden als double v1[3][2]; und als char str[10]; definiert. Wie viele Bytes belegen diese beiden Vektoren im Hauptspeicher des Rechners? Vektor v1:.. Bytes Vektor str:.. Bytes Seite 6 von 8

3.4. Werden in einer Matrix A die Zeilen gegen die Spalten vertauscht (also die Matrixelemente an der Hauptdiagonalen gespiegelt), erhält man die transponierte Matrix A T. Beispiel: transponierte 3x3-Matrix In einem C-Programm sind die Matrizen a und b global definiert und bereits mit Werten belegt. Schreiben Sie eine Funktion check_trans. Diese Funktion soll überprüfen, ob a = b T ist, also ob die Matrix a der transponierten Matrix b T entspricht (Rückgabewert = 1) oder nicht (Rückgabewert = 0). #define DIM 10 int a[dim][dim], b[dim][dim]; int check_trans(void) ***** Viel Erfolg!!! ***** Seite 7 von 8

(Platz für Notizen und Nebenrechnungen) Seite 8 von 8