Zadaci robota. Performer Robot

Dom / Kvarovi

Idol program

Performer Robot


Ko je robot izvođač?

  • Zamislite karirano polje (poput lista iz sveske sa kariranom šarom) na kojem se nalazi određeni predmet, koji ćemo nazvati Robot. Koristeći posebne komande, možemo kontrolisati ovog robota - pomicati ga po ćelijama, slikati preko ćelija. I u većini slučajeva, naš zadatak će biti da napišemo program za robota, u kojem će obojiti određene ćelije.

Postavljanje idola okruženja za izvođača Robot

  • Pokrenuti program Idol izgleda ovako.

Početno okruženje robota

  • Prije početka izvršavanja programa potrebno je postaviti početno okruženje za Robot executor. To znači postavljanje robota u željenu poziciju, postavljanje zidova, farbanje potrebnih ćelija itd. Ovaj korak je veoma važan. Ako ga zanemarite, program možda neće raditi ispravno ili se čak srušiti.

Kliknite na Uredi okruženje



Performer Robot. Jednostavne komande.

  • gore
  • dolje
  • lijevo
  • u pravu
  • farbati preko

Rezultat izvršavanja ovih naredbi je jasan iz njihovih naziva:

  • gore - pomaknite robota za jednu ćeliju gore
  • dolje - pomaknite robota za jednu ćeliju dolje
  • lijevo - pomjerite robota jednu ćeliju ulijevo
  • desno - pomeri robota jednu ćeliju udesno
  • paint over - prebojite trenutnu ćeliju (ćelija u kojoj se robot nalazi).

Primjer algoritma

  • Prvo morate napisati frazu:
  • koristiti Robot

Ako znate koliko ćelija treba obojiti, tada će algoritam rješenja biti sljedeći!


Zadatak br. 1

  • Napišite program koji će riješiti sljedeći problem ako znate koliko ćelija treba zasjeniti

Ciklusi

  • 1. Petlja sa brojačem koristi se kada se unapred zna koliko ponavljanja treba uraditi.

nc vrijeme

kts

Ovdje moramo odrediti broj ponavljanja (broj) i naredbe koje će se ponavljati. Pozivaju se naredbe koje se ponavljaju u petlji tijelo ciklusa.



Zadatak br. 2

  • Napišite program koji će riješiti sljedeći problem koristeći petlju sa brojačem

  • 2. Petlja sa uslovom - dok je uslov istinit, petlja je zadovoljena, ako je netačan, nije zadovoljena
  • Robot izvođač ima nekoliko uslova

besplatno na vrhu

slobodan odozdo

ostavljena slobodno

slobodno na desnoj strani

zid iznad

zid ispod

lijevog zida

zid sa desne strane

  • Čestice koje možete koristiti: NE, I, ILI

Struktura uslovne petlje

nts za sada slobodno na desnoj strani

u pravu

farbati preko

kts



Zadatak br. 3

  • Napišite program koji će riješiti sljedeći problem koristeći uvjetnu petlju:

Zadatak br. 4

  • Napišite program za rješavanje sljedećeg problema koristeći uvjetne petlje:



Rješavanje problema:

  • 2. Robot se mora pomeriti iz početne pozicije u konačnu poziciju, farbajući zidove


Zadatak br. 5

  • Postoji horizontalni zid na beskrajnom polju. Dužina zida nije poznata. Robot se nalazi na vrhu zida na njegovom lijevom kraju. Slika prikazuje lokaciju robota u odnosu na zid (robot je označen slovom "P"):

Odgovor na zadatak br. 5

  • nc još ne (slobodno dno)

farbati preko

Početak ciklusa (nc) i uslov (još nije (slobodan odozdo)) ispisani su u jednom redu.



