Aufgaben: Gierhardt. 1 import javakara. JavaKaraProgram ; 3 public c l a s s Quadrat extends JavaKaraProgram 4 { 5 void turnaround ( )

Ähnliche Dokumente
Gierhardt. 1 import javakara. JavaKaraProgram ; 3 public class Playit1 extends JavaKaraProgram. 4 { // Anfang von Playit1. 6 void gehezumbaum ( ) 7 {

Informatik 11: Einführung in Java. Lösungen zu den Rekursions-Aufgaben

Arbeiten mit JavaKara

Kapitel 3: Variablen

Einführung in JAVAKARA

Gestern: Kara. Steuerung: Endliche Automaten

public class SternchenRechteckGefuellt {

Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen)

Kapitel 2: Programmfluss steuern

Welche Informatik-Kenntnisse bringen Sie mit?

HTW IMI-B Informatik 1 Kara Worksheet 2 Seite: 1. Variables to store a true/false state: boolean movingright = true;

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

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

JAVA für Nichtinformatiker - Probeklausur -

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte)

Institut fu r Informatik

JavaKara. public void myprogram() { int zaehler = zaehlekleeblaetterbisbaum(); tools.showmessage("ich habe "+zaehler+ " Kleeblaetter gefunden.

ergeben die Strecken eine Länge von 85 cm. Wie lang sind die Strecken? 1. Strecke: x 2. Strecke: 4x x 4x 85 x 17

JAVA-Datentypen und deren Wertebereich

Greenfoot: Verzweigungen

AUFGABE 1: REGULÄRE AUSDRÜCKE (5 PUNKTE)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario:

Objektorientierte Programmierung OOP Programmieren mit Java

Client-Server-Beziehungen

Web und Mobile Apps Programmieren mit Dart

Programmiervorkurs SS 2011 Technische Universität Darmstadt Jan Hendrik Burdinski, Felix Kerger

Herzlich willkommen zur Demo der mathepower.de Aufgabensammlung

1 2 3 Bewege Stapel von links nach rechts. In jedem Zug darf genau ein Ring bewegt werden. Es darf nie ein größerer auf einen kleineren Ring gelegt we

5.5.8 Öffentliche und private Eigenschaften

9 Türme von Hanoi Bewege Stapel von links nach rechts. In jedem Zug darf genau ein Ring bewegt werden. Es darf nie ein größerer auf einen kleine

Prüfung Computation, Programming

JAVA - Methoden - Rekursion

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

II.3.1 Rekursive Algorithmen - 1 -

Übungsblatt 3: Algorithmen in Java & Grammatiken

Arbeitsblatt zur While Schleife

Programmierkurs Java

Java Einführung Abstrakte Klassen und Interfaces

Prüfung Computation, Programming

2. Methoden. n Generelles zum Aufruf von Methoden. n Parameterübergabemechanismen (call by value, call by reference)

Aufgabe 1: Programmieren in Java mit Greenfoot Ballonabschießen

Java Kurs für Anfänger Einheit 5 Methoden

Ersetzbarkeit und Verhalten

Beispiel für überladene Methode

Programmiervorkurs SS 2011

Lösungsvorschläge. zu den Aufgaben im Kapitel 4

Selbsteinstufungstest Vorkurs Programmieren

Einstieg in die Informatik mit Java

Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten.

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */)

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Um dies zu vermeiden, werden nun drei so genannte Testbefehle eingeführt:

Programmierkurs Java

Montessori-Diplomkurs Inzlingen Geometrische Mappe Die metallenen Dreiecke

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen

Einstieg in die Informatik mit Java

Graphic Coding. Klausur. 9. Februar Kurs A

Rekursion mit JavaKara

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

C.1 Klasse SHamster. public class SHamster extends Hamster { private Hamster shamster;

3. Anweisungen und Kontrollstrukturen

Theorie zu Übung 8 Implementierung in Java

Sekundarschulabschluss für Erwachsene

Ein spielerischer Einstieg in die Programmierung mit Kara und Java

Aufgabe S 1 (4 Punkte)

Einstieg in die Informatik mit Java

Allgemeine Informatik I

Algorithmen und Programmierung II

Einführung in die Informatik - Teil 4b - Zeichnen mit der Maus im JBuilder

Informatik mit Kara. Spielerischer Einstieg in die Informatik. Gerhard Bitsch. Seminarsitzung Informatik, Januar Kepler - Gymnasium Tübingen

5. Tutorium zu Programmieren

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

Quader und Würfel. 1. Kreuze jene Wörter oder Bilder an, die Körper bezeichnen. Mathematische Bildung von der Schulstufe

Java Einführung Methoden. Kapitel 6

Informatik B von Adrian Neumann

Java programmieren: Konsolen-Programme

Java Kurzreferenz Für Fortgeschrittene

JAVA - Methoden

Informatik Vorkurs. Informatik Vorkurs. Ersties und Panzer. Fachschaft Informatik. TU Kaiserslautern. Wintersemester 2014

Versuchsziele. Grundlagen. Überblick: FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem. 3.

Vorlesung Programmieren

Java: Vererbung. Teil 3: super()

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

Fundamentale Ideen der Informatik PH Weingarten Sommersemester 2014 Paul Libbrecht CC-BY. Vorlesung 3: Methoden, Scope

Greenfoot: Schleifen. 1. Die for- Schleife

Vorbereitung auf die Gymiprüfung 2017 im Kanton Zürich. Mathematik. Sekundarschule, Teil 2. Übungsheft

Greenfoot: Schleifen. 1. Die for-schleife

Android-Geräte Programmieren 4. Hinweise zur Android-Programmierung. Stefan Rothe

Programmieren in Java

Einstieg in die Informatik mit Java

GUI Programmierung in Java

Programmiervorkurs 2008

Ein erstes Java-Programm

Geordnete Binärbäume

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 14/15. Kapitel 11. Fehler und Ausnahmen 1

class BahnTest2 { public static void main(string[] args) { Zug myice = new Zug("ICE Duisburg", 1200, 0, 50); BahnCardFahrer kunde2 = new BahnCardFahre

Graphischer Editor für JavaKara

3. Konzepte der objektorientierten Programmierung

Transkript:

Informatik: Einführung in Java Gierhardt Kara legt Muster!(Lsg.) Aufgaben: 1. Kara soll ein mit Kleeblättern gefülltes Quadrat mit variabler Seitenlänge ablegen. Der Methodenaufruf quadratzeichnen(5) soll demnach ein Quadrat mit der Seitenlänge 5 erzeugen. 3 public c l a s s Quadrat extends JavaKaraProgram 6 { kara. t urnleft ( ) ; kara. t urnleft ( ) ; 8 } 9 10 void legex ( int anzahl ) 11 { // S t a r t auf erstem B l a t t ; Ende h i n t e r l e t z t e m B l a t t 1 for ( int i =1; i<=anzahl ; i++) 13 { kara. putleaf ( ) ; 14 kara. move ( ) ; 15 } 16 } 1 18 void gehex ( int anzahl ) 19 { for ( int i =1; i<=anzahl ; i++) kara. move ( ) ; 0 } 1 void quadratzeichnen ( int s e i t e n l a e n g e ) 3 { // In der l i n k e n oberen Ecke des Quad. nach r e c h t s s t a r t e n 4 for ( int i = 1 ; i<=s e i t e n l a e n g e ; i++) 5 { legex ( s e i t e n l a e n g e ) ; // K l e e b l a t t z e i l e a b l e g e n 6 turnaround ( ) ; gehex ( s e i t e n l a e n g e ) ; // und Z e i l e z u r u e c k l a u f e n 8 kara. t u rnleft ( ) ; // In naechste Z e i l e 9 kara. move ( ) ; 30 kara. t u rnleft ( ) ; 31 } 3 } 33 34 public void myprogram ( ) 35 { 36 quadratzeichnen ( 5 ) ; 3 } 38 } // Ende von Quadrat 1

. Kara soll ein mit Kleeblättern gefülltes Rechteck mit variabler Breite und Höhe ablegen. Der Methodenaufruf rechteckzeichnen(5,3) soll demnach ein Rechteck mit der Breite 5 und der Höhe 3 erzeugen. 3 public c l a s s Rechteck extends JavaKaraProgram 8 void legex ( int anzahl ) 9 {... } 10 11 void gehex ( int anzahl ) 1 {... } 13 14 void rechteckzeichnen ( int b r e i t e, int hoehe ) 15 { // In der l i n k e n oberen Ecke des R. nach r e c h t s s t a r t e n 16 for ( int i = 1 ; i<=hoehe ; i ++) 1 { 18 legex ( b r e i t e ) ; // K l e e b l a t t z e i l e a b l e g e n 19 turnaround ( ) ; 0 gehex ( b r e i t e ) ; // und Z e i l e z u r u e c k l a u f e n 1 kara. t u rnleft ( ) ; // In naechste Z e i l e kara. move ( ) ; 3 kara. t u rnleft ( ) ; 4 } 5 } 6 public void myprogram ( ) 8 { 9 rechteckzeichnen ( 5, 3 ) ; 30 } 31 } // Ende von Rechteck

3. Kara soll ein mit Kleeblättern gefülltes gleichschenkliges Dreieck mit variabler Seitenlänge ablegen. Eine Seite des Dreiecks soll waagerecht liegen. 3 public c l a s s GSDreieck extends JavaKaraProgram 8 void legex ( int anzahl ) 9 {... } 10 11 void gehex ( int anzahl ) 1 {... } 13 14 void gsdreieckzeichnen ( int s e i t e ) 15 { // In der l i n k e n unteren Ecke des g l e i c h s c h. 16 // Dreiecks nach r e c h t s s t a r t e n 1 int a k t B r e i t e ; 18 a k t B r e i t e = s e i t e ; 19 while ( a k t B r e i t e > 0) 0 { 1 legex ( a k t B r e i t e ) ; // K l e e b l a t t z e i l e a b l e g e n turnaround ( ) ; 3 gehex ( aktbreite 1); // und Z e i l e z u r u e c k l a u f e n 4 kara. turnright ( ) ; // In naechste Z e i l e 5 kara. move ( ) ; 6 kara. turnright ( ) ; a k t B r e i t e = a k t B r e i t e ; 8 } 9 } 30 31 public void myprogram ( ) 3 { 33 gsdreieckzeichnen ( ) ; 34 } 35 } // Ende von GSDreieck 3

4. Kara soll ein mit Kleeblättern umrandetes Rechteck mit variabler Breite und Höhe ablegen. 3 public c l a s s RechteckOffen extends JavaKaraProgram 5 void legex ( int anzahl ) 8 void rechteckoffenzeichnen ( int b r e i t e, int hoehe ) 9 { // In der rechten oberen Ecke des Rechtecks s t a r t e n 10 kara. move ( ) ; 11 for ( int i =1; i <= ; i++) 1 { 13 legex ( b r e i t e 1); // K l e e b l a t t z e i l e waagerecht 14 kara. turnright ( ) ; // a b l e g e n. 15 kara. move ( ) ; 16 kara. turnright ( ) ; 1 kara. move ( ) ; 18 kara. t u rnleft ( ) ; 19 legex ( hoehe 1); // K l e e b l a t t z e i l e s e n k r e c h t 0 kara. turnright ( ) ; // a b l e g e n. 1 kara. move ( ) ; kara. turnright ( ) ; 3 kara. move ( ) ; 4 kara. t u rnleft ( ) ; 5 } 6 } 8 public void myprogram ( ) 9 { 30 rechteckoffenzeichnen (, 5 ) ; 31 } 3 } // Ende von RechteckOffen 4

5. Kara soll ein mit Kleeblättern gefülltes Quadrat mit variabler Seitenlänge in Kegelaufstellung ablegen. Die Seiten des Quadrates sind Diagonalen in der Kara-Welt. Dazu soll eine Methode legekegelreihe(int anzahl) entwickelt werden, die eine diagonale Kegelreihe ablegt. Eine weitere Methode zurnaechstenreihe() ist ebenso zu programmieren. 3 public c l a s s KegelQuadrat extends JavaKaraProgram boolean rechtsum = true ; 5 6 void l e g e K e g e l r e i h e ( int anzahl ) { // S t a r t auf erstem B l a t t ; Ende h i n t e r l e t z t e m B l a t t 8 for ( int i =1; i<=anzahl ; i++) 9 { kara. putleaf ( ) ; 10 kara. move ( ) ; 11 kara. t u rnleft ( ) ; 1 kara. move ( ) ; 13 kara. turnright ( ) ; 14 } 15 } 16 1 void zurnaechstenreihe ( ) 18 { i f ( rechtsum ) 19 { kara. turnright ( ) ; 0 kara. move ( ) ; 1 kara. move ( ) ; kara. turnright ( ) ; 3 } 4 else { kara. t urnleft ( ) ; 5 kara. t urnleft ( ) ; 6 kara. move ( ) ; kara. move ( ) ; 8 } 9 rechtsum =! rechtsum ; 30 } 31 3 void kegellegen ( int s e i t e ) // In l i n k e r Ecke des 33 { for ( int i =1; i <= s e i t e ; i++) // Quadrates s t a r t e n. 3 l e g e K e g e l r e i h e ( s e i t e ) ; 35 zurnaechstenreihe ( ) ; 36 } 3 } 38 39 public void myprogram ( ) 40 { kegellegen ( 3 ) ; } 41 } // Ende von KegelQuadrat 5