Hallo,
ich habe mal eine Frage. Ich versuche mich schon länger daran ein Programm zu schreiben, dass es schafft das Heronverfahren zu berechnen. Das eigentliche Rechnen ist jedoch nicht das Problem. Mein Problem fängt damit an, das Scratch die Zahlen nicht mit genügend Kommazahlen anzeigt. Außerdem möchte ich gerne, dass mein Programm die Kommastellen anzeigt, die ich genau haben möchte.
Also:
Wie kann ich mit Scratch mehrere Kommastellen anzeigen?
Wie kann mein Programm genau n-Kommastellen anzeigen?
Wäre super, wenn mir jemand helfen könnte.
DANKE
Offline
Ja Scratch und Kommazahlen sind eine Sache für sich, aber ich habe auch nocht nicht verstanden, wie du das meinst.
Das andere versuche ich mal zu machen, auch wenn ich leider nicht so geschickt darin bin. Mal schauen, was ich raus bekomme.
Danke dir
Offline
Hey, danke.
Funktioniert
Kann man es auch noch hinbekommen, dass er auch 5 Nullen hinter dem Komma anzeigt, wenn da nur Nullen stehen, oder nicht?
Und es wird immer eine 0 vor dem Ergebnis angezeigt (06,786), kann man die irgendwie auch wegkriegen?
Ansonsten danke danke
Offline
Du wirst es so ähnlich machen müssen: (Egal ob für Listen oder für Variablen)
# Das überspringt die Nullen am Anfang... [setze variable [ num ] auf [ 0123,16 ] [setze variable [ cnt ] auf [ 1 ] [wiederhole bis [ (zeichen [ cnt ] von [ num ] ) nicht gleich 0 ] [ [ändere variable [ cnt ] um [ 1 ] ] ] # Das merkt sich die Ziffern vor dem Komma [setze variable [ tmp ] auf [ ] ] # (nichts) [wiederhole bis [ ( (zeichen [ cnt ] von [ num ] nicht gleich <komma bzw. punkt> ) und ( cnt < [ länge von [ num ] ] ) ] [ [setze variable [ tmp ] auf [ verbinde [ tmp ] mit [ zeichen [ cnt ] von [ num ] ] ] ] [ändere variable [ cnt ] um [ 1 ] ] ] # Überspringe Komma [ändere variable [ cnt ] um [ 1 ] # Das merkt sich die Ziffern nach dem Komma [setze variable [ tmp2 ] auf [ ] ] # (nichts) [wiederhole bis [ nicht [ cnt < [ länge von [ num ] ] ] ] [ [setze variable [ tmp2 ] auf [ verbinde [ tmp2 ] mit [ zeichen [ cnt ] von [ num ] ] ] ] [ändere variable [ cnt ] um [ 1 ] ] ] # Das fügt so viele Nullen zu den Ziffern nach dem Komma hinzu dass es mindestens 5 sind. [setze variable [ tmp3 ] auf [ ] ] # nichts [setze variable [ cnt ] auf [ 1 ] ] [wiederhole [ 5 ] mal ] [ [falls [ [länge von [ tmp2 ] ] < cnt ] [ [setze variable [ tmp3 ] auf [ verbinde [ tmp3 ] mit [ 0 ] ] ] ] sonst [ [setze variable [ tmp3 ] auf [ verbinde [ tmp3 ] mit [ zeichen [ cnt ] von [ tmp2 ] ] ] ] ] [ändere variable [ cnt ] um [ 1 ] ] ] # Füge alles zusammen... [setze variable [ result ] auf [ verbinde [ tmp1 ] [ verbinde [<komma, bwz. punkt>] [ tmp3 ] ] ] ]
Ich hoffe ich konnte dir helfen, war nämlich eine Menge Arbeit :D
Das ganze sollte so ähnlich auch mit Listen gehen!
Ich habe den code aber nicht getestet.
Offline
diese Demo kannst du an so viele Stellen nach dem komma anpassen, wie dir grad lieb ist:
http://scratch.mit.edu/projects/Buddy60/2247414
Offline