Dizajn Ako

  • gore slobodno dolje slobodno lijevo slobodno desno slobodno
  • Ove komande se mogu koristiti zajedno sa uslovom "ako", koji ima sljedeći oblik:
  • Ako stanje To
  • redosled komandi
  • Na primjer, da pomaknete jednu ćeliju udesno, ako nema zida s desne strane, i obojite ćeliju, možete koristiti sljedeći algoritam:
  • ako je pravo slobodno onda
  • u pravu
  • farbati preko

Zadatak br. 7

Dužina zidova nije poznata.


Odgovor na zadatak br. 7

dok vrh ne bude slobodan

farbati preko

u pravu

dok je vrh slobodan

u pravu

dok je sa desne strane slobodan

farbati preko

u pravu

još nije slobodan na desnoj strani

farbati preko

dolje

dok je sa desne strane slobodan

dolje

još nije slobodan na desnoj strani

farbati preko

dolje


Zadatak br. 8

Dužina zidova nije poznata.

Svaki zid ima tačno jedan prolaz, a tačna lokacija prolaza i njegova širina nisu poznati.


Odgovor na zadatak br. 8

dok je vrh slobodan

dok vrh ne bude slobodan

farbati preko

dok je vrh slobodan

dok vrh ne bude slobodan

farbati preko

dok se dno ne oslobodi

farbati preko

dok je dno slobodno

dok se dno ne oslobodi

farbati preko


Zadatak br. 9

Dužina zidova nije poznata.

Svaki zid ima tačno jedan prolaz, a tačna lokacija prolaza i njegova širina nisu poznati.


Odgovor na zadatak br. 9

dok je dno slobodno

dok se dno ne oslobodi

farbati preko

dok je dno slobodno

dok se dno ne oslobodi

farbati preko

dok vrh ne bude slobodan

farbati preko

dok je vrh slobodan

dok vrh ne bude slobodan

farbati preko


Zadatak br. 10

Dužina zidova nije poznata.

Svaki zid ima tačno jedan prolaz, a tačna lokacija prolaza i njegova širina nisu poznati.


Odgovor na zadatak br. 10

dok je leva slobodna

dok je leva slobodna

farbati preko

dok je leva slobodna

dok lijevo ne bude slobodno

farbati preko

još nije slobodan na desnoj strani

farbati preko

dok je sa desne strane slobodan

još nije slobodan na desnoj strani

farbati preko


Zadatak br. 11

Dužina zidova nije poznata.

Svaki zid ima tačno jedan prolaz, a tačna lokacija prolaza i njegova širina nisu poznati.


Odgovor na zadatak br. 11

dok vrh ne bude slobodan

dok vrh ne bude slobodan

farbati preko

dok je dno slobodno

dok vrh ne bude slobodan

farbati preko


Zadatak br. 12

Na beskrajnom polju je stepenište. Stepenište se prvo spušta s desna na lijevo, a zatim slijeva na desno. Visina svake stepenice je jedan kvadrat, širina dva kvadrata. Robot je desno od gornje stepenice stepenica. Broj stepenica koji vode lijevo i broj stepenica koji vode desno su nepoznati. Na slici je prikazan jedan od mogućih načina pozicioniranja merdevina i robota (Robot je označen slovom „P“).


Odgovor na zadatak br. 12

Spuštamo se ispod stepenica s desna na lijevo dok ne dođemo do spoja stepenica:

nts dno je za sada besplatno

dolje

lijevo

lijevo

Spuštamo se do kraja silaznog stepeništa, slikajući potrebne ćelije na putu:

nts još nije slobodan na lijevoj strani

farbati preko

u pravu

farbati preko

u pravu

dolje



Odgovor na zadatak br. 13

nts lijevo je za sada besplatno

farbati preko

lijevo

gore

nts još nije slobodan na lijevoj strani

farbati preko

gore


Zadatak br. 14

Na beskonačnom polju nalazi se pravougaonik omeđen zidovima. Dužine stranica pravougaonika su nepoznate. Robot je unutar pravougaonika. Na slici je prikazan jedan od mogućih načina pozicioniranja zidova i robota (Robot je označen slovom “P”).


Odgovor na zadatak br. 14

dok je sa desne strane slobodan

u pravu

dok je vrh slobodan

gore

farbati preko

nts lijevo je za sada besplatno

lijevo

farbati preko



Odgovor na zadatak br. 15

dok je sa desne strane slobodan

farbati preko

u pravu

dok je dno slobodno

farbati preko

dolje

farbati preko

još ne (slobodno dno)

lijevo

dolje

još ne (slobodno desno)

farbati preko

dolje

farbati preko

u pravu

još nije (slobodan na vrhu)

farbati preko

u pravu



Odgovor na zadatak br. 16

još nije slobodan na desnoj strani

farbati preko

dolje

farbati preko

u pravu

dok vrh ne bude slobodan

farbati preko

u pravu

dok je vrh slobodan

gore

dok je sa desne strane slobodan

farbati preko

u pravu

još nije slobodan na desnoj strani

farbati preko

dolje



Zadatak nastavnika je da ide ovim putem sa učenikom, ne osiguravajući se od neuspjeha, već sprječavajući razočaranje zbog mogućih poteškoća. Vrlo je važno organizirati nastavu tako da djeca sama otkrivaju nove stvari kroz aktivnosti koje su im značajne.
Kako robot pomaže u učenju informatike? Naznačiću samo nekoliko informatičkih tema na kojima se bazira robotika.
Tema "Datoteke i sistem datoteka".
Učenik je imao na raspolaganju LEGO®NXT mikroračunar iz obrazovnog kompleta. LEGO Mindstorms NXT Education. Kontrolišite to sistem datoteka se dešava korišćenjem standardnih komandi, ali pošto zapremina memorije nije velika, kontrola šta je potrebno, a šta ne mora se vršiti stalno. Da biste izrazili radnje robota, prikazali sliku ili dodali u biblioteku radnih programa, morate raditi s osnovnim konceptima informatike: datoteka, tip datoteke, putanja datoteke, izbornik, mapa.
Tema: “Informacijski procesi”, “Kodiranje informacija”.
Robotski komplet opremljen je senzorima koji snimaju audio, taktilne i video informacije. Kada se digitalizuju, informacije se mogu prikazati na ekranu. Posebna funkcija mikroračunara omogućava eksperimentiranje sa senzorima i motorima pomoću programa spremnih za rad. Nakon provođenja serije eksperimenata sa senzorima, dolazi do razumijevanja: zašto ultrazvučni senzor udaljenosti radi sporije od infracrvenog svjetlosnog senzora, kako se zvuk pretvara u digitalni kod, itd. Proučavanje informacionih procesa i principa informacionog kodiranja omogućava dublje razumevanje suštine informacione tehnologije.

Tema: Komunikacione tehnologije.
LEGO®NXT mikroračunar podržava tehnologiju bežičnu komunikaciju. Koristeći Bluetooth funkciju, možete podesiti bežičnu vezu između NXT mikroračunara i drugih uređaja koji imaju Bluetooth uređaj, na primjer, sa drugim NXT-om, sa mobilni telefoni ili sa kompjuterima. Uspostavljanjem Bluetooth veze moguće je: daljinski preuzimati programe sa računara; slanje programa sa drugih uređaja (ne sa računara), uključujući i sa NXT-a; šaljite programe i pojedinačnim NXT-ovima i njihovim grupama. Ova tehnologija omogućava upravljanje robotom pomoću mobilnog telefona.

