Raute mit Rekursion "zeichnen"

IPodFan

Mitglied
Hallo Leute,
ich sitze grade eine Weile an einer Aufgabe, die ich absolut nicht rauskriege.
Ich soll eine Raute, also sowas:

#
###
#####
###
#

(Edit: Die Raute wird leider nicht richtig angezeigt. Die '#' sollen zentriert sein.)

mit der Höhe n (ein von mir eingelesener Wert) rekursiv und vollkommen ohne Schleifen 'zeichnen'.
Habt ihr da Denkanstöße oder Vorschläge für mich, wie ich das realisieren kann?

MfG
IPodFan
 

IPodFan

Mitglied

truesoul

Top Contributor
Hallo.

Du rufst deine Methode so oft auf bis eine Bedingung zutrifft.
z.B bis ein index von 5 erreicht wurde.

Sowas wie:

Java:
meineMethode(0, ......) ;

private void meineMethode(counter, ...){
      Wenn counter < 5 dann meineMethode(counter+1, .....)
}

Und in der Methode zeichnest du dann jede "Line". Nur du solltest auch der Methode was mitgeben, damit er weiß wieviel Rauten er zu zeichnen hat.

Grüße
 
Zuletzt bearbeitet:

IPodFan

Mitglied
Ehrlich gesagt kriege ich es immernoch nicht gebacken :p
Kriege es zwar realisiert, dass jede Zeile einzeln bearbeitet wird,
nur scheitere ich daran, in den Zeilen die richtige Anzahl an Rauten
an den richtigen Stellen auszugeben.
Müsste eigentlich doch nicht so schwer sein, oder?!

MfG
IPodFan
 

IPodFan

Mitglied
Code:
public static void drawRaute(int height, int counter) {
     
       // counter := Zeile
       height = height-1;
     
       if (counter > height) {
           return;
       }
     
       if (counter < height/2) {
           drawLine(height+1,counter,1);
       }
       if (counter == height/2) {
           drawLine(height+1,counter,1);
       }
       if (counter > height/2) {
           drawLine(height+1,counter,1);
       }
     
       drawRaute(height+1, counter+1);
     
     
   }
 
  
   
   public static void drawLine(int height,int line, int number) {
       
       // Anzahl Rauten in der Linie
       int amount = 1 + ((line-1)*2);
       
       if (number > height) {
           System.out.println();
           return;
       }
       
       if (number > ((height-amount)/2) && number < height-((height-amount)/2) ) {
           System.out.print("#");
           drawLine(height,line,number+1);
       } else {
           System.out.print(".");
           drawLine(height,line,number+1);
       }       
   }

Edit: eine if Klammer geändert

Die Funktion drawLine ist was nicht wirklich funktioniert.
 
Zuletzt bearbeitet:

TheWhiteShadow

