sposób na ruletkę pomoc w pisaniu

0

Na początek może tylko zapytam czy znajdę tu osoby które pomogą mi napisać program najlepiej w Delphi?

0

mam na myśli program który z losowo wprowadzanych liczb (tak jak padają w ruletce) sprawdzał która to jest liczba pod rząd z danego przedziału i przy np. 6 wyświetlał komunikat.
padły np. liczby:
2,8,5,15,3,9 --- padło 6 liczb z przedziału 1-18 w tej sytuacji program wyświetla komunikat np. obstaw 1 na 19-36 jeżeli znowu padnie liczba z przedziału 1-18 program wyświetla postaw 2 na 1-36 itd. do powiedzmy 12 kroku

0

co jest złe w tym zapisie?

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type

pelny = 0..36;
zbiorliczb =set of pelny ;
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;

var
niskie, wysokie, parzyste : zbiorliczb;
Form1: TForm1;

niskie:=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18];
wysokie :=[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36];
parzyste :=[2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36];

implementation

{$R *.dfm}

end.

0

Nie ma żadnych błędów, ale jeżeli decydujesz się tworzyć aplikację okienkową VCL z klasami TForm, a nie na
przykład konsolową. To powinineś poczytac kompendium. Swój kod musisz umieścić w jakiejś procedurze lub
zdarzeniu. Jeżeli podczas tworzenia formatki to wtedy w zdarzeniu OnCreate. Czyli tak jak poniżej - jest ok:

{...}
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
  public
  end;

type
  pelny = 0..36;
  zbiorliczb = set of pelny ;
var
  Form1: TForm1;
  niskie, wysokie, parzyste : zbiorliczb;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  niskie:=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18];
  wysokie :=[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36];
  parzyste :=[2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36];
end;
0
olesio napisał(a)

komendium.

:)

0

Dzięki!
Cały dzień się pociłem aby zdefiniować zbiory. bo tak naprawdę jestem w tym zielony. A teraz główkuje co dalej, wdzięczny będę za waszą pomoc. Nie musi to być gotowy kod ale chociaż wskazówka w którym kierunku iść.

liczby będę wprowadzał za pomocą button ale pÓÓÓÓki co to pewnie muszę napisać algorytm?

0

Lankusiek zjadło mi się P już poprawiłęm - ale jak widzę "pÓÓÓÓki" to mi się odechciewa udzielania dalej pomocy ;/
Nie wiem jak ten program ma działać, ale jak chcesz sprawdzać liczby losowe to zrÓb jak poniżej. No i według
mnie - nie ma sensu deklarować zbioru parzyste, bo można to łatwo sprawdzić warunkiem takim jak tutaj lub
przy użyciu funkcji Odd(Liczba), ktÓra zwrÓci False jeżeli liczba jest parzysta. Jeżeli liczby mają być lsoowane
to możesz zrobić tak jak poniżej. Więcej masz na Random - a jak chcesz te
liczby wprowadzać to możesz dodawać na przykład do ListBox przy użyciu przycisku wprowadzić zawartość
z pola edycyjnego. W ogÓle czytaj komPendium żebyś znał podstawy potrzebne do stworzenia czegokolwiek.

type
  Pelny = 0..36;
  ZbiorLiczb = set of Pelny;
var
  Form1 : TForm1;
  Niskie, Wysokie : ZbiorLiczb;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
  Niskie := [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18];
  Wysokie := [19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36];
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  Liczba : Byte;
  Komunikat : string;
begin
  Liczba := Random(37);
  if Liczba in Niskie then
  begin
    Komunikat := ' należy do zbioru niskie';
  end;
  if Liczba in Wysokie then
  begin
    Komunikat := ' należy do zbioru wysokie';
  end;

  if Liczba mod 2 = 0 then
  begin
    Komunikat := Komunikat + ' oraz jest parzysta';
  end;
  ShowMessage('Liczba: ' + IntToStr(Liczba) + Komunikat);
end;

Post sponsorowała litera Ó oraz strona http://so.pwn.pl z ktÓrej polecam Tobie Marcin82 zawsze korzystać.

1 użytkowników online, w tym zalogowanych: 0, gości: 1