Kontrollstrukturen und Funktionen in C



Ähnliche Dokumente
Informatik Repetitorium SS Volker Jaedicke

1 Vom Problem zum Programm

Einführung in die Programmierung

Erwin Grüner

Programmierkurs Java

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

Einführung in die Programmierung

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Graphic Coding. Klausur. 9. Februar Kurs A

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

Hochschule München, FK 03 FA SS Ingenieurinformatik

Klausur in Programmieren

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

Professionelle Seminare im Bereich MS-Office

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

Klausur in Programmieren

Ingenieurinformatik Diplom-FA (C-Programmierung)

Angewandte Mathematik und Programmierung

Java Kurs für Anfänger Einheit 5 Methoden

Programmierung in C. Grundlagen. Stefan Kallerhoff

5. Übung: PHP-Grundlagen

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich

Einführung in die Programmierung (EPR)

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

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

Übungskomplex Felder (1) Eindimensionale Felder Mehrdimensionale Felder

Kosten-Leistungsrechnung Rechenweg Optimales Produktionsprogramm

Vom Algorithmus zum Programm

Bundesverband Flachglas Großhandel Isolierglasherstellung Veredlung e.v. U g -Werte-Tabellen nach DIN EN 673. Flachglasbranche.

Informatik Grundlagen, WS04, Seminar 13

Übung Grundlagen der Programmierung. Übung 05: Arrays. Abgabetermin: xx.xx.xxxx. Java-Programm Testplan Testergebnisse

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:

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

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben

Datenbanken Microsoft Access 2010

Zählen von Objekten einer bestimmten Klasse

FB Informatik. Fehler. Testplan

Fallunterscheidung: if-statement

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Die Größe von Flächen vergleichen

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

AutoCAD Dienstprogramm zur Lizenzübertragung

Übung 9 - Lösungsvorschlag

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe

Grundlagen der Theoretischen Informatik, SoSe 2008

Studentische Lösung zum Übungsblatt Nr. 7

Grundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung

Einführung in die Programmierung

6.2 Scan-Konvertierung (Scan Conversion)

C++ Tutorial: Timer 1

Objektorientierte Programmierung

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = Euro ergeben.

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter

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

Kontrollstrukturen und Funktionen in C

Repetitionsaufgaben: Lineare Gleichungen

sondern alle Werte gleich behandelt. Wir dürfen aber nicht vergessen, dass Ergebnisse, je länger sie in der Vergangenheit

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Übungen zu C++ Kapitel 1

Der monatliche Tarif für ein Handy wurde als lineare Funktion der Form f(x) = k x + d modelliert (siehe Grafik).

Java-Programmierung mit NetBeans

Programmieren in C. Rekursive Funktionen. Prof. Dr. Nikolaus Wulff

Erfahrungen mit Hartz IV- Empfängern

Zur drittletzten Zeile scrollen

Wie lässt sich die Multiplikation von Bruchzahlen im Operatorenmodell und wie im Größenmodell einführen?

3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?

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

Aufgabensammlung Bruchrechnen

Fotogalerie mit PWGallery in Joomla (3.4.0) erstellen

Einführung zum Arbeiten mit Microsoft Visual C Express Edition

Testklausur 1 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten

Webalizer HOWTO. Stand:

Kapitel MK:IV. IV. Modellieren mit Constraints

Übungsaufgaben Tilgungsrechnung

Kundenspezifische Preise im Shop WyRu Online-Shop

Kontrollstrukturen, Strukturierte Programmierung

5. Tutorium zu Programmieren

Klausur in Programmieren

Programmieren für Ingenieure Sommer Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.

Rundung und Casting von Zahlen

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

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff

Diana Lange. Generative Gestaltung Operatoren

5. Lineare Funktionen

2A Basistechniken: Weitere Aufgaben

Grundlagen Programmierung

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

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen

Plotten von Linien ( nach Jack Bresenham, 1962 )

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

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Übersicht Programmablaufsteuerung

Erster Prüfungsteil: Aufgabe 1

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

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

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

Entwurf von Algorithmen - Kontrollstrukturen

Transkript:

Kontrollstrukturen und Funktionen in C Lernziele: Vertiefen der Kenntnisse über Operatoren, Kontrollstrukturen und die Verwendung von Funktionen. Aufgabe 1: Quickies: Datentypen in C a) Was sind die elementaren Datentypen für ganzzahlige Werte in C? b) Was versteht man unter expliziter bzw. impliziter Typumwandlung? Nennen Sie jeweils ein Beispiel. Aufgabe 2: Quickies: Operatoren a) Geben Sie die natürliche Abarbeitungsfolge der folgenden Ausdrücke durch entsprechende Klammerung an. j < m && n < m m + n!p x * 5 5 && m / n j <= 10 && x >= 5 && m b) Erläutern Sie den Unterschied zwischen dem Pre- und Postinkrement- Operator. S. 1 / 6

