PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablen Typ ???



Mr-400-Volt
31.12.2006, 14:54
Hallo, welchen Variablentyp muß ich unter Bascom einstellen, wenn z.b.
B=0.00000000000680 sein soll ?

Danke !!!

Mr-400-Volt
31.12.2006, 15:13
Komisch???????
Folgendes läuft nicht :

dim b as single
b =sqr (46240)

Es müßte 215.0348809 rauskommen. Kann Bascom das nicht ?

Mr-400-Volt
31.12.2006, 15:27
So, folgendes scheint zu laufen. Nur was komisch ist, wenn ich es eine weile laufen lasse, scheint das Programm zu spinnen, d.h. es erscheint eine 0.0, oder NAN auf dem Display. Also wird Fsoll nicht immer berechnet ? Weis jemand einen Rat ?

Do
B1 = L1 * C1
B2 = Sqr(b1)
B3 = B2 * 6.2832
B4 = 1 / B3
Fsoll = B4 * 1000000000
Upperline
Lcd Freq
Lowerline
Lcd Fsoll
Waitms 500
B1 = 0
B2 = 0
B3 = 0
B4 = 0
Loop

PicNick
31.12.2006, 16:56
B=0.00000000000680
DIM b as SINGLE


dim b as single
b =sqr (46240)

Sollte gehen, bei mir jedenfalls.

3) hab ich jetzt nicht probiert.

Mr-400-Volt
01.01.2007, 13:34
Oh mann, diese Variablen. Was ist daran Falsch ????

Dim c1 as single
dim L1 as single
c1 = 68 * 10 ^ -12
L1 = 68 * 10 ^ -6

Mr-400-Volt
01.01.2007, 14:17
Selbst eine direkte zuweisung ergibt immer 0.0

c1=0.00000000000680

PicNick
01.01.2007, 14:22
Auweia. Du darfst den armen Bascom nicht überfordern. Der kann immer nur Eins auf einmal.
Hochzahlen mit der Funktion POWER() "guckstdu Help"
und dann multiplizieren

Mr-400-Volt
01.01.2007, 14:37
müßte es dann

c1 = power (680^-12)

heisen ?

Mr-400-Volt
01.01.2007, 15:46
Dim C1 As Long , X As Byte , Cx As Long
C1 = 732
Cx = C1 / 100000000
Upperline
Lcd Cx


Warum steht in der Variablen CX immer eine 0.0 ?????
Ich verstehe das nicht!!
Bitte um Hilfe

Mr-400-Volt
01.01.2007, 15:47
Auch das ändern in eine SINGLE Variablen bringt immer 0.0

linux_80
01.01.2007, 17:36
Hallo,

das nächste Problem wird sein, das die Genauigkeit nicht ganz so hoch ist, und in etwa ab der 5. Stelle nach dem Komma stark abnimmt !


Singles are stored as signed 32 bit binary numbers. Ranging in value from 1.5 x 10^–45 to 3.4 x 10^38
Der Gesamtbereich würde evtl. noch reichen, aber bei so vielen nullen :-k
das ist wohl zuviel.

Es gäbe da allerdings noch Double, die werden als 64 Bit gespeichert, evtl. gehts damit schon bis zur 12. Stelle nach dem Komma. ;-)


Doubles are stored as signed 64 bit binary numbers. Ranging in value from 5.0 x 10^–324 to 1.7 x 10^308