Datenfelder

Die bekannteste Programmiersprache der Welt

Moderatoren: crack, Krüsty, Marwin

Beitragvon Vylqun » Sonntag 11. Mai 2003, 12:58

Hallo,

Ich beschäftige mich schon seit einiger Zeit mit QBasic, habe aber noch nie ein Datenfeld benutzt. Jetzt brauche ich ein drei-dimensionales und ein zwei-dimensionales Datenfeld zum Speichern von einer Bildnummer und zwei dazugehörige Daten (z.B. Höhe, Breite). Könntet ihr mir vielleicht helfen?

AW DW
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Vylqun
Member
 
Beiträge: 10
Registriert: Samstag 10. Mai 2003, 14:34

Beitragvon Marwin » Montag 12. Mai 2003, 11:17

Hi DWinky,

Wenn die Bildnummern fortlaufend sind, dann könnte das hier reichen:

Code: Alles auswählen
DIM Bilder(maxId, 1) AS INTEGER

Bilder(0, 0) = 100
Bilder(0, 1) = 70

Bilder(1, 0) = 100
Bilder(1, 1) = 70


Bilder(id, 0) enthält die Breite des Bildes,
Bilder(id, 1) enthält die Höhe des Bildes,
id ist die Bildnummer und
maxId ist die höchste Bildnummer.

Sollten die Bildnummern nicht durchgängig sein, dann musst du oben nur etwas verändern:

Code: Alles auswählen
Bilder(anzahlBilder, 2) AS INTEGER

Bilder(0, 0) = 1
Bilder(0, 1) = 100
Bilder(0, 2) = 70

Bilder(1, 0) = 2
Bilder(1, 1) = 100
Bilder(1, 2) = 70


Hier ist
Bilder(n, 0) die Bildnummer,
Bilder(n, 1) die Breite des Bildes und
Bilder(n, 2)die Höhe des Bildes.

anzahlBilder steht selbstredend für die Anzahl der Bilder, deren Daten du im Datenfeld speichern möchtest.

n ist irgend eine Zahl von 0 bis anzahlBilder.

Ich hoffe das ist das wonach du gefragt hast?

:P Marwin
Benutzeravatar
Marwin
Moderator
 
Beiträge: 307
Registriert: Donnerstag 8. Mai 2003, 21:19
Wohnort: Seelow, Deutschland

Beitragvon Vylqun » Mittwoch 20. August 2003, 08:22

Danke, aber nun habe ich ein weiteres Problem, ich habe jetzt ein Datenfeld
Feld (X,Y) Wobei X und Y in einem Unterprogramm festgelegt wird, das sieht ungefähr so aus:

[span style=font-family:Arial][span style=font-size:8pt;line-height:100%]for FeldX=30 To 390 step 20
for FeldY=30 to 390 step 20
X=(FeldX-10)/20
Y=(FeldY-10)/20
Wert =int(rnd*2)+1
Feld(X,Y)=Wert
next
next
[/span][/span]

Nun kann ich den Wert des Feldes Feld(2,2) oder Feld(3,5) auslesen,
aber ich würde gerne auch die Werte X und Y bei einem anderen Unterprogramm wieder aus dem Datenfeld herauslesen (sofern es geht).
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Vylqun
Member
 
Beiträge: 10
Registriert: Samstag 10. Mai 2003, 14:34

Beitragvon Ignat » Mittwoch 20. August 2003, 15:42

Hi!
Because of my bad German I dont understand your problem very good,
but why do you use such "difficult" structure like
Code: Alles auswählen
DIM Bilder(maxId, 1) AS INTEGER


I advice use to use "TYPE" :
Code: Alles auswählen
TYPE Bild
Breite AS INTEGER
Hohe AS INTEGER
END TYPE
DIM Bilder(1 to MaxID) AS Bild


With this structure you will forget a lot of problem!
I think its more usefull und "naturally"... :)
If the ship don't know where to go - it has no fair wind...
Ignat
Alter Hase
 
Beiträge: 80
Registriert: Samstag 2. August 2003, 11:13

Beitragvon Vylqun » Donnerstag 21. August 2003, 13:49

Thanks for answer,

I’ve never worked with “TYPE”, and so I don’t know
weather I can make that ,in your example Bilder, is 1 or 2
(I’m sorry for my bad English.)
I’ll make a field with 20*20 Fields, and every Field has another value.
I’ll get the position of an Field, that I can paint in the Field if the Mouse over it.
I hope you understand my problem better now.
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Vylqun
Member
 
Beiträge: 10
Registriert: Samstag 10. Mai 2003, 14:34

Beitragvon Ignat » Donnerstag 21. August 2003, 14:15

Hm...
In your problem "TYPE" is more usefull.
Its like "RECORD" in Pascal or like "struct" in "C++"...
If the ship don't know where to go - it has no fair wind...
Ignat
Alter Hase
 
Beiträge: 80
Registriert: Samstag 2. August 2003, 11:13

Beitragvon Vylqun » Mittwoch 27. August 2003, 08:29

Thank you.
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Vylqun
Member
 
Beiträge: 10
Registriert: Samstag 10. Mai 2003, 14:34

Beitragvon Ignat » Sonntag 31. August 2003, 01:05

Thank you

What for? [_[
I did nothing for you!
If the ship don't know where to go - it has no fair wind...
Ignat
Alter Hase
 
Beiträge: 80
Registriert: Samstag 2. August 2003, 11:13

Beitragvon Vylqun » Mittwoch 24. September 2003, 19:56

Ive thank you for your help with "type".
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Vylqun
Member
 
Beiträge: 10
Registriert: Samstag 10. Mai 2003, 14:34


Zurück zu Q-BASIC


Social Bookmarking
Bookmark bei: Mr. Wong Bookmark bei: Del.icio.us Bookmark bei: Webnews Bookmark bei: Icio Bookmark bei: Oneview Bookmark bei: Linkarena Bookmark bei: Newskick Bookmark bei: Folkd Bookmark bei: Yigg Bookmark bei: Digg Bookmark bei: Reddit Bookmark bei: Simpy Bookmark bei: StumbleUpon Bookmark bei: Slashdot Bookmark bei: Netscape Bookmark bei: Furl Bookmark bei: Yahoo Bookmark bei: Spurl Bookmark bei: Google Bookmark bei: Blinklist Bookmark bei: Blogmarks Bookmark bei: Diigo Bookmark bei: Technorati Bookmark bei: Newsvine Bookmark bei: Blinkbits Bookmark bei: Ma.Gnolia Bookmark bei: Smarking Bookmark bei: Netvouz

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

cron