Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Top in local dir. Chapter p4c_c303 [4]
- pub_prog *** Prev.page Next page
- prog2017 - cvičení 30.3
- cvičení 30.3
- pub_prog /
- p4c_c303 [ grfoot13 ] cvičení 30.3: Slalom, pohyb k cíli v prostředí Greenfoot - individuální zadání
- Předbĕžné činnosti:
- Pre [1] zdroj
- Na disku U si připravte diskový prostor a adresář pro umístĕní vašich zdrojových souborů (např. d_greenfoot).
- Ve vašem "hlavním" greenfootovém adresáři vytvořte pod-adresáře pro jednotlivá cvičení (např. d_cv303).
- Z disku M, z adresáře M:/PRG/d_im/d_cvic/d_c30/d_c303 překopírujte zdrojové soubory do vašeho adresáře.
- Pre [2] individuální
- Vyžádejte si od vyučujícího individuální zadání. Zadání zaznamenejte do vašeho zdrojového programu.
- Individuální zadání obsahuje 5 čísel v rozmezí od 1 do 6.
- Čísla typu P určují, která místa na hrací ploše má vozidlo projet,
- čísla typu V určují, která místa na hrací ploše má vozidlo minout.
- Místy na hrací ploše se rozumí zelené obdélníky označené nápisy "spot 1" až "spot 6".
- Například zadání "P 1,3,6 V 2,4" požaduje, aby vozidlo projelo pole "spot 1", "spot 3" a "spot 6" a vyhnulo se polím "spot 2" a "spot 4". Na pořadí projíždĕní polí typu P nezáleží.
- Projetí pole znamená, že střed vozidla se ocitne uvnitř obrysu zeleného obdélníku.
- Pre [3] prostředí
- Spusťte program Greenfoot a v nĕm otevřete scénář (neboli scenario) gfs_blitz1_enviro.
- Kód objektů v jazyce Java:
- Java [1] překlad
- Spusťte překlad scénáře gfs_blitz1_enviro (tlačítkem Compile vpravo dole).
- Ovĕřte, že překlad probĕhl bez chyb.
- Java [2] bĕh
- Spusťte bĕh scénáře gfs_blitz1_enviro (tlačítkem Run vlevo dole).
- Ovládejte vozidlo vlevo pomocí kláves A, B, L, R a S, a pokuste se projet vaším individuálním zadáním požadovaným slalomem a poté dorazit do cíle vpravo.
- A ... zrychlit
- B ... zpomalit
- L ... zahnout doleva
- R ... zahnout doprava
- S ... zastavit.
- K dispozici jsou také klávesy P a C pro přepínání mezi programovým a "ručním" řízením.
- Java [3] přeprogramování
- Přeprogramujte třidu CnTank1 tak, aby vaše vozidlo absolvovalo požadovaný slalom a potom dojelo do cíle (praporek vpravo) při řízení programem.
- Veškeré vaše programové úpravy by mĕly být vyhradnĕ ve třídĕ CnTank1.
- Aby se vaše programové úpravy projevily, musí působit v metodĕ act().
- Pro přehlednost je z metody act() volána metoda mvProgControl(),
- a je volána výhradnĕ při programovém řízení,
- takže příslušné úpravy lze naprogramovat do ní.
- Předpokládejte, že po zahájení programového řízení už nebude programové řízení přerušováno.
- Java [4] identifikace
- Do metody mvProgControl() vložte volání metod proTvSetDisTitlEx() a proTvSetDisValsEx(), každá se čtyřmi parametry,
- tak, aby první parametry metod byly "autor" a váš osmiznakový identifikátor.
- Například takto:
- proTvSetDisTitlEx("autor=", "bb", "x3", "x4"); // ladici titulky
- proTvSetDisValsEx("MotMarIv", "bb", 3, 4); // ladici vystup
- Java [5] usnadnĕní A-0
- Předpokládejte, že programovému řízení nebude předcházet jízda pod ručním řízením, a že tedy vozidlo bude vždy startovat ze stejného místa pracovní plochy.
- Naprogramujte "slalom" pro obĕ čísla V ale pouze pro jediné číslo P
- (t.j. vyhýbání přesnĕ podle zadání, ale jen jediný zadaný průjezd).
- syntax *** *** ovĕřte bezchybnost!
- činnost *** *** ovĕřte správnost!
- Hlášení [6] fáze A-0
- Vytvořte textový soubor se jménem id8_cnTank_c303_A0.txt .
- Do souboru překopírujte celý kód třídy CnTank1.
- Soubor umístĕte na disk W,
- do adresáře W:/PRG/d_im/d_cvic/d_cv030/d_cv303 .
- Java [7] usnadnĕní A-1
- I nadále předpokládejte, že programovému řízení nebude předcházet jízda pod ručním řízením, a že tedy vozidlo bude vždy startovat ze stejného místa pracovní plochy.
- Naprogramujte "slalom" v plném rozsahu zadání.
- syntax *** *** ovĕřte bezchybnost!
- činnost *** *** ovĕřte správnost!
- Hlášení [8] fáze A-1
- Vytvořte textový soubor se jménem id8_cnTank_c303_A1.txt .
- Do souboru překopírujte celý kód třídy CnTank1.
- Soubor umístĕte na disk W,
- do adresáře W:/PRG/d_im/d_cvic/d_cv030/d_cv303 .
- Java [9] řešení A-2
- I nadále předpokládejte, že programovému řízení nebude předcházet jízda pod ručním řízením, a že tedy vozidlo bude vždy startovat ze stejného místa pracovní plochy.
- Naprogramujte "slalom" v plném rozsahu zadání
- Volání metod proTvSetDisTitlEx() a proTvSetDisValsEx()
- upravte tak, aby druhé parametry metod byly "spot"
- a buď číslo spotu, kterým vozidlo projíždí,
- nebo "xxx" pokud vozidlo právĕ neprojíždí žádným spotem.
- Například takto:
- String lsSpot; // promenna pro indikaci
- lsSpot = "xxx"; // indikuje mimo spot
- lsSpot = "2"; // indikuje prujezd
- // ...
- proTvSetDisTitlEx("autor=", "spot=", "x3", "x4"); // ladici titulky
- proTvSetDisValsEx("MotMarIv", lsSpot, 3, 4); // ladici vystup
- Upravte váš program tak, aby indikovaný průjezd spotem trval nejménĕ 4 takty prostředí GreenFoot.
- syntax *** *** ovĕřte bezchybnost!
- činnost *** *** ovĕřte správnost!
- Hlášení [10] fáze A-2
- Vytvořte textový soubor se jménem id8_cnTank_c303_A2.txt .
- Do souboru překopírujte celý kód třídy CnTank1.
- Soubor umístĕte na disk W,
- do adresáře W:/PRG/d_im/d_cvic/d_cv030/d_cv303 .
- Java [11] řešení A-3
- Předpokládejte, že programovému řízení může předcházet jízda pod ručním řízením, a že tedy vozidlo může být na libovolném místĕ pracovní plochy.
- Naprogramujte "slalom" v plném rozsahu zadání
- a dojezd do cíle.
- syntax *** *** ovĕřte bezchybnost!
- činnost *** *** ovĕřte správnost!
- Hlášení [12] fáze A-3
- Vytvořte textový soubor se jménem id8_cnTank_c303_A3.txt .
- Do souboru překopírujte celý kód třídy CnTank1.
- Soubor umístĕte na disk W,
- do adresáře W:/PRG/d_im/d_cvic/d_cv030/d_cv303 .
- Dictionary Dictionary Varia Varia
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement