Wir müssen als Abschluss für dieses Schuljahr ein Spiel in Delphi programmieren.
Ich hab Ewigkeiten überlegt und hab mir dann gedacht, ich mach ein Memory.
Da wir das mit den Bildern noch nicht wirklich durchgemacht haben, hab ich beschlossen, das ich es einfach so mache, das man immer 2 Zahlen haben muss, die 17 ergeben (ist das realisierbar??)
Allerdings hänge ich jetzt schon so ziemlich ganz am Anfang.
Kann sein dass ich einfach nur auf der Leitung sitze oder das es wirklich komplizierter ist als gedacht, auf jeden Fall brauche ich Hilfe
Hier mal der bestehende Code:
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 =
class(TForm)
Label1: TLabel;
Label2: TLabel;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
Panel9: TPanel;
Panel10: TPanel;
Panel11: TPanel;
Panel12: TPanel;
Panel13: TPanel;
Panel14: TPanel;
Panel15: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Button9: TButton;
Button10: TButton;
Button11: TButton;
Button12: TButton;
Button13: TButton;
Button14: TButton;
Button15: TButton;
Button16: TButton;
Button17: TButton;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Panel16: TPanel;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Karte:
Array[1..16]
of byte;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
var
lauf: byte;
begin
Label5.caption := '
';
Label6.caption := '
';
Button1.Visible := true;
Button2.Visible := true;
Button3.Visible := true;
Button4.Visible := true;
Button5.Visible := true;
Button6.Visible := true;
Button7.Visible := true;
Button8.Visible := true;
Button9.Visible := true;
Button10.Visible := true;
Button11.Visible := true;
Button12.Visible := true;
Button13.Visible := true;
Button14.Visible := true;
Button15.Visible := true;
Button16.Visible := true;
lauf := 1;
repeat
begin
randomize;
karte[lauf] := (random(15)+1);
inc(lauf);
end;
until lauf = 17;
end;
end.
bei dem letzen 'repeat' müsste ich dann eben noch überprüfen, ob es diese zahl bereits gibt.
Und genau das bekomm ich nicht hin. Geht das nur mit einer
if-schleife -> if-Abfrage? aber das ist ja dann extrem kompliziert. gibt es da etwas einfacheres?