Hogy csináljam meg?
Az a feledat hogy a képernyő tetejé van 1 tank( 'v' betű) és a képernyő alján a második.Tudnak mozogni és lőni is.De valamiért csak az első tankot rajzolja ki.
program motor;
uses crt;
var q:char;
ido:word;
tvx,tvx2,Lx,lx2,Ly,Ly2:byte;
lottem:boolean;
begin
//univerzális motor:
ido:=0;
tvx:=40;
lottem:=false;
//torpedóvető kezdőhelyzet
gotoxy(tvx,24);
write('v');
repeat
//eseményvezérlő:
q:='%'; //q semleges értéke
if keypressed then q:= readkey;
case q of
'a','A':begin
if tvx>1 then
begin
gotoxy (tvx,24);
write(' ');
tvx:=tvx-1;
gotoxy (tvx,24);
write('v');
end;
end;
'd','D': begin
if tvx<80 then
begin
gotoxy (tvx,24);
write(' ');
tvx:=tvx+1;
gotoxy (tvx,24);
write('v');
end;
end;
' ': begin
lottem:=true;
Ly:=23;
Lx:=tvx;
end; //space eset
end; //case
//időfüggő vezérlő
ido:=ido+1;
if ido=4000 then
begin
ido:=0;
if lottem then
begin
gotoxy (Lx,Ly);
write(' ');
Ly:=Ly-1;
gotoxy (Lx,Ly);
write('*');
writeln(' ');
end;
end;
until q=chr(27);
//2.tank
begin
//univerzális motor:
ido:=0;
tvx2:=23;
lottem:=false;
//torpedóvető kezdőhelyzet
gotoxy(tvx2,14);
write('v');
//eseményvezérlő:
q:='%'; //q semleges értéke
case q of
'h','H':begin
if tvx2>1 then
begin
gotoxy (tvx2,14);
write(' ');
tvx:=tvx-1;
gotoxy (tvx2,14);
write('v');
end;
end;
'j','J': begin
if tvx2<80 then
begin
gotoxy (tvx2,14);
write(' ');
tvx2:=tvx2+1;
gotoxy (tvx2,14);
write('v');
end;
lottem:=true;
end;
' ': begin
Ly2:=13;
Lx2:=tvx2;
end; //space eset
end; //case
//időfüggő vezérlő
ido:=ido+1;
if ido=4000 then
begin
ido:=0;
if lottem then
begin
gotoxy (Lx2,Ly2);
write(' ');
Ly2:=Ly2-1;
gotoxy (Lx2,Ly2);
write('*');
writeln(' ');
end;
end;
end;
end.
Hát, tudod... Az a gyanúm, hogy hiányzik belőletek az a minimális hu... nem, nem is humorérzék; lelki lazaság, amivel értékelni tudnátok a tanárotok finomhangoló technikáját. Valaki nem írta meg a leckét? Elégtelen. De ugyanez az illető tanújelét adja, hogy legalább megsejtett valamit a tananyagból -- most írja be neki a beígért karót? Ott egye meg a fene, egy kettes még belefér, legalább a többiek is láthatják, hogy némi igyekezettel még menthető a veszett fejsze nyele.
A másik kettő meg előáll valami -- mivel a segítéseden iparkodók előtt szükségtelennek tartottad bemutatni, ki tudja, milyen -- rémséggel, amire nem adhat közepesnél jobbat. Így is tesz, de azután megszólal a lelkiismerete: „Hékás, ennek a szekérderék zagyvaságnak már a mennyisége is arról árulkodik, hogy szegény kis csókák hülyére harcolták magukat a feladattal, legalább az elszántságukat becsüld meg! Ha most lehúzod őket, legközelebb magasról tesznek a leckére.” Természetesen hallgat az arany szívére meg a józan észre -- tanárként ugyanis az az óhaja, hogy valamit mégiscsak magatokra szedjetek, és ezt nem elhanyagolható módon elősegíti, ha egyáltalán próbálkoztok. Ad egy játékos egérutat, egy jelentéktelen marhaságot, amit röhögve megcsinálhattok, és amiből azért megsejthetitek, hogy nem éppen a programozói teljesítményeteknek köszönhetitek a jobb érdemjegyet.
Kár, hogy nem tudtok a sorok között olvasni, akkor jobban méltányolnátok ezt a kis cinkosságot. Nekem történetesen tetszik, és remélem, hogy idővel ti is meglátjátok benne a jószándékot. Hogy miféle olyan kérdést tesz föl, ami viszont leronthatja a jegyet, arról szokás szerint nem árulsz el semmi konkrétumot, ezért csak tippelek, hogy olyasmit, amit a programod alapján tudnod kell, így megítélhető, hogy gondolkodva oldottad-e meg a feladatot, vagy csak ész nélkül bemásoltál egy kész kódot. Ami meg az itteni kérdezősködésedet illeti: Ha a makacs némaságba burkolódzás helyett vállalnád a párbeszédet, sokkal több segítséget kaphatnál, és a programjaidat úgy tudnánk letisztázni, hogy közben tanulhass is belőle.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!