Hallo Ich hab mal ne frage vielleicht hat jemand rat. folgender Programmabschnitt in dem Wenn Wert 5-er Schritte macht in Actf übernommen werden soll. 0.000,0.005,0.010,0.0015,0.0020,0.0025 etc. Soweit funktioniert das auch, wenn aber der Wert einen grossen Sprung macht und auf einem wert stehen bleibt der kein 5-er Schritt ist wird die Variable Actf nicht aktualisiert, soll sie aber. Wie kann ich den Wert auf 5-er Schritt Formatieren. float Actf,Wert; if(Wert %5 == 0) Actf=Wert; Danke vorab.
Gast
#2923647
Bin nicht sicher ob ich Deinen (etwas sehr ungrammtikalisch formulierten) Text verstehe. Meinst Du sowas?
1 | |
2 | |
Nilix Nilix schrieb: > float Actf,Wert; > > if(Wert %5 == 0) Actf=Wert; Hallo nilix, damit tust du dich viel leichter: http://www.mikrocontroller.net/articles/Festkommaarithmetik Der Operator % (modulo) funktioniert wahrscheinlich gar nicht mit dem Datentypen "float", das heißt, die Zahlen werden sowieso zuerst automatisch in "int" umgewandelt.
Gast
#2923653
Grrr. Während ich geantwort habe, hast Du Deine Frage geändert. Mach alleine weiter.
Gast
#2923664
Abgesehen davon, das der Codeteil den Du gezeigt hast mit den Beispielen NIE funktioniert haben kann weil Float. Was soll den die Sch... verdammt nochmal?
>Actf = Wert - (Wert % 5);
Vielen Dank für die sehr schnelle Antwort, scheint zu funktionieren
und Entschuldige ich hab nur die Frage etwas angepasst 0.00x.
Du warst halt schneller als ich.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.