Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Probleme bei der Division von Variablen. Kategorie: Programmierung (von Fischbeck - 19.02.2003 17:04)
Als Antwort auf Re: Probleme bei der Division von Variablen. von Willi aus Oelde - 19.02.2003 16:56

Besten Dank Willi,
Ich habe auch gerade bemerkt, dass es besser ist nur Float Typen zuverwenden, dann klappt das auch, allerdings
hatte ich die Variable Wert über die Hardware-RS232-Schnittstelle ausgelesen und den Typ halt mit Integer versehen,
aber dann probier ich das mal gleich von vorn herein mit float.


> Hallo erst mal.....
>
> ich denke bei der Berechnung kommt "0" heraus, da angeblich immer mit der Genauigkeit der
> "minderwertigsten" ( hier int, also ganzzahlig ) gerechnet wird. Du solltes nur "float" Variablen
> nutzen oder die Werte entsprechend x 1000 nehmen wenn es um Geschwindigkeit geht.
> In der Anzeige kann man das Komma ausgeben wo man will !
>
> Da 13 / 128 etwa 0,10156 ist, sollte "0" rauskommen.
> Ich habe es aber nicht ausprobiert !
>
> Grü�e,
> Willi aus Oelde
>  
>
>
> > Guten Tag!
> > Ich bin ein Newbie und habe ein kleines Problem mit der Operatoren-Struktur bzw. Syntax.
> > In dem Buch zur C-Control II ist auf Seite 61 Kapitel 5.7.1 eigentlich für mich ausreichend beschrieben,
> > allerdings gibt es bei mir Probleme bei der Divisionsberechnung in einer Formel.
> > Es soll einfach der Wert einer Variable durch einen anderen Wert dividiert werden und dieser dann in
> > einer anderen Variable abspeichert werden. Dabei kommt allerdings immer ein falscher Wert heraus.
> > Eigentlich für jede andere Programmiersprache kein Problem, aber hier funtzt es leider nicht, aber vielleicht hab ich auch etwas nicht beachtet.
> >
> > Hier mein code:
> >
> > thread main
> > {
> >     float ergebnis;
> >     int wert;
> >    
> >     wert=13;
> >    ergebnis=wert/128;
> > }
> >
> > Bei Addition, Subtraktion oder Multiplikation wird der Wert auch richtig berechnet, nur bei der Division nicht.
> > Warum ist das so? Ich bekomme zwar keine Fehlermeldung, aber das Ergebnis stimmt nicht.
> >
> > Wenn ich zwei Zahlen z.B "13/128" schreiben würde, dann wird der  Wert richtig berechnet. Nur wenn ich halt wie im obigen Code
> > Anstelle des Wertes eine Variable platziere, dann klappt das nicht.
> >
> > Achso, um mir den Wert anzeigen zulassen wandele ich den Float-Wert mit der Funktion
> > "str.putfloatf(ausgabe, ergebnis, 7)" um, wobei ausgabe vom Typ String ist. Und dann gebe ich über das Modul
> > "lcdext" den aktuell berechneten Wert aus. Das klappt auch alles wunderbar, nur dass er die division nicht richtig
> > ausführt.
> >  
> > Wäre lieb, wenn mir jemand von Euch helfen könnte.
> >
> > MfG. Fischbeck


    Antwort schreiben


Antworten:

Re: Probleme bei der Division von Variablen. (von Martin Binder - 20.02.2003 13:33)