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

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

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2016/17. Allgemeine Informationen zum Praktikum

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

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Programmieren in C/C++ und MATLAB

Schleifen in C/C++/Java

Access 2010 Programmierung Schleifen

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

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

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

Verzweigungen und Wiederholungen

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Student: Alexander Carls Matrikelnummer: Aufgabe: Beschreibung des euklidischen Algorithmus Datum:

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

5. Elementare Befehle und Struktogramme

Programmieren lernen mit Groovy Rekursion Rekursion und Iteration

GI Vektoren

Syntax von LOOP-Programmen

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

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:

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

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.

Informatik B von Adrian Neumann

Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 10

BKTM - Programmieren leicht gemacht.

Kapitel 3: Variablen

Einführung in die Programmierung mit BlueJ

C.3 Funktionen und Prozeduren

Objektorientierte Programmierung OOP Programmieren mit Java

1 Vom Problem zum Programm

Rekursion. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

= 7 (In Binärdarstellung: = 0111; Unterlauf) = -8 (In Binärdarstellung: = 1000; Überlauf)

Schleifen in Javascript

Präzedenz von Operatoren

Thomas Behr. 17. November 2011

Theoretische Informatik SS 03 Übung 3

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Kontrollstrukturen und Funktionen in C

2.5 Programmstrukturen Entscheidung / Alternative

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

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

Programmieren I. Kapitel 5. Kontrollfluss

Flussdiagramm / Programmablaufplan (PAP)

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A

Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II

Vorlesung Programmieren

5. Tutorium zu Programmieren

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4

Einführung in die Java- Programmierung

Entwurf von Algorithmen - Kontrollstrukturen

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren

Kapitel 2: Programmfluss steuern

3. Anweisungen und Kontrollstrukturen

Praktikum am 16. April 2008 Variablen

Beispiel 19. December 4, 2009

Schleifenanweisungen

Abstrakte Algorithmen und Sprachkonzepte

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten.

Algorithmen und ihre Programmierung

SOI Die Schweizer Informatikolympiade

Tutoren Jan Ebbe Tatjana Frank Cedric Geissmann Sascha Scherrer Alexander Stiemer

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

Hochschule Darmstadt Informatik-Praktikum WS 2016/2017 WIng Bachelor 4. Aufgabenblatt Modularisierung, Funktionen, Unterprogramme

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

Programmierkurs Java

Abgabe: (vor 12 Uhr)

Gk Informatik Arbeitsblatt 1 Gr

Programmierkurs Python I

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

1.2 LOOP-, WHILE- und GOTO-Berechenbarkeit

Android will doch nur spielen. Java Übung

Einführung in die Programmierung mit VBA

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

ROOT Einführung. Statistische Methoden der Datenanalyse. Matthew Beckingham Henrik Wold Nilsen. 29. Oktober 2009

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

Übungspaket 23 Mehrdimensionale Arrays

Kurze Begründung, warum der Ausdruck korrekt ist oder jeweils zwei Gegenbeispiele, die zeigen, warum der Ausdruck nicht korrekt ist

EiP Übung Sichern Sie im Verzeichnis aufg3 den Inhalt des Artikels im Wochenmagazin "der Freitag" über google in der Datei artikel.

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. Hochschule Darmstadt -Fachbereich Informatik-

6. Iteration (Schleifenanweisungen)

Werkzeuge zur Programmentwicklung

Arbeiten mit JavaKara

Klausur zum Kurs Betriebssysteme (1802) am 19. September 2009

Tutorial zum Umgang mit Scratch

Programmierung mit C Zeiger

C- Kurs 04 Anweisungen

Mächtigkeit von WHILE-Programmen

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

Programmieren für Wirtschaftswissenschaftler SS 2015

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte

Einführung in die Programmierung Wintersemester 2011/12

Informatik 1 - Translation Studies in Information Technology. Musterlösung zum Aufgabenblatt der ersten Pflichtübung im Wintersemester 16/17

VBA mit Microsoft Excel für Kids

PROGRAMMIERUNG IN JAVA

Typdeklarationen. Es gibt in Haskell bereits primitive Typen:

Einstieg in die Informatik mit Java

Transkript:

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 5 Besprechung: 20. 24.11.2017 (KW 47) Vorbereitende Aufgaben Aufgabe 5.1: Schleifentypen Auf diesem Übungsblatt sollen Sie sich hauptsächlich mit Schleifen beschäftigen. Geben Sie die grundlegende Struktur der drei in Java verfügbaren Schleifen an: while-schleifen do-while-schleifen for-schleifen (Zählschleifen) Aufgabe 5.2: Finde die passende Schleife Formulieren Sie zu folgenden Sätzen den Kopf bzw. Fuß einer dazu passenden Schleife: Führe folgendes mindestens einmal aus, solange x größer als 0 ist: Für jedes i zwischen 3 und 15, führe folgendes aus: Solange x kleiner ist als 20, führe folgendes aus: Übungsblatt 5 Seite 1 von 5

Präsenzaufgaben Aufgabe 5.3: while-schleifen In dieser Aufgabe sollen Sie sich mit der Implementierung einer Wiederholung mit Hilfe einer while-schleife vertraut machen. Die Collatz-Folge einer Zahl n wird nach einer einfachen Regel gebildet: Ist n gerade, setze n auf n/2. Ist n ungerade, setze n auf n 3 + 1. Wiederhole dies mit dem neuen n. Es scheint, als würde diese Folge für jeden Startwert mit dem Zyklus 4, 2, 1 enden. Ob dies wirklich so ist, ist bis heute ein ungelöstes Problem der Mathematik. a) Berechnen Sie per Hand die Collatz-Folge dieser Zahlen: 12 13 64 9 b) Wir wollen die Berechnung der Collatz-Folge nun programmieren: Erstellen Sie eine neue Klasse mit dem Namen Collatz im Paket blatt05. Deklarieren und initialisieren Sie eine int-variable mit dem Namen collatz mit einem beliebigen, positiven Wert als Startwert der Collatz-Folge. Implementieren Sie folgende Anweisungen innerhalb einer while-schleife. Die Schleife soll abbrechen, wenn die Variable collatz den Wert 1 erreicht. Geben Sie den Inhalt der Variable collatz aus. Implementieren Sie eine if-anweisung, die in Abhängigkeit des aktuellen Wertes der Variablen collatz den Wert des nächsten Folgegliedes berechnet und in der Variablen collatz vermerkt. Geben Sie nach Abbruch der Schleife den Wert der Variable collatz noch einmal aus. Übungsblatt 5 Seite 2 von 5

Aufgabe 5.4: do-while-schleifen In dieser Aufgabe sollen Sie sich mit der wiederholten Ausführung von Anweisungen mit Hilfe einer do-while-schleife vertraut machen. Die Fibonacci-Folge ist eine bekannte Folge von Zahlen, die auch häufig in der Natur anzutreffen ist. Die bekanntesten Beispiele finden Sie in Radien von Schneckenhäusern, Ebenen von Blütenringen oder Hasenpopulationen wieder. Diese Folge wird wie folgt berechnet: Die ersten zwei Elemente sind 1. Jedes weitere Element ist die Summe der beiden vorhergegangenen Elemente. a) Berechnen Sie per Hand die ersten 10 Fibonacci-Zahlen: b) Implementieren Sie nun die Fibonacci-Folge. Erstellen Sie eine neue Klasse mit dem Namen Fibonacci im Paket blatt05. Deklarieren Sie zwei int-variablen mit den Namen fiblast und fibcurrent und initialisieren Sie sie mit den Werten 0 und 1. Deklarieren und initialisieren Sie eine int-variable mit dem Namen count und einem Wert, der repräsentiert wie viele Elemente der Fibonacci-Folge ausgegeben werden sollen. Implementieren Sie eine do-while-schleife, die folgende Anweisungen wiederholen soll, solange count größer als 1 ist: Geben Sie den Wert der Variable fibcurrent aus. Setzen Sie den Wert der Variable fiblast auf den Wert von fibcurrent und den Wert von fibcurrent auf die Summe des ehemaligen Wertes von fiblast und fibcurrent. Verwenden Sie eine Hilfsvariable zum Zwischenspeichern der benötigten Werte. Reduzieren Sie den Wert von count um 1. c) Welches Problem ergibt sich bei der Implementierung dieses Programmes mit einer do-while- Schleife, wenn der Wert von count kleiner ist als 1? Wie kann man das Problem beheben? Übungsblatt 5 Seite 3 von 5

Aufgabe 5.5: for-schleifen In dieser Aufgabe sollen Sie sich mit der Implementierung einer Wiederholung mit Hilfe einer for-schleife (Zählschleife) vertraut machen. Die Fakultät einer natürlichen Zahl n, geschrieben n!, ist definiert als das Produkt aller natürlichen Zahlen von 1 bis n. Die Fakultät von 0 (0!) ist dabei per Definition 1. Erstellen Sie eine neue Klasse mit dem Namen Factorial im Paket blatt05. Deklarieren und initialisieren Sie eine long-variable namens factorial mit dem Wert 1. Deklarieren und initialisieren Sie eine int-variable namens n mit einem beliebigen Wert, für den Sie die Fakultät berechnen wollen. Implementieren Sie eine for-schleife, die von 1 bis n zählt und den Wert der Zählvariablen mit factorial multipliziert und so den neuen Wert für factorial bildet. Geben Sie den Wert von factorial aus. Übungsblatt 5 Seite 4 von 5

Ergänzende Aufgaben Aufgabe 5.6: Verschachtelte Schleifen In dieser Aufgabe sollen Sie sich mit der Verwendung zweier verschachtelter Schleifen vertraut machen. Ein Tupel (a, b) ist eine Kombination zweier mathematischer Objekte zu einem einzelnen. So ist z. B. das Tupel (1, 2) das Tupel mit den Zahlen 1 und 2. a) Schreiben Sie ein Programm namens Tuples im Paket blatt05, in dem Sie zwei Variablen n und m deklarieren und initialisieren und alle Tupel unterschiedlicher Zahlenpaare zwischen 1 und n für das erste Element des Tupels und zwischen 1 und m des zweiten Elementes ausgeben. Verwenden Sie dazu zwei ineinander verschachtelte Schleifen. Die Ausgabe kann für n = 2 und m = 4 z. B. folgendermaßen aussehen: (1,2) (1,3) (1,4) (2,1) (2,3) (2,4) b) Schreiben Sie ihr Programm so um, dass es nun ein Zahlenpaar nur genau einmal ausgibt, also anstatt z. B. die Tupel (1, 2) und (2, 1) auszugeben nur eines von beiden ausgibt. Hierfür können Sie annehmen, dass m n gilt. Die Ausgabe kann für n = 2 und m = 4 z. B. folgendermaßen aussehen: (1,2) (1,3) (1,4) (2,3) (2,4) Übungsblatt 5 Seite 5 von 5