gelöst: Exponentialdarstellung verhindern

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: gelöst: Exponentialdarstellung verhindern

Re: Exponentialdarstellung verhindern

von erikafuchs » Di, 31.01.2012 16:50

So, ich nochmal,
ich habe jetzt rumprobiert. Bernds Lösung schein am einfachsten zu funktionieren, man muss nur die Formatanweisung so ändern, dass die erste Stelle hinterm Komma nicht Null sondern # ist, dann werden auch ganze Zahlen als solche angezeigt. Dank euch Allen!
Grüße
Pit
PS.: Allerdings war CDec einfacher

Re: Exponentialdarstellung verhindern

von erikafuchs » Di, 31.01.2012 16:03

Lieber Karo,
vielen Dank soweit. Die Null ist heute morgen um halb Sieben wohl verlorengegangen. Das mit der Null ist zwar ein Problem, hilft mir aber weiter. Mit dem Befehl CDec wird nur das Komma als richtig gewertet, mit val muss man dann wohl ein Punkt setzen. Das kann ich meinen Schülern so aber nicht beibringen. Das heißt, wenn niemand eine bessere Idee hat muss ich in den Eingaben der Schüler das Komma durch einen Punkt ersetzen und dann erst vergleichen. ... Hat jemand eine Idee warum CDec nur unter Windows funktioniert? ...
Grüße von
Pit

Re: Exponentialdarstellung verhindern

von Karolus » Di, 31.01.2012 07:44

Hallo

Lieber Pit
0,6 ist nicht das Ergebnis der Division 3 / 50 sondern vmtl. 0,06 :lol:
Zudem musst du innerhalb Basic wohl oder übel den Dezimalpunkt verwenden, dann klappt auch die Umwandlung mit val( )

Karo

Re: Exponentialdarstellung verhindern

von erikafuchs » Di, 31.01.2012 06:34

Da meine Schüler aber auch z.B. Einheiten eingeben müssen, ist die entsprechende Variable eine Stringvariable und da bekomme ich die Umwandlung nicht hin, das ging mit CDec, aber nicht mit val:

Code: Alles auswählen

Sub Main
	dim  Z, N as integer
	dim e as string
	Z=3
	N=50
	e = "0,6"
	if  Z/N = val(e) then 
   		print "richtig"
	else
   		print "falsch: " & Z/N & " = " & e
	end if   
end sub
Grüße
Pit

Re: Exponentialdarstellung verhindern

von Karolus » Di, 31.01.2012 01:12

Hallo
Der Vergleich (in Calc ) 6e-02=0,06 ergibt WAHR, also so wie dus möchtest.

Karo

Re: Exponentialdarstellung verhindern

von erikafuchs » Mo, 30.01.2012 22:29

Lieber Bernd,
vielen Dank erstmal. Leider funktioniert das nicht wie ich es brauche. Meine Zahlen werden mit Zufallszahlen erzeugt. Das Ergebnis sind mal ganze Zahlen, mal Zahlen mit einer unterschiedlichen Anzahl Dezimalstellen. Ein Beispiel, meine Schüler müssen Brüche in Kommazahlen umwandeln. Die Vorgabe (erfolgt wie gesagt mit Zufallszahlen) das Ergebnis kann dann 3/10=0,3; 23/100=0,23; 1/8=0,125; oder auch 4/2=2 sein. Bei der Aufgabe 3/50 wird jetzt halt die Eingabe 6E-02 statt 0,06 erwartet.
Viele Grüße
Pit

Re: Exponentialdarstellung verhindern

von bst » Mo, 30.01.2012 22:15

Abend,

benutze Format. Siehe: http://help.libreoffice.org/Basic/Forma ... on_Runtime

Code: Alles auswählen

print Z & " " & N & " " & Format((Z/N),"0.0#####")
HTH, Bernd

gelöst: Exponentialdarstellung verhindern

von erikafuchs » Mo, 30.01.2012 21:32

Hallo zusammen:
Kennt ihr das:

Code: Alles auswählen

Sub Main
dim  Z, N as integer
Z=3
N=50
print Z & " " & N & " " & (Z/N)
Z=3
N=20
print Z & " " & N & " " & (Z/N) 
End Sub
...wenn die erste Stelle hinter dem Komma eine Null ist, wird der Quotient in Exponentialdarstellung ausgegeben, sonst nicht. Wie kann ich die Exponentialdarstellung verhindern. Vorher habe ich das mit CDec gemacht, das geht aber mit Linux nicht!
Hilfe!
Danke für eure Hilfe
Pit

Nach oben