Dim-Problem [gelöst]

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Vidde

Betreff: Dim-Problem [gelöst]

BeitragDi, Sep 01, 2009 12:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Folgender Pseudocode wirft genau das aus, was ich will.

Code: [AUSKLAPPEN]
Graphics(500,300,0,2)
SeedRnd MilliSecs()

Global Anzahl = Input("Gib die Anzal ein: ")
Global FoPunkte = 0
Global Gebiet = 1
Global mindPkt = 1

Dim Forschung(Anzahl,FoPunkte,Gebiet,mindPkt)

For i = 0 To Anzahl
  Forschung(i,0,0,0) = Rand(400,650)
  Forschung(i,0,1,0) = Rand(1,4)
  Forschung(i,0,0,1) = Forschung(i,0,1,0) * 512

  Print Forschung(i,0,0,0) + " Pkt.   Auf dem Gebiet " + Forschung(i,0,1,0) + " werden " + Forschung(i,0,0,1) + " Punkte benötigt."
Next


Dies war mir aber nur möglich, weil ich "Gebiet" und "mindPkt" zu Beginn auf 1 gesetzt habe.
also: Dim Forschung(Anzahl,0,1,1)

Genügen würde mir jedoch 0, da jeweils nur ein Wert zu speichern ist und ich somit nicht unnötig Speicher reserviere.
also: Dim Forschung(Anzahl,0,0,0)

Wie könnte ich dieses Problem beheben?
Gern der Zeiten gedenk ich, als alle Glieder gelenkig - bis auf eins. Diese Zeiten kehren nie wieder, steif sind nun alle Glieder - bis auf eins.
  • Zuletzt bearbeitet von Vidde am Di, Sep 01, 2009 13:29, insgesamt einmal bearbeitet

Xeres

Moderator

BeitragDi, Sep 01, 2009 13:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Am sinnvollsten Bündelt man so viele Informationen in einem Type...
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

BladeRunner

Moderator

BeitragDi, Sep 01, 2009 13:09
Antworten mit Zitat
Benutzer-Profile anzeigen
1.: For i = 0 to anzahl-1 -> Sonst liesst Du zu weit aus.
2.: Wenn jedes Feld nur einen Wert enthalten soll, mach es so:
Dim forschung(Anzahl,2)
const FO=0
const GEB=1
const MIP=2

Ein Zugriff auf die Mindestpunkte läuft dann per print forschung(nummer,MIP).
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

ToeB

BeitragDi, Sep 01, 2009 13:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du schreibst :
Code: [AUSKLAPPEN]
Forschung(i,0,0,0) = Rand(400,650)
  Forschung(i,0,1,0) = Rand(1,4)
  Forschung(i,0,0,1) = Forschung(i,0,1,0) * 512


Da guck mal genau hin welche daten du abfragst...bei Gebiet und mindPkt wird bei der ersten und bei der zweiten zuweiung jeweils der eintrag auf 1 geprüft, setzt du eines der beiden auf 0 und wird trotzdem auf 1 geprüft dann gehts natürlich net...

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Vidde

BeitragDi, Sep 01, 2009 13:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Hatte einen großen Denkfehler - BladeRunners Lösung ist genau das, wonach ich suchte.

Danke auch an Xeres, aber ich gehe Typs nur zu gern aus dem Weg.
Gern der Zeiten gedenk ich, als alle Glieder gelenkig - bis auf eins. Diese Zeiten kehren nie wieder, steif sind nun alle Glieder - bis auf eins.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group