Normal
Ich verstehe schlicht nicht, was Du genau versuchst. Der Ansatz mit dem[CODE=java] for (int f = 2; f >= 0; --f) { if ((vi & (1 << f)) == (0)) System.out.print('0'); else if ((vi & (2 >> f)) == (0)) System.out.print('1'); else System.out.print('2'); }[/CODE]ist doch von der Logik her schlicht falsch.Das funktioniert im Dualsystem, da die Darstellung ja mit Bits ist und damit dual, aber jetzt geht es bei den Zahlen um das Dreiersystem. Da macht das keinerlei Sinn.Egal was Du programmieren willst: Du musst immer erst die fachliche Komponente verstanden haben. Das war der Grund, wieso ich das eine oder andere Erläutert hatte zu der Lösung.
Ich verstehe schlicht nicht, was Du genau versuchst. Der Ansatz mit dem
[CODE=java] for (int f = 2; f >= 0; --f) {
if ((vi & (1 << f)) == (0))
System.out.print('0');
else if ((vi & (2 >> f)) == (0))
System.out.print('1');
else
System.out.print('2');
}[/CODE]
ist doch von der Logik her schlicht falsch.
Das funktioniert im Dualsystem, da die Darstellung ja mit Bits ist und damit dual, aber jetzt geht es bei den Zahlen um das Dreiersystem. Da macht das keinerlei Sinn.
Egal was Du programmieren willst: Du musst immer erst die fachliche Komponente verstanden haben. Das war der Grund, wieso ich das eine oder andere Erläutert hatte zu der Lösung.