Kezdőoldal » Számítástechnika » Programozás » Mi a baja ennek a forráskódnak?

Mi a baja ennek a forráskódnak?

Figyelt kérdés

Program KockaJatek;

Uses Crt;

Var

dobas,nyert,vesztett : integer;

mp : char;

Procedure EredmenyKiir;

Begin

GotoXY(50,1);

Write('eddig nyert‚l ',nyert,' j tszm t');

GotoXY(50,2);

Write('‚s vesztett‚l ',vesztett,' j tszm t');

End;


Procedure Menupontok;

Begin

ClrScr;

EredmenyKiir;

GotoXY(20,9);

Writeln('1. Dob sok sz m nak be llˇt sa');

GotoXY(20,11);

Writeln('2. J t‚k (dob sok sz ma: ',dobas,')');

GotoXY(20,13);

Writeln('3. Kil‚p‚s');

GotoXY(20,16);

Write('Melyiket v lasztod? (1,2,3)');

End;


Procedure Varakozas;

Var

c : char;

Begin

GotoXY(1,25);

Write('Nyomj egy billentyűt, ‚s visszat‚rhetsz a menh”z');

c:=ReadKey;

End;


Procedure DobasSzam;

Var

ujdobas : char;

kod : integer;

Begin

ClrScr;

Writeln('A dob sok aktu lis sz ma: ',dobas);

Write('H ny dob s legyen egy j t‚kban? (1,3,5)');

Repeat

ujdobas:=ReadKey;

If not (ujdobas in ['1','3','5']

then begin

Sound(880);

Delay(100);

Nosound;

end;

Until ujdobas in ['1','3','5'];

Val(ujdobas,dobas,kod);

Writeln;

Writeln('A dob sok Łj sz ma: ',dobas);

Varakozas;

End;


Procedure Jatek;

Var

i,gd,jd,gny,jny : integer;

c : char;

Begin

Randomize;

ClrScr;

gny:=0;

jny:=0;

For i:=1 to dobas do begin

c:=#0;

gd:=Random(6)+1;

GotoXY(1,i*2);

Write(i,'. dob som: ',gd);

GotoXY(20,i*2);

Write(i,'. dob sod:');

Repeat

jd:=Random(6)+1;

GotoXY(33,i*2);

Write(jd);

If KeyPressed then c:=ReadKey;

Delay(50);

Until c=' ';

GotoXY(40,i*2);

If gd>=jd

then begin

Writeln('A g‚p nyert!');

Inc(gny);

end

else begin

Writeln('Te nyert‚l');

Inc(jny);

end;

end;

GotoXY(1,15);

If gny>jny

then begin

Write('Ezt a j t‚kot sajnos ');

Write(gny,':',jny);

Writeln(' ar nyban a g‚p nyerte');

Inc(vesztett);

end

else begin

Write(Gratul lok! Ezt a j t‚kot ');

Write(jny,':',gny);

Writeln(' ar nyban Te nyerted');

Inc(nyert);

end;

Varakozas;

End;


BEGIN

dobas:=3;

nyert:=0;

vesztett:=0;

Repeat

Menupontok;

Repeat

mp:=ReadKey

Until mp in ['1'..'3'];

Case mp of

'1' : DobasSzam;

'2' : Jatek;

end;

Until mp='3'

END.


2011. márc. 18. 16:50
 1/2 anonim ***** válasza:

Ezt a kódot nem te írtad, fogadni mernék. Ha pedig igen, akkor bizonyosan ki tudod javítani, mivel te vagy a könyv szerzője. :D


Amúgy meg próbáld meg megcsinálni a programot magadtól. Egyébként ez így, ahogy ide be van másolva, nem fog fordulni, mert szintaktikailag hibás, pontosvesszők, zárójelek hiányoznak.

2011. márc. 18. 20:47
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

Program KockaJatek;

Uses Crt;

Var

dobas,nyert,vesztett : integer;

mp : char;

Procedure EredmenyKiir;

Begin

GotoXY(50,1);

Write('eddig nyert‚l ',nyert,' j tszm t');

GotoXY(50,2);

Write('‚s vesztett‚l ',vesztett,' j tszm t');

End;


Procedure Menupontok;

Begin

ClrScr;

EredmenyKiir;

GotoXY(20,9);

Writeln('1. Dob sok sz m nak be llˇt sa');

GotoXY(20,11);

Writeln('2. J t‚k (dob sok sz ma: ',dobas,')');

GotoXY(20,13);

Writeln('3. Kil‚p‚s');

GotoXY(20,16);

Write('Melyiket v lasztod? (1,2,3)');

End;


Procedure Varakozas;

Var

c : char;

Begin

GotoXY(1,25);

Write('Nyomj egy billentyűt, ‚s visszat‚rhetsz a men?”z');

c:=ReadKey;

End;


Procedure DobasSzam;

Var

ujdobas : char;

kod : integer;

Begin

ClrScr;

Writeln('A dob sok aktu lis sz ma: ',dobas);

Write('H ny dob s legyen egy j t‚kban? (1,3,5)');

Repeat

ujdobas:=ReadKey;

If not (ujdobas in ['1','3','5'])

then begin

Sound(880);

Delay(100);

Nosound;

end;

Until ujdobas in ['1','3','5'];

Val(ujdobas,dobas,kod);

Writeln;

Writeln('A dob sok Łj sz ma: ',dobas);

Varakozas;

End;


Procedure Jatek;

Var

i,gd,jd,gny,jny : integer;

c : char;

Begin

Randomize;

ClrScr;

gny:=0;

jny:=0;

For i:=1 to dobas do begin

c:=#0;

gd:=Random(6)+1;

GotoXY(1,i*2);

Write(i,'. dob som: ',gd);

GotoXY(20,i*2);

Write(i,'. dob sod:');

Repeat

jd:=Random(6)+1;

GotoXY(33,i*2);

Write(jd);

If KeyPressed then c:=ReadKey;

Delay(50);

Until c=' ';

GotoXY(40,i*2);

If gd>=jd

then begin

Writeln('A g‚p nyert!');

Inc(gny);

end

else begin

Writeln('Te nyert‚l');

Inc(jny);

end;

end;

GotoXY(1,15);

If gny>jny

then begin

Write('Ezt a j t‚kot sajnos ');

Write(gny,':',jny);

Writeln(' ar nyban a g‚p nyerte');

Inc(vesztett);

end

else begin

Write('Gratulalok! Ezt a jatekot ');

Write(jny,':',gny);

Writeln(' aranyban Te nyerted');

Inc(nyert);

end;

Varakozas;

End;


BEGIN

dobas:=3;

nyert:=0;

vesztett:=0;

Repeat

Menupontok;

Repeat

mp:=ReadKey

Until mp in ['1'..'3'];

Case mp of

'1' : DobasSzam;

'2' : Jatek;

end;

Until mp='3'

END.



Próbáld így, de elárulom hogy csak 2 elírás volt benne és ha követed a fordító utasításait (kiírja a hibás sort és a hibát) akkor elég hamar kijavíthattad volna. És az ékezetes betűk elromlanak a kódban, de ezt te is észrevetted gondolom.

2011. márc. 18. 20:48
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!