carookee - group communication for you
Home / JavaForum / Java allgemein
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.987 User online
1 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 1473 von 2212 (67%) |<   <   >   >|

Autor Gast
Datum 23.05.02, 18:46
Betreff ausgabeformatierung


Hallo, ich habe da ein Problem wo ich nicht weiter komme.
Hier mein Quelltext:
import java.util.*;


public class Algorithmus
{
    private int weite = 0;
    private int menge = 0;
    private int[][] zahlenfeld =null;
    public Algorithmus()
    {
        weite = 5;
        menge = weite*weite;
        zahlenfeld = new int[weite][weite];
        ausrechnen();
        ausgabe();
    }
    public Algorithmus(int a)
    {
        weite = a;
        menge = weite*weite;
        zahlenfeld = new int[weite][weite];
        ausrechnen();
        //ausgabe();
    }
    public void ausrechnen()
    {
        //Startposition im Feld Mitte des oberen Feldes
        int posx=((weite-1)/2), posy = 0;
        zahlenfeld[posy][posx]=1;
        for(int x=2;x<menge+1;x++)
        {
            
            if (posy<1)
            {
                if (posx<1)
                {
                    posy=weite-1;
                    posx=weite-1;
                }
                else
                {
                    posy=weite-1;
                    posx=posx-1;
                }
            }
            else
            {
                if (posx<1)
                {
                    posx=weite-1;
                    posy=posy-1;
                }
                else
                {
                    posx=posx-1;
                    posy=posy-1;
                }
            }
            if (zahlenfeld[posy][posx]!=0)
            {
                if (posy==(weite-1))
                {
                    if (posx==(weite-1))
                    {
                        posy=1;
                        posx=0;
                    }
                    else
                    {
                        posy=1;
                        posx=posx-1;
                    }
                }
                else
                {
                    posy=posy+2;
                    posx=posx+1;
                }
            }
            zahlenfeld[posy][posx]=x;
        }
        
    }
    public void ausgabe()
    {
        for (int x=0; x<weite; x++)
        {
            System.out.println();
            for (int y=0; y<weite; y++)
            {
                System.out.print(zahlenfeld[x][y]+" ");
            }
        }
        
    }
    public static void main(String[] args)
    {
        Algorithmus neu = new Algorithmus();
    }
    
}


Die Ausgabe sieht so aus:

15 8 1 24 17

16 14 7 5 23

22 20 13 6 4

3 21 19 12 10

9 2 25 18 11

Ich möchte das alle Zahlen ordentlich ausgerichtet sind und nicht so unordentlich.
so wie bei der Ausgabe:

6 1 8

7 5 3

2 9 4

Hat hier jemand einen Tip für mich, für jeden Rat bin ich dankbar.


Diskussionsverlauf:
ausgabeformatierung
        Re: ausgabeformatierung
            Re: ausgabeformatierung
    Re: ausgabeformatierung

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com