Math

Anfängerfragen zum Programmieren mit PureBasic.
eiban
Beiträge: 33
Registriert: 07.12.2005 15:30
Wohnort: Irlach

Math

Beitrag von eiban »

Wie kann ich mit PureBasic zwei Kommazahlen miteinander Multiplizieren (z.B. 6,25 x 4,25).
So geht’s auf alle Fälle nicht a = (6,25*4,25)

Denn ich will ein Rechenprogramm machen, das auf einen EURO-Betrag automatisch die Umsatzsteuer aufrechnet.

Code:

Openwindow…..

StringGadget(1,…..<----- Texteingabe Feld
StringGadget(2,…..<----- Textausgabe Feld
ButtonGadget(3,…..
….

Case 3

A = ValF(GetGadgetText(1))
B = (a*1,16) :<---------- Das meine Ich
C$ = Str(B)
SetGadgetTExt((2), C$)

Codeende:

Und was ist, wenn der Wert im Feld ID 1 auch eine Kommazahl ist?

Danke schon mal im voraus für alle Antworten!
Mit freundlichen Grüßen 8)
Eiban
Benutzeravatar
winduff
Beiträge: 879
Registriert: 10.02.2006 21:05
Wohnort: Gießen
Kontaktdaten:

Beitrag von winduff »

Code: Alles auswählen

Debug 155.7*2.8
Ganz einfach, statt , machst du .

Btw, zukünftig bitte alle codes in die Code Tags setzen
Bild
AND51 hat geschrieben:...und ich würde dein Programm aus Wut zwei mal installieren, um eines genüsslicher löschen zu können, als das andere...
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Am einfachsten ist es mit Cent zu Rechnen. Vor der Anzeige wieder ein
Komma einfügen. Je nach Genauigkeit könnte man auch zehntel Cent
nehmen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Pelagio
Beiträge: 424
Registriert: 11.11.2004 17:52
Computerausstattung: AMD Ryzen 5 7600 6-Core Prozessor 3.80 GHz
16,0 GB Arbeitsspeicher
Windows 11 Pro Betriebssystem
Wohnort: Bremen

Beitrag von Pelagio »

:allright:
Als erstes muss du dafür sorgen, das das Komma als Punkt dargestellt wird:
Ergebnis.f = (6.25*4.25)

Hierbei kannst du entweder den Punkt im StringGadet eingeben oder im nachhinein ändern:
StringGadget1 = 6,25
StringGadget2 = 4,25

a.f = VALF(ReplaceString(Stringgadget1, "," , ".") )
b.f = VALF(ReplaceString(Stringgadget2, "," , ".") )
Ergebnis = a*b

Ich hoffe diese Information ist ausreichend.
Huch, es haben ja schon welche geantwortet!
Benutzeravatar
Thomas
Beiträge: 893
Registriert: 06.07.2006 19:24
Wohnort: Regensburg
Kontaktdaten:

Beitrag von Thomas »

Endlich kann ich auch einmal helfen...
aber wie ich sehe ist mir jemand zuvorgekommen.
Naja, ich machs immer so:

ErsteZahl.f = ValF(GetGadgetText(1)) ;also den Text von deinem Eingabefeld
ZweiteZahl.f = 1.16 ;deine Zahl mit der du multiplizieren willst
Ergebnis.f = ErsteZahl.f * ZweiteZahl.f
SetGadgetText(2, StrF(Ergebnis.f, 2)) ;die 2 für zwei Nachkommastellen

Anstelle des Kommas must du nur einen Punkt nehmen.
v6.00
Antworten