1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Brauche hilfe bei java Programm

Discussion in 'Programmieren' started by matze05, Nov 29, 2006.

Thread Status:
Not open for further replies.
  1. matze05

    matze05 ROM

    hallo,

    ich habe folgende aufgabe fürs studium:

    Schreiben Sie ein Programm Schnecke, das mit einer ganzen Zahl n zwischen 5 und 50 als Aufrufparameter gestartet werden kann und Ihren Namenwiederholt und schneckenförmig gewunden in einer Matrix der Größe n×n wie in den folgenden Beispielen für n=5, n=6 und n=11 ausgibt:

    Klara
    ___*
    Kla_M
    * u
    relle




    Klara*
    ____M
    *Muu
    r__ee
    a___l
    lK*rel


    bisschen doof dargestellt aber ich hoff ihr wisst was ich mein.

    meine lösung bisher sieht so aus:

    public class Schnecke {

    char[][] schnecke = null;

    char[] myName = null;

    public Schnecke(int groesse) {

    schnecke = new char[groesse][groesse];

    setName("Klara*Müller*");

    int indexH = 0;

    int indexV = 0;

    int indexName = 0;

    int leftBuffer = 0;

    int rightBuffer = 0;

    int topBuffer = 0;

    int bottomBuffer = 0;

    while (groesse/2-1 > leftBuffer) {

    // horzontal füllen l-r

    while (indexH <= groesse-1-rightBuffer){

    schnecke[indexV][indexH] = myName[indexName];

    indexName++;

    indexH++;

    }

    topBuffer++;

    indexV++;

    indexH--;

    // vertikal füllen o-u

    while (indexV <= groesse-1-bottomBuffer){

    schnecke[indexV][indexH] = myName[indexName];

    indexV++;

    indexName++;

    }

    rightBuffer++;

    indexV--;

    indexH--;

    // horizontal füllen r-l

    while (indexH >= 0+leftBuffer){

    schnecke[indexV][indexH] = myName[indexName];

    indexName++;

    indexH--;

    }

    bottomBuffer++;

    indexH++;

    // vertikal füllen u-o

    while (indexV >= 0+topBuffer){

    schnecke[indexV][indexH] = myName[indexName];

    indexName++;

    indexV--;

    }

    leftBuffer++;

    indexV++;

    }

    System.out.println(schnecke[0]);

    System.out.println(schnecke[1]);

    System.out.println(schnecke[2]);

    System.out.println(schnecke[3]);

    System.out.println(schnecke[4]);

    }

    private void setName(String string) {

    for (int i = 0; i < 5; i++)

    {

    string = string + string;

    }

    myName = string.toCharArray();

    }

    public static void main(String[] args) {

    Schnecke mySchnecke = new Schnecke(5);

    }

    }

    aber leider fehlt mir noch das letzte bisschen. hab schon ewig rumprobiert aber komm einfach nich weiter hoffe ihr könnt mir helfen.

    danke schonmal


    matze
     
  2. tetrododoxin

    tetrododoxin Kbyte

    pardon, ganz schlau werde ich aus Deinen Skizzen nicht.
     
  3. matze05

    matze05 ROM

    sry das kann man auch einfach schlecht darstellen. das wort soll halt wie eine schnecke gewunden ausgegeben werden. d.h von außen nach innen kleiner werdend und immer im kreis. ähnlich wie dieses spiel fürs handy. snake mein ich.

    hoffe ihr könnt mir helfen komm da echt absolut nich weiter...

    danke
     
Thread Status:
Not open for further replies.

Share This Page