Stránka: 1 z 1
| [ Príspevkov: 2 ] | |
Autor | Správa |
---|
Registrovaný: 03.02.11 Prihlásený: 14.01.13 Príspevky: 99 Témy: 17 | 17 |
cawte .. robim si taky program v lazaruse a chcel by som v niecom poradit nejake IF-y, dodat do tohto mojho programu len nevime presne ako ich mam zadefinovat, vopred sa ospravedlnujem za moju upravu v pascale nakolko sme sa upravu ani v skole ani nikde neucili ..tak :
Kód: program project1; uses crt;
var
x,y, c, v, n, m,k, l,p,o : integer; a : char;
begin // ciel gotoxy (5,23); writeln ('________'); gotoxy (4,25); writeln ('| |'); gotoxy (4,24); writeln ('| |'); gotoxy (7,24); writeln ('CIEL'); gotoxy (5,25); writeln ('________'); // JEBE TO // start gotoxy (1,3); writeln ('S'); gotoxy (1,4); writeln ('T'); gotoxy (1,5); writeln ('A'); gotoxy (1,6); writeln ('R'); gotoxy (1,7); writeln ('T'); //JEBE TO
// prava krajnica po prvu zakrutu gotoxy (1,1); writeln ('______________________________________________________________________') ;
gotoxy (70,2); writeln ('|') ; gotoxy (70,3); writeln ('|'); gotoxy (70,4); writeln ('|'); gotoxy (70,5); writeln ('|') ; gotoxy (70,6); writeln ('|'); gotoxy (70,7); writeln ('|'); gotoxy (70,8); writeln ('|') ; gotoxy (70,9); writeln ('|'); gotoxy (70,10); writeln ('|'); gotoxy (70,11); writeln ('|') ; gotoxy (70,12); writeln ('|'); gotoxy (70,13); writeln ('|'); gotoxy (70,14); writeln ('|'); gotoxy (70,15); writeln ('|'); gotoxy (70,16); writeln ('|'); gotoxy (70,17); writeln ('|'); gotoxy (70,18); writeln ('|'); // prava krajnica druhy riadok gotoxy (5,13); writeln ('________________________________________________________') ; gotoxy (4,14); writeln ('|') ; gotoxy (4,15); writeln ('|') ; gotoxy (4,16); writeln ('|') ; gotoxy (4,17); writeln ('|') ; gotoxy (4,18); writeln ('|') ; gotoxy (4,19); writeln ('|') ; gotoxy (4,20); writeln ('|') ; gotoxy (4,21); writeln ('|') ; gotoxy (4,22); writeln ('|') ; gotoxy (4,23); writeln ('|') ; //lava krajnica gotoxy (14, 18); writeln ('________________________________________________________') ; gotoxy (13,19); writeln ('|') ; gotoxy (13,20); writeln ('|') ; gotoxy (13,21); writeln ('|') ; gotoxy (13,22); writeln ('|') ; gotoxy (13,23); writeln ('|') ;
//lava krajnica gotoxy (1,8); writeln ('____________________________________________________________') ;
gotoxy (61,9); writeln ('|'); gotoxy (61,10); writeln ('|'); gotoxy (61,11); writeln ('|') ; gotoxy (61,12); writeln ('|'); gotoxy (61,13); writeln ('|');
x:=3; //AUTO y:=2 ; gotoxy (x,y); writeln ('* *') ;
c:=3 ; v:=3 ; gotoxy (c,v) ; writeln ('***'); n:=3 ; m:=4 ; gotoxy (n,m) ; writeln ('* *'); //AUTO repeat //POHYB AUTA a:=readkey;
clrscr; // ciel gotoxy (5,23); writeln ('________'); gotoxy (4,25); writeln ('| |'); gotoxy (4,24); writeln ('| |'); gotoxy (7,24); writeln ('CIEL'); gotoxy (5,25); writeln ('________'); // JEBE TO // start gotoxy (1,3); writeln ('S'); gotoxy (1,4); writeln ('T'); gotoxy (1,5); writeln ('A'); gotoxy (1,6); writeln ('R'); gotoxy (1,7); writeln ('T'); //JEBE TO
// prava krajnica po prvu zakrutu gotoxy (1,1); writeln ('______________________________________________________________________') ;
gotoxy (70,2); writeln ('|') ; gotoxy (70,3); writeln ('|'); gotoxy (70,4); writeln ('|'); gotoxy (70,5); writeln ('|') ; gotoxy (70,6); writeln ('|'); gotoxy (70,7); writeln ('|'); gotoxy (70,8); writeln ('|') ; gotoxy (70,9); writeln ('|'); gotoxy (70,10); writeln ('|'); gotoxy (70,11); writeln ('|') ; gotoxy (70,12); writeln ('|'); gotoxy (70,13); writeln ('|'); gotoxy (70,14); writeln ('|'); gotoxy (70,15); writeln ('|'); gotoxy (70,16); writeln ('|'); gotoxy (70,17); writeln ('|'); gotoxy (70,18); writeln ('|'); // prava krajnica druhy riadok gotoxy (5,13); writeln ('________________________________________________________') ; gotoxy (4,14); writeln ('|') ; gotoxy (4,15); writeln ('|') ; gotoxy (4,16); writeln ('|') ; gotoxy (4,17); writeln ('|') ; gotoxy (4,18); writeln ('|') ; gotoxy (4,19); writeln ('|') ; gotoxy (4,20); writeln ('|') ; gotoxy (4,21); writeln ('|') ; gotoxy (4,22); writeln ('|') ; gotoxy (4,23); writeln ('|') ; //lava krajnica gotoxy (14, 18); writeln ('________________________________________________________') ; gotoxy (13,19); writeln ('|') ; gotoxy (13,20); writeln ('|') ; gotoxy (13,21); writeln ('|') ; gotoxy (13,22); writeln ('|') ; gotoxy (13,23); writeln ('|') ;
//lava krajnica gotoxy (1,8); writeln ('____________________________________________________________') ;
gotoxy (61,9); writeln ('|'); gotoxy (61,10); writeln ('|'); gotoxy (61,11); writeln ('|') ; gotoxy (61,12); writeln ('|'); gotoxy (61,13); writeln ('|');
If a=#72 then y:= y-1 ; If a=#80 then y:= y+1 ; if a=#75 then x:= x-1; if a=#77 then x:=x+1; gotoxy (x,y); writeln ('* *') ;
If a=#72 then v:= v-1 ; If a=#80 then v:= v+1 ; if a=#75 then c:= c-1; if a=#77 then c:=c+1; gotoxy (c, v); writeln ('***') ;
If a=#72 then m:= m-1 ; If a=#80 then m:= m+1 ; if a=#75 then n:= n-1; if a=#77 then n:=n+1; gotoxy (n, m); writeln ('* *') ;
until a=(#13); //POHYB AUTA
end.
takze potrebujem napriklad poradit IF-ko ked stacim sipku dole hore napriklad aby otocilo auto znova vypisem setko.
dalej ked naburam aby ubralo jednu hviezdicku z vozidla
a ENter a=(#13) ti resetne vozidlo na predchadzajucu poziciu .. za vsetky rady dakujem ..
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Zle, zle, celé zle. Pascal nemám, nespúšťal som to, ale už na pohľad je to zle.
Robiť hru sekvenčne je samovražda (akúkoľvek, aj takúto jednoduchú)
Skús to prepísať s tým, že dodržíš túto osnovu:
1.) Telo programu by malo byť čo najkratšie - pár riadkov. Telo programu by v tomto prípade mohlo vyzerať nejako takto:
Kód: begin premenna = 0; { nulovanie hlavnych premennych } nejakeSilneIntro ();
while ( hraBezi ) { r = readkey; upravObjektKedBoloStlacene ( r ); vyhodnotSvet; vykresliSvet; }
end.
2.) Všetko podstatné sa deje v procedúrach/funkciách. Procedúra upravObjektKedBoloStlacene() by mohla obsahovať niečo na úpravu (len úpravu!) súradníc auta. Procedúra vyhodnotSvet() by mohla obsahovať vyhodnocovanie kolízií a prípadné ďalšie, dodatočné upravenie auta po nich. Plus upravenie sveta (ostatného), ak nejako reaguje. Procedúra vykresliSvet() by to všetko LEN! vykreslila pekne naraz na príslušných pozíciách. 3.) Kód by mal byť čo najsymmbolickejší, to znamená, že by si ho mal písať nejako takto: Kód: if ( kolizia ( auto, stena ) ) then uberHviezdicku(); if ( jeEnter(r) ) then resetniVozidlo();
etc. a až následne tieto procedúry/funkcie implementovať podľa tvojich potrieb.
Možno sa to zdá zbytočné, ale skús to a uvidíš, že to, na čo sa pýtaš, budeš zrazu vedieť vyriešiť aj sám
|
|
Stránka: 1 z 1
| [ Príspevkov: 2 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Novinky | 1 | 573 | 20.08.2008 7:31 Poki | | v Assembler, C, C++, Pascal, Java | 0 | 439 | 19.12.2014 13:18 Styracoz | | v Assembler, C, C++, Pascal, Java | 0 | 755 | 03.05.2009 12:35 ebb | | v Assembler, C, C++, Pascal, Java | 4 | 2503 | 01.03.2018 8:02 MTK | | v Assembler, C, C++, Pascal, Java | 7 | 668 | 09.10.2011 21:30 F3RY | | [ Choď na stránku: 1, 2 ] v Assembler, C, C++, Pascal, Java | 40 | 1578 | 11.12.2016 22:08 viki | | v Assembler, C, C++, Pascal, Java | 11 | 1327 | 07.04.2007 16:50 programator | | v Assembler, C, C++, Pascal, Java | 7 | 879 | 14.05.2011 20:04 F3RY | | v Assembler, C, C++, Pascal, Java | 19 | 3119 | 30.04.2007 19:54 nikita | | v Assembler, C, C++, Pascal, Java | 2 | 620 | 24.06.2010 20:17 KatjushaMan | | v Kôš | 1 | 30 | 06.11.2018 14:38 werwest | | v Assembler, C, C++, Pascal, Java | 5 | 953 | 18.10.2008 19:02 redog | | v Assembler, C, C++, Pascal, Java | 6 | 781 | 08.01.2009 17:45 majka090 | | v Assembler, C, C++, Pascal, Java | 2 | 1158 | 09.03.2007 14:08 misolax | | v Assembler, C, C++, Pascal, Java | 6 | 6056 | 14.10.2007 11:44 juho | | v Assembler, C, C++, Pascal, Java | 4 | 1133 | 06.01.2011 13:15 hogger |
|