# string ausgabe



## BlueEye (19. Nov 2007)

hallo

ich gebe hier den wert des pascalschen dreiecks an stelle z/s (zeile/spalte) aus
nun soll ich jede zeile als string ausgeben
habe dazu leider gar keine idee..

public static String ausgabe() {

String ausgabe = "";

und nun muss ich das ja irgendwie mit meiner funktionsberechnung in verbindung bringen
habt ihr ne idee?


}




```
static int counter =0;	
	

		public static void main(String[] args) {
		for (int zeile=1; zeile<10; zeile++) {
		for (int spalte=1; spalte<=zeile; spalte++) {
		
		}
		
		}
		int wert = f_pascal( 5 , 2);
		
		
		
		System.out.println("Zahl : "+wert+"   Aufrufe: "+counter+"  ");
		System.out.println();
	
	
		}
		
		public static int f_pascal(int zeile, int spalte) {
			if (spalte==1 || spalte==zeile)
			return 1;
			counter++;
			return f_pascal(zeile-1,spalte) + f_pascal(zeile-1,spalte-1);
			}
```


----------



## Gast (20. Nov 2007)

Du willst "wert" in den String ausgabe schreiben?
Das ginge so:

String ausgabe = ""+wert


----------



## @x.l (20. Nov 2007)

oder:

```
String ausgabe = String.valueOf(wert);
```


----------



## ARadauer (20. Nov 2007)

du willst sowas hier oder?







lassen wir das mal mit dem einrücken:

so zb


```
static int	counter	= 0;

	public static void main(String[] args) {

		for (int zeile = 1; zeile < 10; zeile++) {
			for (int spalte = 1; spalte <= zeile; spalte++) {
				int wert = f_pascal(zeile, spalte);
				System.out.print(wert+" ");
			}
			System.out.println();

		}	
	}

	public static int f_pascal(int zeile, int spalte) {
		if (spalte == 1 || spalte == zeile)
			return 1;
		counter++;
		return f_pascal(zeile - 1, spalte) + f_pascal(zeile - 1, spalte - 1);
	}
```

soll aber wahrscheinlich, die spitze in der mitte sein oder? moment.....


----------



## ARadauer (20. Nov 2007)

so vielleicht


```
int maxZeilen = 5;

		for (int zeile = 1; zeile < maxZeilen+1; zeile++) {
			
			int indent = maxZeilen-zeile;
			System.out.print(getIndent(indent));
			for (int spalte = 1; spalte <= zeile; spalte++) {
				int wert = f_pascal(zeile, spalte);
				System.out.print("|"+wert+"|   ");
			}
			System.out.println();

		}	
	}

	public static int f_pascal(int zeile, int spalte) {
		if (spalte == 1 || spalte == zeile)
			return 1;
		counter++;
		return f_pascal(zeile - 1, spalte) + f_pascal(zeile - 1, spalte - 1);
	}
	
	public static String getIndent(int x){
		StringBuffer buf = new StringBuffer();
		for(int i = 0; i<x; i++){
			buf.append("   ");			
		}
		return buf.toString();
	}
```

wobei das bei mehreren zeilen schlimm aussieht, weil die zahlen mehr platz brauchen, versuchs mal mit tabulatoren, vielleicht geht das besser.


----------

