# zahl in einzelzahlen zerlegen



## lordsaibo (25. Nov 2006)

hallo ich habe mit einem kleinen programm angefangen das das alter in tagen bestimmt und möchte nur die besonderen geburtstag z.b. der 8888 tag errechnen. 

meine idee war die zahl z.b. 7654 in 7, 6, 5, 4 zu zerlegen und dann mit if / else etwas zu bastel was z.b. fragt ist zahl 1 gleich zahl 2 gleich zahl 3  

wie zerlegen ich eine zahl in einzelzahlen. die zahl wird als string von der tastatur eingelesen und dann direkt in int umgewandelt... 

```
public static int ein() throws IOException
  {
    String einlesen;
    int einlesen_int;
    
    BufferedReader e = new BufferedReader(new InputStreamReader(System.in));
    
    einlesen = e.readLine();
    einlesen_int = Integer.parseInt(einlesen);
    return einlesen_int;
  }
```

reicht euch dieser code ausschnitt oder soll ich alles posten? 

vielen dank schonmal 

lordsaibo


----------



## The_S (25. Nov 2006)

Als String behalten und dann mittels

String#toCharArray in ein Array zerlegen. Schon haste alle Zahlen einzeln


----------



## lordsaibo (25. Nov 2006)

problem ist dass bei mir der wert ein int sein muss weil die zahl noch in der main methode verrächnet wird. kann ich ein char vergleichen? weil das ist ja keine echte zahl oder? 


das meintest du oder:



> toCharArray
> 
> public char[] toCharArray()
> 
> ...


----------



## byte (25. Nov 2006)

1 RHS = zahl % 10
2 zahl /= 10
3 GOTO 1


----------



## lordsaibo (25. Nov 2006)

bin java anfänger? was soll das sein? :bahnhof:


----------



## SlaterB (25. Nov 2006)

wenn du 1234 hast
dann ist
1234 % 10 = 4
1234 / 10 = 123

wiederhole (GOTO 1):
123 % 10 = 3
123 / 10 = 12

usw. so kriegst du alle Ziffern


-------
mit charAt bekommst du
'1'
'2'
'3'
'4'

diese chars kann man in ints umwandeln,
int i = (int) char;
für '1' bekommst du dann zwar nicht direkt 1 sondern 49 oder so (testen!),
aber wenn du dann einfach 48 abziehst, dann hast du die Ziffer,
zum Glück ist das eine konstante Zahl die für alle Ziffern abzuziehen ist,

also gibt viele Wege,
vor allem kennt man die selber wenn man ordenlich mit einem Buch lernt


----------

