Noob Problem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

oki02

Betreff: Noob Problem

BeitragSo, Feb 01, 2009 14:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab hir ein kleines Problem mit meinem Programm.

Das Programm schreibt zwei Zahlen in eine .dat datei und ließt es aus.

Es functioniert aber leider nur das - Rechnen.

Könnt ihr mir helfen Bitte!!!!

Hir mein Code:

Code: [AUSKLAPPEN]

Graphics 640,480,32,2

SetBuffer BackBuffer()
SeedRnd MilliSecs()

Global menu       = 1
Global bank         = 0

While Not KeyHit(1)

; Menü
If menu = 1 Then
Include "Dateien_Laden.bb"
Cls
Locate x,y
cn = Input("Gib bitte die Cartennummer ein: ")
EndIf

If cn = 102 Then
Cls
Text 500,30, "Cardnummer: " + cn
Text 500,50, "Guthaben: " + guthaben2
menu = 0
bank = 1
guthaben = guthaben2
EndIf

; Displey
;   Cardnummer
;   Guthaben
If cn = 101 Then
Cls
Text 500,30, "Cardnummer: " + cn
Text 500,50, "Guthaben: " + guthaben1
menu = 0
bank = 1
guthaben = guthaben1
EndIf

; Was man Machen will?
If bank = 1 Then
Text x,20, " - ............... [1]"
Text x,40, " + ............... [2]"
Text x,60, "Zufall ........... [3]"
Text x,80, "Exit ............. [4]"

Locate x,y
machen1 = Input("Was möchten sie machen: ")
EndIf

; - Rechnen für 101
If machen1 = 1 Then
   If cn = 101 Then
Cls
bank = 0

Locate x,y
b1 = Input("Wieviel möchten sie wegrechnen: ")

erg1 = guthaben - b1

; Neues Guthaben
Text 400,30, "Cardnummer: " + cn
Text 400,50, "Ihr Neues Guthaben ist: " + erg1
Include "Dateien_Speichern1.bb"
Include "Dateien_Laden.bb"
WaitKey
menu = 1
EndIf
EndIf


; Zufall
If machen1 = 3 Then
Cls
Text x,y, Rand(1,5)
WaitKey
menu = 1
EndIf

; + Rechnen für 101
If machen1 = 2 Then
   If cn = 101 Then
Cls
bank = 0

Locate x,y
b1 = Input("Wieviel möchten sie dazurechnen: ")

erg1 = guthaben + b1

; Neues Guthaben
Text 400,30, "Cardnummer: " + cn
Text 400,50, "Ihr Neues Guthaben ist: " + erg1
Include "Dateien_Speichern1.bb"
Include "Dateien_Laden.bb"
WaitKey
menu = 1
EndIf
EndIf

; Exit
If machen1 = 4 Then
End
EndIf

; + Rechnen für 102
If machen1 = 2 Then
   If cn = 102 Then
Cls
bank = 0

Locate x,y
b1 = Input("Wieviel möchten sie dazurechnen: ")

erg2 = guthaben + b1

; Neues Guthaben
Text 400,30, "Cardnummer: " + cn
Text 400,50, "Ihr Neues Guthaben ist: " + erg2
Include "Dateien_Speichern2.bb"
Include "Dateien_Laden.bb"
WaitKey
menu = 1
EndIf
EndIf

; - Rechnen für 102
If machen1 = 1 Then
   If cn = 102 Then
Cls
bank = 0

Locate x,y
b1 = Input("Wieviel möchten sie abziehen: ")

erg2 = guthaben - b1

; Neues Guthaben
Text 400,30, "Cardnummer: " + cn
Text 400,50, "Ihr Neues Guthaben ist: " + erg2
Include "Dateien_Speichern2.bb"
Include "Dateien_Laden.bb"
WaitKey
menu = 1
EndIf
EndIf

; Ende
Flip
Cls
Wend
End


mfg Oki02

TimBo

BeitragSo, Feb 01, 2009 15:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

ich sehe hier keine Lese bzw. Schreibbefehle..
aber Include macht man generell NUR vor Schleife EINMAL.

Include heißt, füge Quellcode vor Compilierung ein.

Viele Grüße
TimBo
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

oki02

BeitragSo, Feb 01, 2009 15:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hir die Lade function:
Code: [AUSKLAPPEN]

file1 = ReadFile ("data\data.dat")

guthaben1  = ReadInt (file1)
guthaben2  = ReadInt (file1)

CloseFile file1


Hir die Schreibe function
Code: [AUSKLAPPEN]

file1 = OpenFile ("data\data.dat")

WriteInt file1, erg1

CloseFile file1


mfg Oki02

The_Nici

BeitragSo, Feb 01, 2009 15:57
Antworten mit Zitat
Benutzer-Profile anzeigen
TimBo hat Folgendes geschrieben:
Hi,

ich sehe hier keine Lese bzw. Schreibbefehle..
aber Include macht man generell NUR vor Schleife EINMAL.

Include heißt, füge Quellcode vor Compilierung ein.

Viele Grüße
TimBo


Include darfst du reinhauen wo du willst, du kannst den ganzen Schleifeninhalt in eine Include hauen und in die Schleie einbinden, es wird einfach vor dem kompilieren dort eingeschnitten.

Wahrscheinlich liegt es daran, dass du die Datei mehrmals inkludierst.

Versuch mal folgendes:


Code: [AUSKLAPPEN]

MyCredits% = ReadCredits()
MyCredits = MyCredits - 10
WriteCredits(MyCredits)

Function WriteCredits(credits%)
   file1 = OpenFile ("data\data.dat")
   WriteInt file1, credits
   CloseFile file1
End Function

Function ReadCredits()
   file1 = ReadFile ("data\data.dat")
   credits% = ReadInt(file1)
   CloseFile file1
   Return credits%
End Function


MfG

PS: Rücke deinen Code ein und achte auf die Rechtschreibung. Wink

BladeRunner

Moderator

BeitragSo, Feb 01, 2009 15:57
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.

Wenn Du dir selbst eingestehst dass es das Problem einen Anfängers ist köntest Du auch gleich im passenden Bereich posten.
Ach ja, ein etwas aussagekräftiger Threadtitel wäre nett.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

oki02

BeitragSo, Feb 01, 2009 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe das Problem lösen können.

Ich habe die datei öfters includiert und das war der Fehler.

Danke für die Hilfe.

mfg Oki02 Razz

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group