ERLEDIGT
JA
JA
ANTWORTEN
19
19
ZUGRIFFE
3802
3802
EMPFEHLEN
-
sorry, aber in welcher Kategorie finde ich die Komponente "TList"? Ich find nur ListBox.
-
04.07.08 11:40 #17
- Registriert seit
- Nov 2001
- Ort
- Gießen
- Beiträge
- 4.091
Hi,
TList ist keine sichtbare Formularkomponente der VCL. Das ist ein Klassentyp, den du in deinem Code verwenden kannst. Für weitere Details kann ich dir da nur die Online-Hilfe oder Google nahe legen.
Grüße, D."You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse
-
ich habe mich nochmal an das thema herangewagt und es auf anderem wege probiert. um dem Compiler die rangfolge klar zu machen (21 zählt mehr als 66), habe ich die array-positionen einzeln zugewiesen:
Code :1 2 3 4 5 6
numbers[0] := 31; numbers[1] := 32; numbers[2] := 41; numbers[3] := 42; numbers[4] := 43; numbers[5] := 51; numbers[6] := 52; numbers[7] := 53; numbers[8] := 54; numbers[9] := 61; numbers[10] := 62; numbers[11] := 63; numbers[12] := 64; numbers[13] := 65; numbers[14] := 11; numbers[15] := 22; numbers[16] := 33; numbers[17] := 44; numbers[18] := 55; numbers[19] := 66; numbers[20] := 21;
Nun stehe ich vor dem Problem, dass wenn der Benutzer z.B. 63 eingibt, der Compiler die Position der 63 im array "numbers" erfahren muss. Dann kann der Computer-Gegner die Position seiner gewürfelten Zahl mit der Position meiner angegeben Zahl vergleichen und somit selber eine geeignete Zahl ausgeben:
Beispiel, so wie es aussehen soll: Ich drücke "Wuerfeln" und bekomme eine 43. Der Compiler erfährt über den Button "Einlesen", dass meine eingegebene Zahl 43 die Position 4 hat. Der Computer-Gegner würfelt selbst und hat die Zahl 31, deren Position 0 ist. Durch eine if-Abfrage gibt er eine Zahl aus, deren Position höher ist als 4 (der meiner Zahl).
Das mit der if-Abfrage und den Buttons krieg ich hin, brauche nur Hilfe bei der Übergabe der Positonsdaten.
-
05.12.08 07:50 #19
- Registriert seit
- Mar 2004
- Beiträge
- 441
Spontan würde ich es mal damit probieren:
Code :1 2 3 4 5 6 7 8 9 10 11 12
function Get Position(const p_nValue: Byte): Byte; var i: Integer; begin Result := -1; for i := 0 to 20 do if p_nValue = numbers[i] then begin Result := i; break; end; end;
Die Funktion sollte dir bei Übergabe des entsprechenden Wertes den Index (die Position) des Wertes im Array zurückgeben. Der Code ist allerdings von mir nicht getestet.
Ein Aufruf sollte klappen mit:
Code :1 2 3 4 5 6 7 8 9
procedure OnEinlesenClick(Sender. TObject); var nGamerValue: Byte; begin nGamerValue := GetPosition(43); // oder was auch sonst für ein Wert für den Spieler gewürfelt wurde if nGamerValue <> -1 then // ab hier kann dann der Vergleich mit dem Würfelwert des Computers stattfinden ... end;
-
ich habe deinen vorschlag meinem programm angepasst und es funktioniert. Vielen Dank!
Ähnliche Themen
-
4D-Würfel
Von helo03 im Forum Cinema 4DAntworten: 39Letzter Beitrag: 21.10.08, 13:57 -
[vb.net]3D Würfel?
Von oyla12 im Forum .NET Grafik und SoundAntworten: 4Letzter Beitrag: 01.07.07, 09:19 -
Würfel
Von Tobias K. im Forum 3D-StillsAntworten: 34Letzter Beitrag: 05.01.06, 21:30 -
Würfel
Von worstcase im Forum 3D-StillsAntworten: 6Letzter Beitrag: 18.07.05, 17:04 -
Würfel mit Textur
Von e-w-i im Forum 3D Studio MaxAntworten: 1Letzter Beitrag: 09.03.04, 08:54





Zitieren
Login





