switch-case Umgebung
HAllo, werde einfach nicht schlau, warum das nicht klappt:
die erste case Bedingung ist nur zum Testen eingefügt, denn TN müsste den Wert 0 haben (habe ich auch durch alert(TN) geprüft. Es geht um eine Berechnung in Abhängigkeit der Teilnehmerzahl eines Kurses. TN ist dann die ZAhl der Teilnehmer. Jetzige Ausgabe ist 3,5. Das dürfte der Wert aus der zweiten case-Bedingung sein. Aber wie gesagt: TN ist 0 (sollte 0 sein). HAt jemand einen Hinweis?
======================= schnipp =======================
let TN := number('Anzahl TN Päd');
let Basis := 102 * 2.5 / 19;
switch TN do
case TN = 0:
88
case 0 < TN and TN < 10:
round(Basis * 0.5) / 2
case 9 < TN and TN < 12:
round(Basis * 0.7) / 2
case 11 < TN and TN < 15:
round(Basis * 0.8) / 2
case 14 < TN and TN < 18:
round(Basis * 0.9) / 2
case 18:
round(Basis) / 2
case TN > 18:
round(Basis * 1.1) / 2
default:
0
end
======================= schnapp =======================
4 Antworten
-
case 0 < TN and TN < 10:
case statements can only contain values but not expressions
-
Vorschlag:
*
switch TN > 0 docase TN < 10:round(Basis * 0.5) / 2case TN < 12:round(Basis * 0.7) / 2case TN < 15:round(Basis * 0.8) / 2case TN < 18:round(Basis * 0.9) / 2case TN = 18:round(Basis) / 2case TN > 18:round(Basis * 1.1) / 2default:0end* -
Hallo Maurice,
---
let TN := number('Anzahl TN Päd');let Basis := 102 * 2.5 / 19;switch TN >= 0 docase TN > 0 and TN < 10:round(Basis * 0.5) / 2case TN > 9 and TN < 12:round(Basis * 0.7) / 2case TN > 11 and TN < 15:round(Basis * 0.8) / 2case TN > 14 and TN < 18:round(Basis * 0.9) / 2case TN = 18:round(Basis) / 2case TN > 18:round(Basis * 1.1) / 2default:0end---
Leo
-
Danke Leo, worked!
Content aside
- vor 4 JahrenZuletzt aktiv
- 4Antworten
- 207Ansichten