Teme “Algoritmi. Algoritam Executor”, “Programsko okruženje”.
Za početno upoznavanje sa robotom, možete direktno programirati NXT jedinicu bez pristupa kompjuteru. Direktno na ekranu, koristeći predložak od pet komandi, možete kreirati jednostavan program i zamotajte ga. Međutim, nemoguće je bez poznavanja osnovnih algoritamskih struktura i ovladavanja programskim okruženjem. Sposobnost programiranja robota čini ga univerzalnim izvođačem, sposobnim za rješavanje raznih problema. Trebali biste početi savladavati tehnologiju programiranja sa okruženjima vizualnog programiranja, a zatim prijeći na moćnija i modernija okruženja orijentirana na događaje.
Dakle, robotika će zahtijevati osnovno znanje informatike, a neiscrpna želja učenika da svog robota učini „najboljim“ tjera ga na savladavanje novih znanja.
Zašto se robot može nazvati idealnim nastavnim sredstvom? Jer ovaj alat omogućava stvaranje okruženja za učenje koje će iskoristiti prirodnu želju djeteta za igrom, stvaranjem i komunikacijom s vršnjacima. Dakle, možemo istaći prednosti robotike kao nastavnog alata:
. Sticanje znanja se dešava tokom igre.
. Izgradnja robota nudi kreativnu slobodu.
. Većina učenika ima želju da poboljša svoj rad.

Kao primjer navela bih model „Robot koji dostavlja besplatne poslastice“, koji je napravio učenik 6. razreda u okviru kursa „Programiranje robota“ tokom vannastavnih aktivnosti. Robot je sastavljen od seta LEGO MINDSTORMS NXT Education 9797 prema standardnom modelu Alpharex 1.0, a dopunjen je senzorom boje koji pokazuje status robota i poslužavnikom za poslastice.
Cilj rada je implementirati model ljudskog hoda što je više moguće uz raspoložive resurse. Kretanje svake noge kontrolira motor i mehanički sklop zupčanika i poluga. Jedna poluga pomiče nogu gore-dolje, druga je pomiče naprijed. U tom slučaju, tijelo se skreće prema nozi za potporu, zbog čega robot održava ravnotežu. Ovaj hod se zove "šuškanje"
Zaseban motor kontrolira senzor udaljenosti i poluge koje drže senzor dodira i senzor boje. Posuda za poslastice je fiksirana.
Robot je programiran da djeluje kao dostavljač, na primjer, besplatnih poslastica, prema sljedećem algoritmu ponašanja. Robot prati svoje kretanje direktnom frazom: „Ja sam robot Alpharex, nudim besplatnu poslasticu!“ Osoba koja želi da uspostavi kontakt sa robotom može ga zaustaviti pokretom. Nakon zaustavljanja, robot izgovara frazu: "Posluži se i pritisnite dugme!" Nakon što uzme slatkiš, osoba mora jednom pritisnuti dugme u znak zahvalnosti. Tri sekunde nakon zaustavljanja, robot će nastaviti da se kreće. Kada ponestane poslastica (robot je programiran da ima određeni broj bombona na poslužavniku), robot će se pozdraviti, crveni indikator će zasvijetliti i robot će stati.

Program za upravljanje robotom napisan je u okruženju NXT Programming 2.0.

Izvođač Robot postoji u pravokutnom polju, podijeljenom na ćelije, između kojih mogu postojati zidovi i potpuno se uklapa u jednu ćeliju.

Robot se može kretati po polju, farbati ćelije, mjeriti temperaturu i zračenje. Robot ne može prolaziti kroz zidove, ali može provjeriti da li postoji zid pored njega.

  • Sistem komandi izvođača "Robot" uključuje:
  • 5 komandi koje pokreću radnje robota (lijevo, desno, gore, dolje, slikanje)
  • 10 naredbi za provjeru stanja:
  • 8 komandi oblika [lijevo/desno/dolje/gore] [zid/slobodno]
  • 2 naredbe tipa ćelije [popunjeno/prazno]

2 komande za mjerenje (temperatura, zračenje)

Akcione komande

Provjerite komande Tim
Opis log na lijevoj strani je besplatan
Vraća da ako se robot može pomaknuti ulijevo, inače ne. log na desnoj strani je besplatan
Vraća da ako se robot može pomaknuti udesno, inače ne. log odozgo besplatno
Vraća da ako se robot može pomaknuti gore, u suprotnom ne. prijavite se ispod besplatno
Vraća da ako se robot može kretati prema dolje, inače ne. log lijevi zid
Vraća da ako postoji zid lijevo od robota, inače ne. log desni zid
Vraća da ako postoji zid desno od robota, inače ne. log na gornjem zidu
Vraća da ako postoji zid iznad robota, inače ne. trupac ispod zida
Vraća da ako postoji zid ispod robota, inače ne. ćelija dnevnika je popunjena
Vraća da ako je ćelija popunjena i ne ako ćelija nije popunjena. log ćelija čista

Vraća ne ako je ćelija popunjena i da ako ćelija nije popunjena.

Komande za mjerenje

Algoritam bi mogao izgledati ovako:

koristite robota
alg primjer 1
početak
. dolje
. u pravu
. gore
con

Ako pokušate voditi robota kroz zid, doći će do kvara. Robot će se zabiti u zid i više neće moći slijediti komande.


Napišimo algoritam za robota koji prolazi labirintom od tačke A do B:

koristite robota
Alg od A do B
početak
. u pravu

. gore ; gore ;
desno ; dolje ; dolje ; u pravu
con

. gore ; gore ; desno ;

dolje ; dolje ; u pravu

Komande za prolazak svake sekcije mogu se grupirati u jednu liniju - ovo skraćuje snimanje algoritma i čini ga razumljivijim. Da biste napisali komande u jednom redu, one moraju biti odvojene tačkom i zarezom.
Rešenje 20.1 zadatka OGE 2017 iz računarstva iz demo verzije. Ovo je zadatak drugog dijela sa detaljnim odgovorom, visokog stepena težine. Predviđeno vrijeme završetka zadatka je 45 minuta. Za ovaj zadatak možete osvojiti najviše 2 boda. Zadatak se obavlja na računaru. Provjereni elementi sadržaja:.

- sposobnost pisanja kratkog algoritma u okruženju
formalni izvršilac
Opis elemenata sadržaja testiranih na ispitu:,
- algoritam,
svojstva algoritama
- načini pisanja algoritama,
- blok dijagrami,
- ideja o programiranju,,
- algoritamske konstrukcije,
boolean vrijednosti
- operacije,
- izrazi,
— dijeljenje zadatka na podzadatke,

- pomoćni algoritam,

— obrađeni objekti (lanci znakova, brojeva, liste, stabla).
20.1 zadatak OGE 2017 iz računarstva
gore
dolje
lijevo
u pravu
Performer Robot može se kretati kroz lavirint nacrtan na ravni podijeljenoj na ćelije. Između susjednih (sa strane) ćelija može postojati zid kroz koji robot ne može proći.
Robot ima devet komandi. Četiri naredbe su naredbe naredbe: farbati preko Prilikom izvršavanja bilo koje od ovih naredbi, robot pomjera jednu ćeliju, redom: gore, dolje ↓, lijevo ←, desno →. Ako robot dobije komandu da se kreće kroz zid, on će se srušiti.
Robot takođe ima tim
, u kojoj je prefarbana ćelija u kojoj se trenutno nalazi Robot.
slobodan odozdo
ostavljena slobodno
slobodno na desnoj strani
Još četiri naredbe su naredbe za provjeru stanja. Ove naredbe provjeravaju da li je putanja za robota čista u svakom od četiri moguća smjera: slobodno na vrhu Ove komande se mogu koristiti zajedno sa uslovom "
Ako stanje To
redosled komandi
ako
“, koji ima sljedeći oblik:
Sve Ovdje je uvjet jedna od naredbi za provjeru uvjeta.
Redoslijed naredbi
ako je pravo slobodno onda
u pravu
farbati preko
ako
U jednom stanju, možete koristiti nekoliko naredbi za provjeru stanja koristeći logičke veze I, ili, Ne, Na primjer:
ako (desno je besplatno) i (ne ispod je besplatno) onda
u pravu
ako
Da biste ponovili niz naredbi, možete koristiti petlju " ćao“, koji ima sljedeći oblik:
nts za sada stanje
redosled komandi
kts
Na primjer, da se pomaknete udesno dok je to moguće, možete koristiti sljedeći algoritam:
nts pravo je za sada besplatno
u pravu
kts