Bekanntes Mitglied
Du benötigst 2 rekursive Methoden. Eine für die Zeilen, die andere für die Spalten.
Du versuchst grad alles in einer zu packen, was zwar möglich ist, aber der Schwierigkeitsgrad steigt hierdurch quadratisch an.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Regex Raute erkennen Allgemeine Java-Themen 2
P Rekursion Aufrufbaum Allgemeine Java-Themen 7
N rekursion mehrfach eine Methode Öffnen Allgemeine Java-Themen 4
districon Rekursion und Dynamische Programmierung Allgemeine Java-Themen 2
Zeppi Rekursion StackOverflowError Allgemeine Java-Themen 4
J Rekursion Allgemeine Java-Themen 4
Zrebna Wie kann man endgültig aus einer Rekursion ausbrechen? Allgemeine Java-Themen 14
parrot Rekursion Aufgabe Allgemeine Java-Themen 12
B Rekursion Allgemeine Java-Themen 11
X Wie mache ich hier eine Rekursion rein ? Allgemeine Java-Themen 7
J Rekursion Mergesort Allgemeine Java-Themen 10
R Rekursion Allgemeine Java-Themen 3
R Programm zur Rekursion Allgemeine Java-Themen 5
V Rekursion Allgemeine Java-Themen 2
J Denkfehler Rekursion Allgemeine Java-Themen 5
B Rekursion Allgemeine Java-Themen 2
B Rekursion Allgemeine Java-Themen 22
B Java Sternchen ausgeben mittels Rekursion Allgemeine Java-Themen 3
Hacer Rekursion- sumOfAllNodes Allgemeine Java-Themen 5
L Rekursion Binärbaum Allgemeine Java-Themen 7
Androbin Interpreter-Fehler Probleme mit Rekursion - StackOverflowError Allgemeine Java-Themen 8
Y Rekursion Allgemeine Java-Themen 19
M Permutation ohne Wiederholung mit rekursion Allgemeine Java-Themen 4
J Rekursion oder Iteration - verkettete Listen Allgemeine Java-Themen 8
T Pascalsches Dreieck ohne array und rekursion Allgemeine Java-Themen 9
P Rekursion Allgemeine Java-Themen 9
R Threading und Rekursion führen zu “GC overhead limit exceeded” Allgemeine Java-Themen 4
W Rekursion-Probleme mit return Allgemeine Java-Themen 35
C Rekursion Fibonacci Allgemeine Java-Themen 31
T Rekursion mit While Schleife kombinieren? Allgemeine Java-Themen 4
eQuest Rekursion Dauer Allgemeine Java-Themen 6
Weiti Swingworker und Rekursion Allgemeine Java-Themen 8
L fragwürdige Rekursion Allgemeine Java-Themen 4
L Kleine Rekursion Allgemeine Java-Themen 12
M Rekursion!! Allgemeine Java-Themen 8
J Rekursion in Schleifenkonstrukt wandeln Allgemeine Java-Themen 21
R Rekursion Ablauflogik Allgemeine Java-Themen 19
M Rückwärts geführte Rekursion Allgemeine Java-Themen 3
Schandro StackOverflowError bei Rekursion verhindern Allgemeine Java-Themen 14
G Werte bei Rekursion viel höher als erwartet Allgemeine Java-Themen 3
G Rekursion - Denksport Allgemeine Java-Themen 6
S Rekursion und StackOverflow Allgemeine Java-Themen 11
P Stackoverflow in Rekursion. Bin ich schuld oder Java? Allgemeine Java-Themen 9
W kompliziertes Konstrukt von Schleifen/If/else. Rekursion? Allgemeine Java-Themen 22
S Rekursion Allgemeine Java-Themen 2
Linad Tiefe der Rekursion als Abbruchbedingung Allgemeine Java-Themen 6
Linad Zahlensysteme -> Rekursion Allgemeine Java-Themen 4
N Frage zu einer Rekursion Allgemeine Java-Themen 4
berserkerdq2 Habe ein svg bild, kann ich das zu svg koordinaten umrechnen, damit ich den Umriss zeichnen kann? Wenn ja wie? Allgemeine Java-Themen 1
Aboya Kugel mit Hilfe von Dreiecken rekursiv zeichnen Allgemeine Java-Themen 2
F Linie zeichnen Allgemeine Java-Themen 35
P Zeichnen Allgemeine Java-Themen 18
S Best Practice Diagramm zeichnen Allgemeine Java-Themen 0
C Tortendiagramm zeichnen Allgemeine Java-Themen 3
U Koordinaten alle Pixel eines Dreiecks zeichnen ausgeben Allgemeine Java-Themen 5
D Baum zeichnen hilfe Allgemeine Java-Themen 4
B Zeichnen einer verschiebbaren Linie Allgemeine Java-Themen 3
I 2D-Grafik Polygon mit Double Werten zeichnen Allgemeine Java-Themen 4
D Grafische Objekte zeichnen Allgemeine Java-Themen 4
E Tool/Programm zum Zeichnen von UML Diagrammen Allgemeine Java-Themen 14
F 2D-Grafik drawString (scharf zeichnen lassen) Allgemeine Java-Themen 13
J Teil eines Image/ImageIcon zeichnen Allgemeine Java-Themen 2
D Lösung Differentialgl. mit RungeKutta + Kurve zeichnen Allgemeine Java-Themen 3
U Zeichnen mit JFrame. Allgemeine Java-Themen 5
lenniii zeichnen Allgemeine Java-Themen 2
N Tepich zeichnen Allgemeine Java-Themen 8
K Zeichnen auf ein Bild und Scrollen Allgemeine Java-Themen 7
S Problem mit Zeichnen Allgemeine Java-Themen 8
L Buffered Image teilweise zeichnen Allgemeine Java-Themen 6
B Tool zum Zeichnen von Systemarchitektur Allgemeine Java-Themen 2
MasterEvil Lib zum zeichnen von Baumdiagrammen? Allgemeine Java-Themen 4
O TimeSeriesChart Linien Fetter Zeichnen Allgemeine Java-Themen 2
B Programmablaufgraph erstellen und zeichnen Allgemeine Java-Themen 2
H Sinusähnliche Kurve mit Paint zeichnen! Allgemeine Java-Themen 3
G Bild neu zeichnen Allgemeine Java-Themen 13
E Pixelweise auf einem JPanel/JLabel o.ä. zeichnen Allgemeine Java-Themen 4
L Linien, Recktecke und Elipsen zeichnen ohne Image Allgemeine Java-Themen 2
R Grafiken. direkt zeichnen Allgemeine Java-Themen 5
S Auf vorhandenes Window zeichnen? Allgemeine Java-Themen 2
G BufferedImage zeichnen Allgemeine Java-Themen 4
S Vierecke zeichnen Allgemeine Java-Themen 18
T Rechtecke usw mit Paint auf Panel zeichnen Allgemeine Java-Themen 5
G Bilder zeichnen und Zoom Funktion Allgemeine Java-Themen 2
J Fenster mit paint Methode selbst zeichnen Allgemeine Java-Themen 3
A Zeichnen mit JAVA ! Allgemeine Java-Themen 3
T Linien-Diagramm zeichnen Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben