hilfe komme nicht weiter :(

11/12/2012 21:59 uebertreiber#1
guten abend und zwar hab ich eine aufgabe bekommen, die ich nicht ganz lösen kann und bräuchte dringend hilfe, ich hab zwar ansätze aber ich hänge da i.wie fest :/ und zwar lautet die aufgabe:

Erstellen Sie ein Programm welches vom Benutzer eine ganze Zahl einliest. Wenn die Zahl
durch 5 teilbar ist, soll das Ergebnis der Division durch 5 ausgegeben werden. Andernfalls
soll der Rest Modulo 5 ausgeben werden. Zwecks Lerneffekts ist bei dieser Aufgabe die
Verwendung von if NICHT gestattet.

Mein Ansatz ist:

[Java]
import java.util.Scanner;
public class Taschenrechner{
........public static void main(String[] args){
........Scanner scanner = new Scanner(System.in);
........int resultat = scanner.nextInt();
........}
}
[Java]

und genau hier hänge ich fest, da ich nicht mit IF arbeiten darf :S jetzt weiß ich leider nicht wie ich weiter machen soll und würde mich sehr auf eure hilfe freuen.

MfG
11/12/2012 22:14 nkkk#2
da du kein if benutzten darfst gehe ich dasvon auch das du auch kein "while", "for" oder "? :" benutzten darfst.

naja die lösung funktioniert aber schnell ist sie nicht grade:
Code:
		ergebniss =  Boolean.compare(value % 5 == 0, false)*(value/5) + Boolean.compare(value % 5 != 0, false) * (value % 5);
Boolean.compare benutze ich weil man leider nicht von boolean zu int casten kann.
11/12/2012 22:42 MoepMeep#3
Code:
(value % 5 == 0) ? value / 5 : value % 5;
Solange Lehrer nicht lernen sämtliche Kontrollstrukturen auszuschließen, nimmt man diese Lösung :>

Alternativ troll-lösungen wie diese hier:

Code:
while(value % 5 == 0) {
    return value / 5;
}
return value % 5;
Unfähige Lehrer gehören einfach getrollt :|