Dovršite zadatak.
Beskrajno polje ima horizontalne i vertikalne zidove. Lijevi kraj horizontalnog zida povezan je sa donjim krajem vertikalnog zida. Dužina zida nepoznata. U vertikalnom zidu se nalazi tačno jedan prolaz i njegova širina je nepoznata. Robot se nalazi u kavezu koji se nalazi direktno iznad horizontalnog zida na njegovom desnom kraju.
Na slici je prikazan jedan od mogući načini lokacija zidova i robota (Robot je označen slovom "P").

Napišite algoritam za robota koji slika sve ćelije koje se nalaze direktno lijevo i desno od vertikalnog zida. Prolaz mora ostati neobojen. Robot mora slikati samo ćelije koje zadovoljavaju ovaj uslov. Na primjer, za gornju sliku, Robot mora obojiti sljedeće ćelije (pogledajte sliku).

Prilikom izvršavanja algoritma, Robot ne smije biti uništen; Konačna lokacija robota može biti proizvoljna.
Algoritam mora riješiti problem bilo kakvog dopuštenog rasporeda zidova i bilo koje lokacije i veličine prolaza unutar zida.
Algoritam se može izvršiti u formalnom izvršnom okruženju ili napisan u uređivaču teksta.
Sačuvajte algoritam tekstualnu datoteku. Naziv datoteke i direktorij za spremanje će vam dati organizatori ispita.

Rešenje 20.1 zadatka OGE 2017 iz računarstva

Snimaćemo komande izvođača bold font i komentari - kurziv. Početak komentara će biti označen simbolom “|” ( Nije potrebno zapisivati ​​komentare tokom rada).

|Krećemo se lijevo dok ne dođemo do okomitog zida.
nts lijevo je za sada besplatno
lijevo
kts

|Krećemo se gore dok ne dođemo do prolaza u zidu i farbamo ćelije.
nts još nije slobodan na lijevoj strani
farbati preko
gore
kts

|Idemo do kraja zida i farbamo ćelije.
nts još nije slobodan na lijevoj strani
farbati preko
gore
kts

|Idemo oko zida.
lijevo
dolje

|Krećemo dolje dok ne dođemo do prolaza u zidu i prefarbamo ćelije.
nts još nije slobodan na desnoj strani
farbati preko
dolje
kts

|Spuštamo se do kraja zida i farbamo ćelije.
nts još nije slobodan na desnoj strani
farbati preko
dolje
kts

Moguća su i druga rješenja.
Dozvoljeno je koristiti drugačiju sintaksu za instrukcije izvođača, koja je učenicima poznatija.
Prisustvo pojedinačnih sintaksičkih grešaka je dozvoljeno, ali ne narušava namjeru autora rješenja.

2 boda za zadatak se daju ako
Algoritam radi ispravno za sve važeće ulazne podatke.
1 bod za zadatak se daje ako
Za sve važeće ulazne podatke vrijedi sljedeće:
1) izvršenje algoritma je završeno, a Robot se ne ruši;
2) ne prefarba se više od 10 dodatnih ćelija;
3) od onih koje su trebale biti ofarbane nije ostalo više od 10 ćelija.
0 bodova za zadatak se daje ako
Zadatak je pogrešno obavljen, odnosno nisu ispunjeni uslovi za davanje 1 ili 2 boda.

© 2024 ermake.ru -- O popravci računara - Informativni portal