Kezdőoldal » Számítástechnika » Programozás » Pascal probléma. Ez miért...

Pascal probléma. Ez miért van, mit csináljak vele hogy jó legyen? (lent)

Figyelt kérdés

a kód részlet egy Tetrisből van:


for i:=1 to 50 do

begin

if keypressed

then

begin

c:=readkey;

nincsM:=true;

case c of

#75:begin

checkL;

if nincsM

then

begin

torol;

for j:=1 to 4 do

dec(alak[j].oszlop);

kirajzol;

end;

end;

#77:begin

checkR;

if nincsM

then

begin

torol;

for j:=1 to 4 do

inc(alak[j].oszlop);

kirajzol;

end;

end;

#32:fordul(melyik);

end;

end;

delay(20); //ez később csökken csak még nem csináltam meg

end;


na már most ez azt csinálja, hogy alakzatot elmozdítja jobbra vagy balra vagy elfordítja azt

a hiba az hogy amíg a for cikluson belül vagyok és megnyomom az egyik gombot akkor (nem tudom valószínű hogy újra elkezdi a ciklust) ugye megcsinálja amit akarok,de ha 1 mp-en belül újra megnyomom a gombot többször akkor ott marad az alakzat ahol van, de közben reagál a gombokra, csak akkor megy lejjebb (lép ki a ciklusból) ha hagyom hogy le teljen az 1 másodperc


Kérdés: hogy oldjam meg hogy mindenképp kilépjen 1 mp-n beül?

ui.: azt is próbáltam már hogy mindig figyelem az idő múlását (while) és ha letelt 1 sec akkor kilép, de akkor sem lépett ki


talán így jobban érthető:

[link]



2014. júl. 1. 14:14
 1/1 A kérdező kommentje:
jo, megoldottam egy break-el
2014. júl. 1. 16:18

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!