Rechnung
-
Mein Problem liegt darin das mein Programm nicht 30/100*97 rechnen kann..
Hier mein Code :
long double schadenm=0; skills[1]=30; schadenm=0.1*skills[1]; schadenm=100-schadenm; schadenm=30/100*schadenm;
Woran liegt das Probelm??
Also ich habe es gestestet und bis hier :schadenm=100-schadenm;
rechnet er richtig nur die letzte rechnung nicht..
-
Was geht denn nicht? Bzw. wie äussert sich das?
-
Es steht zum schluss eine 0 in der Variable.
Aber hat sich schon geklärt habe die Rechnung umgestellt
-
Das Problem ist Integer-Division.
Der Ausdruck30/100*schadenm;
wird so geklammert:
(30/100)*schadenm;
Und 30/100 ist 0 in Integerdivision. Du kannst das Problem leicht beheben, indem du z.B.
30.0/100*schadenm;
schreibst.
-
Wäre es nicht besser dein array so zu definieren / Declarieren:
int Tabelle[] = {100, 200, 300};
(Nur ein unabhängiges beispiel)