Forum: Mikrocontroller und Digitale Elektronik Bascom und Gleitkomma??


von Michael (Gast)


Lesenswert?

Ich möchte ein Ergebnis auf einem LCD ausgeben.

Das Ergebnis ist immer ein Zahlenwert, aber nicht immer eine Ganzzahl.

Wie kann ich eine Gleitkommavariable deklarieren?

Gruss, Michael.

von Danny (Gast)


Lesenswert?

Schau mal in der Hilfe unter: Language Fundamentals. Da sind alle
möglichen Zahlenformate beschrieben. Und dann einfach:
Dim Variable as Byte (Word, Single, oder was auch immer)

Gruß Danny

von Andi (Gast)


Lesenswert?

Ich kenne zwar BASCOM nicht, aber Basic im allgemeinen.
Um zu ermitteln, ob eine Zahl mit oder ohne Komma ist, kann man
folgendes machen:

 IF A <> INT(A) THEN GOTO Gleitkomma

Die Variable A wird mit sich selbst verglichen, vor dem <> ohne Rundung
und nach dem <> mit Rundung (INT).
Ist das ergebnis ungleich, ist A = XX,yy.
Bei der Routine "Gleitkomma" mußt halt schauen, wie Du das machst.

Allerdings gibs noch die Möglichkeit, das Du A immer mit 10 oder 100
Multiplizierst, je nach dem, ob 1 oder 2 Kommastellen ständig angezeigt
werden sollen und zur Darstellung runden.
Z. B. INT(A) = 3,524 * 100 = 352.
Zwischen der 3 und der 5 wird dann das Komma eingebaut und ist immer an
der gleichen Stelle.

Gruß
Andi

von Andi (Gast)


Lesenswert?

Evtl. war ich zu voreilig.
Wie mein Vorredner schon sagte, SINGLE und DOUBLE sind im allgemeinen
Gleitkommavariablen mit einfacher oder doppelter Genauigkeit.

Gruß
Andi

von Michael (Gast)


Lesenswert?

Mit Single gehts. Ich habe immer Double gesucht
---------------------------
Dim A As Single
Dim B As Single
Dim C As Single

A = 1.3
B = 1.2
C = A + B

Lcd C

Danke an alle de Michael.

von Andi (Gast)


Lesenswert?

DOUBLE kenn ich halt von Access- und Visual-Basic.
Gibs wohl nicht überall.

Gruß
Andi

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.