Pomoc

Zbytočné, duplicitné, nevhodné alebo zamknuté témy...
Zamknuté
Playman13579
Novice
Novice
Príspevky: 1
Registrovaný: 10 apr 2012, 22:46

Pomoc

Príspevok od používateľa Playman13579 »

Ahojte mam problem s tymto porgramom lebo mi nedava nahodne kocky ale kazda kocka ma to iste cislo. Program je o tom ze simuluje kod tromi kockami a musite hodit rovnake tri cisla aby ste vyhrali a podobne.
Niekde mi musi chybat nejaky Random alebo nieco lebo uz som zufaly z toho. Potrebujem aby pri simullacii nemali kocky len tu istu hodnotu.

Kód: Vybrať všetko

unit Unit1; 

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ExtCtrls,
  StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Image1: TImage;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end; 

var
  Form1: TForm1; 
  hodnota:array[1..3] of integer;
implementation

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
begin
  Application.Terminate;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Image1.Canvas.Brush.Color := clWhite;
  Image1.Canvas.Fillrect(Image1.ClientRect);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Randomize;
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100,100,190,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(135,135,155,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(200,100,290,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(235,135,255,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(300,100,390,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(335,135,355,155);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
 Timer1.Enabled:=True;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  Timer1.Enabled:=False;
begin
if (hodnota[1]=hodnota[2])and (hodnota[2]=hodnota[3]) then
begin
Image1.Canvas.Rectangle(290,280,600,400);
Image1.Canvas.Textout(350,350,'WIN! :D WIN! :D WIN! :D WIN! :D WIN! :D');
end
else begin if(hodnota[1]=hodnota[2]) or (hodnota[1]=hodnota[3]) or (hodnota[2]=hodnota[3])
then Image1.Canvas.TextOut(350,350,' SO CLOSE :(' )
else begin Image1.Canvas.Rectangle(290,280,600,400);
Image1.Canvas.TextOut(350,350,'LOOOOOSE');
   end;
  end;
 end;
{image1.Canvas.Textout(350,350,IntToStr(hodnota[1]));
image1.Canvas.Textout(350,350,IntToStr(hodnota[2]));
image1.Canvas.Textout(350,350,IntToStr(hodnota[3]));}
end;

procedure TForm1.Timer1Timer(Sender: TObject);

 var poradie:integer;
 
procedure KOCKA(poradie:integer);
var posun:integer;
begin
Randomize;
 If poradie=1 then posun:=0;
 If poradie=2 then posun:=100;
 If poradie=3 then posun:=200;
 hodnota[poradie]:=Random(6)+1;
Case hodnota[poradie] of
 {Jednotka}
 1: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(135+posun,135,155+posun,155);
end;
{Dvojka}
 2: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,165,125+posun,185);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,105,185+posun,125);
end;
{Trojka}
 3: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,165,125+posun,185);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(135+posun,135,155+posun,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,105,185+posun,125);
end;
{Stvorka}
4: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,105,125+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,165,125+posun,185);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,105,185+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,165,185+posun,185);
end;
{Patka}
5: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(135+posun,135,155+posun,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,105,125+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,165,125+posun,185);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,105,185+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,165,185+posun,185);
end;
{Sestka}
6: begin
image1.Canvas.Pen.Color:=clBlack;
image1.Canvas.Pen.Width:=2;
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.Rectangle(100+posun,100,190+posun,190);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,105,125+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,135,125+posun,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(105+posun,165,125+posun,185);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,105,185+posun,125);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,135,185+posun,155);
image1.Canvas.Brush.Color:= Random(256*256*256);
image1.canvas.ellipse(165+posun,165,185+posun,185);
  end;
 end;
end;


begin
Randomize;
for poradie:=1 to 3 do
KOCKA(poradie);
end;

initialization
  {$I unit1.lrs}

end.
                                                    
Zamknuté