Aufgabe 3: Kontrollstrukturen: Schleifen Geben Sei folgender Algorithmusschritt: Die Variable i wird auf 10 gesetzt SOLANGE i größer als 0 ist FÜHRE AUS Drucke den Wert i aus i wird dekrementiert ENDE SOLANGE Drucke Los geht s aus Übersetzen Sie diesen Algorithmusschritt dreimal in C- Code. 1. Verwenden Sie eine while- Schleife 2. Verwenden Sie eine do-while- Schleife 3. Verwenden Sie eine for- Schleife Zusatz- Aufgabe 4: Kontrollstrukturen: Fallunterscheidung Schreiben Sie ein C- Programm, das prüft, ob eine eingegebene Uhrzeit (d.h. Stunde, Minute und Sekunde) korrekt ist. (Optional: Schreiben Sie dafür Testfunktionen wie iststundekorrekt(...) etc.) Hinweis: Überlegen Sie sich, welche Werte für Stunde sowie Minute und Sekunde zulässig sind. Aufgabe 5: Maximum aus drei Zahlen a) Entwickeln Sie eine C- Funktion max3_1(x, y, z), die das Maximum aus drei übergebenen Zahlen bestimmt und zurückliefert. b) Entwickeln Sie eine C- Funktion max3_2(x, y, z), die das Maximum aus drei übergebenen Zahlen bestimmt und zurückliefert. Verwenden Sie dabei folgende C- Funktion: int max(int x, int y) { int ergebnis; if ( x > y ) { ergebnis = x; else { ergebnis = y; return ergebnis; c) Schreiben Sie ein C- Hauptprogramm, das mit Hilfe von max3_1(x, y, z) und max3_2(x, y, z) das Maximum aus 0, - 5 und 14 bestimmt und am Bildschirm ausgibt. S. 2 / 6

Aufgabe 6: Modularisierung durch Funktionen Modularisieren Sie das angegebene C- Programm, in dem Sie die Berechnung des Mittelwertes als C- Funktion implementieren. Diese neue C- Funktion soll lediglich die Berechnung (mit Eingabe der einzelnen Zahlen), aber selbst keine Ausgabe- Operationen enthalten. Bitte geben Sie das vollständige C- Programm mit der neuen C- Funktion und der adaptierten main- Funktion an. #include <stdio.h> // Ermittlung und Ausgabe des // Mittelwertes einer Zahlenfolge void main(void) { int zahl, summe, i; printf("mittelwert\n"); summe = 0; i = 1; while (i <= 4) { printf("zahl = "); scanf("%d", &zahl); summe = summe + zahl; i = i+1; printf("mittelwert = %d \n", summe/4); Aufgabe 7: Aufruf von Funktionen / Call- by- Value Geben Sie die Ausgabe des folgenden Programms an: #include <stdio.h> int fun(int x, int y) { int res; x = x + y; y++; res = x - y; printf("fun: x = %d, y = %d, res = %d\n", x, y, res); return res; void main(void) { int a = 5, b = 2, ergebnis; printf("a = %d, b = %d\n", a, b); ergebnis = fun(a, b); printf("a = %d, b = %d, ergebnis = %d\n", a, b, ergebnis); S. 3 / 6

Aufgabe 8: Funktionen im Zusammenspiel "Reihenentwicklung" a) Entwickeln Sie einen Algorithmus mit Namen natlog1, der bei seinem Aufruf als Parameter ein reelles z mit 0 < z <= 2 übernimmt, den Wert des natürlichen Logarithmus' mit der übernommenen Genauigkeit epsilon berechnet und zurückliefert. Zur Berechnung des natürlichen Logarithmus soll die nachfolgend aufgeführte Reihenddarstellung verwendet werden: 2 ln 1 + x = ( 1) +,-./ +34 für - 1 < x 1 +01 b) Übersetzen Sie den Algorithmus in eine C- Funktion natlog1(). c) Schreiben sie eine C- Funktion natlog2(), die bei ihrem Aufruf als Parameter ein reelles z mit z > 0 sowie ein reelles epsilon (Genauigkeit) übernimmt, den Wert des natürlichen Logarithmus' mit der übernommenen Genauigkeit epsilon berechnet und zurückliefert. Zur Berechnung des natürlichen Logarithmus wurde die nachfolgend aufgeführte Reihenddarstellung verwendet: ln x = 2 5.,71 5+01 5+01,01 +34 für x > 0 d) Entwickeln Sie eine Hauptfunktion in C (main()) : die den reellen Wert für z einliest und die Genauigkeit epsilon auf 10-6 setzt, die die Funktionen natlog1() und natlog2() mit dem eingelesenen Wert für z aufruft und die die berechneten Werte auf dem Bildschirm ausgibt. Nicht ausgelastet? Modifizieren Sie das C- Programm so, dass das C- Programm testet, welche der beiden Reihen für ln(2) schneller konvergiert. Zusatz- Aufgabe 9: Umrechnung kw nach PS Schreiben Sie ein C- Programm, das folgende Tabellen ausgibt: S. 4 / 6

Die Umrechnung von kw nach PS erfolgt nach der Formel: 1 kw = 1.35962173 PS und soll in einer Funktion kw2ps erfolgen. Ändern Sie das Programm so, dass die Werte in Fünfer- Abständen angezeigt werden, die Ausgabe mit 4 Nachkommastellen erfolgt und Start- und Endwert variabel sind, also eingegeben werden können. Erstellen Sie jeweils eine Version des Programms mit for-, while- bzw. do-while- Schleife. Zusatz- Aufgabe 10: Umrechnungen Schreiben Sie C- Funktionen, die jeweils folgende Umrechnungen durchführen können: a) von Grad Celsius nach Grad Fahrenheit: F = ( C * 9/5) + 32 b) von Kilometer nach Meilen: 1 mile = 1,609 km c) von Zentimeter nach Zoll: 1 Zoll = 25,4 mm Schreiben Sie eine Benutzeroberfläche zur Auswahl der Umrechnung. Ein mögliches Auswahlmenü könnte wie folgt aussehen: Umrechnungen: [1] PS -> KW [2] C -> F [3] km -> Meilen [4] cm -> Zoll [5] Abbruch -------------------- Ihre Auswahl? Nicht ausgelastet? Erweitern Sie Ihr Programm um Umrechnungsfunktionen in die jeweils andere Richtung, d.h. Von PS nach kw S. 5 / 6

von Grad Fahrenheit nach Grad Celsius von Meilen nach Kilometer von Zoll nach Zentimeter S. 6 / 6