witajcie, mam takie zadanko do zrobienia:
Napisz program - grę LOTTO "Twój Szczęśliwy numerek" należy uwzględnić: a) czytanie liczb użytkownika B) symulację losowania c) sprawdzenie wyniku i podanie stopnia wygranej.
zrobilem wszystko, nie moge tylko poradzic sobie, zeby program wyswietlal ile zostalo trafionych liczb i podawal stopien wygranych, stopnie wygranych sa na stronie lotto: http://lotto.pl/strona--ID-1025969.html
(w tabelce)
BARDZO PROSZE O POMOC, nie chce zawalic semestru :(
a oto moj program:
PROGRAM numerek;
USES crt;
type t_zakres=1..49;
const liczby : array[1..49] of t_zakres=
(1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
41,42,43,44,45,46,47,48,49);
VAR
i: byte; {zmienna sterujaca}
Los1z36: byte; {wylosowana liczba}
LGracza: byte; {Liczba gracza}
wylosowane: array[1..4] of byte;
LGracza4z45: byte;
Klawisz: char;
PROCEDURE plos4z45;
VAR nr_los,n,x,j: byte;
BEGIN
ClrScr;
Randomize;
FOR i:=1 TO 4 DO
BEGIN
nr_los:=random(46-i)+1;
wylosowane:=liczby[nr_los];
FOR n:=nr_los TO 48-i DO liczby[n]:=liczby[n+1];
END;
FOR i:=2 TO 4 DO
BEGIN
x:=wylosowane;
wylosowane:=x;
j:=i-1;
WHILE x<wylosowane[j] DO
BEGIN
wylosowane[j+1]:=wylosowane[j];
inc(j,-1);
END;
wylosowane[j+1]:=x
END;
writeln(' Wylosowano nastepujuce liczby: ');
FOR i:=1 TO 4 DO write(wylosowane:2, ' ');
writeln;
END;
PROCEDURE plos1z36;
BEGIN
los1z36:=random(36)+1;
writeln('Wylosowana liczba to ', los1z36);
END;
PROCEDURE pobierz_liczby;
VAR i : integer;
BEGIN
clrscr;
Writeln('-----------------------------------');
Writeln(' TYPOWANIE 4 LICZB Z 45');
Writeln('-----------------------------------');
writeln('Podaj 4 rozne liczby z zakresu 1-45');
FOR i:=1 TO 4 DO
BEGIN
REPEAT
write('Podaj liczbe ',i,' z 4: ');
readln(wylosowane);
UNTIL (wylosowane>0)and(wylosowane<46);
END;
writeln;
writeln('Liczby wczytane od uzytkownika');
write('Twoje liczby to: ');
FOR i:=1 TO 4 DO
write(wylosowane,' ');
ClrScr;
Writeln('-----------------------------------');
Writeln(' TYPOWANIE 1 LICZBY Z 36');
Writeln('-----------------------------------');
writeln('Podaj podaj liczbe z zakresu 1-36');
REPEAT
write('Podaj liczbe ');
readln(LGracza);
UNTIL (LGracza>0)and(LGracza<37);
readln;
END;
PROCEDURE wyniki;
BEGIN
WriteLn('W przygotowaniu');
END;
BEGIN
REPEAT
pobierz_liczby;
plos4z45;
plos1z36;
wyniki;
Write('Czy chcesz grac dalej? [T/N] ');
Klawisz:=readkey; Klawisz:=UpCase(Klawisz);
UNTIL Klawisz='N';
END.