29. oktober 2001 - 16:45Der er
2 kommentarer og 1 løsning
Craps i Pascal!!!
Hejsa Er der en som har eller kan lave et spil(craps) i Pascal(ja ja ja jeg ved godt det er håbløst forældet).
Der skal slåes med 2 terninger, hvis summen af de to tal er 7 eller 11 så vinder man og får mulighed for et ekstra slag. Hvis summen er 2, 3, 12 så taber man. I alle andre tilfælde skal man kaste terningerne igen indtil man får enten 7 som taber eller den første sum man fik og dermed vinde.
Derefter skal det være muligt at starte et helt nyt spil!
Det er godt nok et par dage siden, men her er en i wirth-padcal:
program craps ( input, output );
(* Craps i Pascal!!! 29/10 2001 16:45:25 svinehund
Der skal slåes med 2 terninger, hvis summen af de to tal er 7 eller 11 så vinder man og får mulighed for et ekstra slag.
Hvis summen er 2, 3, 12 så taber man.
I alle andre tilfælde skal man kaste terningerne igen indtil man får enten 7 som taber eller den første sum man fik og dermed vinde.
Derefter skal det være muligt at starte et helt nyt spil!
*)
var pung : integer;
var seeded : boolean; var curSeed : integer;
function random ( max : integer ); (* findes sikkert predefineret i din pascal version *) const A = 25173; (* Multiplier *) const C = 13849; (* Increment *) const M = 65536; (* Modulus *) var r : real; begin if not seeded then begin seeded := true; curseed := clock mod M; end; curSeed := ( A * curSeed + C ) mod M; r := curSeed; r := ( r / M ) * max; random := trunc( r ) + 1; (* 1..max *) end;
function bekreft : boolean; var ch : char; begin write( ( \"Vil du spille igen > \" ); readln( ch ); if (ch=\'j\') or (ch=\'J\') or (ch=\'y\') or (ch=\'Y\') then bekreft := true else bekreft := false; end;
function spil : integer; (* eet spil *) var slag, slag2 integer; function slaa2tern : integer; (* et terningkast *) begin slaa2tern := random(6) + random(6); end; begin slag := slaa2tern; write( \"Første slag: \", slag ); if ( slag = 7 ) or ( slag = 11 ) then spil := 1; if ( slag = 2 ) or ( slag = 3 ) or ( slag = 12 ) then spil := -1; repeat slag2 := slaa2tern; write( \" nyt slag: \", slag2 ); if slag2 = 7 then spil := -1; if slag2 = slag then spil := 1; until true; end;
begin (* hovedprogrammet *)
pung := 10;
repeat seeded := false; pung := pung +spil; writeln( \" Du har nu \", pung, \" pengører\". ); until ( pung <= 0 ) or not bekreft(1);
if pung <= 0 then writeln( \"Bedre held næste gang. Farvel.\" ) else writeln( \"Tak for spillet. Kom snart igen.\" );
anytime :-)) kunne du virkelig finde en compiler så gammel at den kunne kompilere det?
mvh JakobA
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.