Logo: Geos Online Print Archiv
G.O.P.A. - Geos Online Print Archiv
27.01.2021 Archiv  #  Recherche  #  Links  #  Kontakt  #  Gästebuch  #  Impressum

Index
Register
Login

Die Anzeige des Archivs erfolgt grafisch. Ändern

NewBasic: NUMBER

Autor: Jürgen Heinisch

NB Number In der Toolbox BASIC UI befindet sich das Werkzeug number. Der Name deutet es schon an, es dient dem Umgang mit Zahlen. Leider ist number zum einen in dem Handbuch nicht beschrieben und beim experimentieren stellt man schnell Mängel an diesem Werkzeug fest. Solange man reine Integer Zahlen von - 32768 bis 32767 verwenden will, zeigen sich keine Probleme. Sobald aber größere Zahlen oder Zahlen mit Kommastelle verarbeitet werden sollen, reicht number nicht mehr aus. Sehr irritierend dabei ist, daß man in einem number Feld z.B. 5,5 eingeben kann, aber number tatsächlich nur 5 an eine Variable übergeben kann. So wird aus der Multiplikation zweier Zahlen, z.B. 5,5 * 5,5 nur 25 und nicht wie es korrekt wäre 30,25.

NB entry Eine Lösung des Problems bietet sich über das Werkzeug entry an. In entry kann ein einzeiliger Text eingegeben werden. Dieser muß aber beim auslesen mit der Funktion val in eine Zahl konvertiert werden. Für die Ausgabe des Ergebnis kann ebenfalls ein entry oder besser ein label verwendet werden. Der Unterschied ist, daß entry kann nach der Ausgabe des Ergebnis wieder verändert werden, das label eben nicht.

NB label In einem Beispielprogramm kann man die Arbeitsweise zwischen number, entry und label erkennen.

NewBasic In der linken Spalte befinden sich zunächst zwei Felder, in denen je eine Zahl eingegeben werden kann. Beides sind number-Felder und werden miteinander multipliziert. Im dritten Feld, ebenfalls ein number, wird das Ergebnis ausgegeben. Zusätzlich wird das Ergebnis im vierten Feld, einem label, wiederholt.

In der rechten Spalte befinden sich wieder zwei Felder, in denen je eine Zahl eingegeben werden kann. Beides sind entry-Felder und werden miteinander multipliziert. Im dritten Feld, ebenfalls ein entry, wird das Ergebnis ausgegeben. Zusätzlich wird das Ergebnis im vierten Feld, einem label, wiederholt. Dazu muß die Zahl in einen Text konvertiert werden. Hier wird die Funktion str verwendet.

Werden in den Eingabefelder je die Zahlen 5,5 eingegeben, so wird als Ergebnis 25 und 30,25 ausgegeben. Es läßt sich leicht nachrechnen, daß nur das rechte Ergebnis korrekt ist.


LISTING ZAHLEN

sub button1_pressed(self as button)

REM AUSLESEN DER ZAHLEN 1 & 2
zahl1 = number1.value
zahl2 = number2.value

REM BERECHNEN DER ZAHL 3
zahl3 = zahl1 * zahl2

REM AUSGABE DES ERGEBNIS IM ZAHLENFELD 3
number3.value = zahl3

REM AUSGABE DES ERGEBNIS IM LABELFELD 1
label1.caption = str(zahl3)

REM AUSLESEN DER TEXTFELDER 1 & 2 UND WANDELN IN EINE ZAHL
zahl1 = val(entry1.text)
zahl2 = val(entry2.text)

REM BERECHNEN DER ZAHL 3
zahl3 = zahl1 * zahl2

REM WANDELN DES ERGEBNIS IN EINEN TEXT UND
REM AUSGABE DES ERGEBNIS IM EINGABEFELD 3
entry3.text = str(zahl3)

REM WANDELN DES ERGEBNIS IN EINEN TEXT UND
REM AUSGABE DES ERGEBNIS IM LABELFELD 2
label2.caption = str(zahl3)

end sub

-JH-




Dieser Artikel ist Bestandteil von:

Ausgabe 66

! - - - - - M I C R O F I L M - - - - - ! | Editorial | Web-Splitter | Regionalgruppe 34+++ (Kassel) RegioNews | Regio Hamburg - montl. Clubtreffen August 99 | Info Regio Hamburg | Info Regio Sachsen | GeoCalc und der EURO | Geos 64/128 und das Jahr 2000 | Tips zum Netzteil für europäische C128D (Plaste-Gehäuse) mit SCPU / RamLink / REU | SOKOBAN Version 0.3ß für NDO 3.0 & GWE 2.0 | Spielerei mit dem Fliesstext | GUP und GUC | Günstige Alternative zur Datensicherung! | Drucken mit Postscript ! | Win & GeoWorks | NewBasic: NUMBER | NewDeal Teacher Productivity Kit


Kurzlink hierhin: http://geos-printarchiv.de/2966


Letzte Änderung am 01.11.2019