Wie eine Entscheidung zu treffen, ohne eine if-Anweisung

Ich bin dabei, einen Kurs in Java und wir haben noch nicht offiziell gelernt, wenn Aussagen noch. Ich studierte und sah diese Frage:

Schreiben Sie eine Methode namens zu bezahlen, akzeptiert zwei Parameter: eine reelle Zahl für eine TA-Gehalt, und eine ganze Zahl für die Anzahl Stunden die TA gearbeitet in dieser Woche. Die Methode soll zurückgeben, wie viel Geld für die TA. Zum Beispiel den Anruf zahlen(5.50, 6) sollte die Rückkehr 33.0. Der TA erhalten sollten, die "überstunden" bezahlen das 1,5-fache der normalen Lohn für alle Stunden über der 8. Zum Beispiel den Anruf zahlen(4.00, 11) zurückgeben sollte (4.00 * 8) + (6.00 * 3) oder 50,0.

Wie lösen Sie dies ohne Verwendung von if-Anweisungen? Bisher habe ich dieses, aber ich bin stecken geblieben auf regelmäßige Bezahlung:

public static double pay (double salary, int hours) {

     double pay = 0;

     for (int i = hours; i > 8; i --) {
         pay += (salary * 1.5);
     }
}
  • Wenn Sie bereits gelernt haben loops, aber nicht, wenn-Aussagen (was schon seltsam ist, btw), die Sie verwenden können for(; condition; ) { …; break; } wie if (condition) { … }
  • Recht, wenn das soll ein Rätsel sein mit dem Frager die Hände gebunden, dann ist das ein guter Weg, um zu lösen, Sie innerhalb der Regeln. Wenn es nicht sein soll, dass Art von puzzle -, dann, ohne zu wissen, was vermittelt worden ist, ich bin ein bisschen ratlos, herauszufinden, welche Antwort der Fragende Lehrer, der erwartet wird. Hoffentlich ist es nicht. Es gibt einige gute Vermutungen in die Antworten 🙂
  • Ich bin mir nicht sicher, was all die Aufregung ist nicht mit einem if - Anweisung. Ich sehe die Frage und denken: Warum sollte ich einen if, dass nur mein code länger/komplizierter. Wenn ich if ich effektiv neu erstellen min und max. Diese Art der Berechnung ist, was min und max sind für. In vielen Situationen (z.B. ein Arbeitsblatt), diese sind auf jeden Fall die bevorzugte Lösung.
  • Ich habe eine harte Zeit, herauszufinden, warum jemand würde Fragen, dies zu lösen, ohne zu erklären if, doch mit erklärt for Schleifen und Funktionen (mit Argumenten). Warum nicht erklären, der mehr grundlegende Dinge zuerst? Rätselhaft.
  • Haben Sie nicht nur vermissen einen Vortrag? Schleifen, bevor ifs sind Sie sicher, dass seltsam.
InformationsquelleAutor babyDev | 2016-08-31
Schreibe einen Kommentar