Acasă - Configurare Internet
Performer „Robot” Algoritmi liniari. Robot interpret

Programul educațional al cursului opțional „Dezvoltarea gândirii algoritmice prin rezolvarea de probleme” (pentru elevii din clasele 5-6). Perioada de implementare: 4 luni. Autorul programului: I.G. Shupletsov Reviewers: consiliul metodologic al școlii secundare MBOU nr. 13, 2012. Notă explicativă A.P. Ershov a descris stilul operațional de gândire - capacitatea de a planifica structura acțiunilor necesare atingerii unui scop folosind un set fix de mijloace. Gândirea algoritmică presupune înțelegerea esenței structurilor algoritmice de bază: urmărirea, ramificarea, bucla, apelarea, precum și capacitatea de a utiliza eficient aceste structuri atunci când compun algoritmi simpli și construiesc algoritmi complexi bazați pe cei simpli. Componentele structurale ale stilului algoritmic de gândire includ: capacitatea de a formaliza o problemă, înțelegerea și capacitatea de a implementa operații algoritmice elementare, alegerea modului optim de atingere a unui scop. Capacitatea de a construi algoritmi este relevantă, din punct de vedere al activității subiectului, în multe domenii de cunoaștere și activitate a elevilor. Alegerea rezolvării problemelor în mediul KuMir se datorează faptului că acestea vă permit să demonstrați în mod clar algoritmi, care dezvoltă abilități algoritmice și gândire algoritmică pe baza acțiunilor vizuale ale interpreților. Elevii din clasele 5-6 sunt motivați să folosească performeri de mediu KuMir. Sunt ușor de utilizat pentru ei, iar sistemul de comandă al acestor interpreți este clar și ușor de utilizat pentru ei. Elevii creează cu entuziasm algoritmi simpli și îi demonstrează profesorului și reciproc. Vizibilitatea acțiunilor interpreților facilitează monitorizarea execuției algoritmului și efectuarea de ajustări la acesta, dacă este necesar. Cursul „Dezvoltarea gândirii algoritmice prin rezolvarea de probleme” este orientat spre practică. Elevii stăpânesc în mod independent mediul KuMir și tehnici de rezolvare a problemelor pe baza tehnologiilor propuse și a exemplelor analizate. Profesorul ajută individual atunci când apar dificultăți și înregistrează problemele rezolvate și oferă, de asemenea, opțiuni optime pentru rezolvarea problemelor. Cursul este oferit pentru studii în școli care dispun de echipamentul educațional, metodologic și tehnic necesar. Este destinat elevilor din clasele 5-6 care au abilități de bază în lucrul cu sistemul de operare WINDOWS. Acest curs poate fi continuat cu un curs despre bazele programării și un curs la distanță de rezolvare a problemelor olimpiadei pe site-ul http://www.acmu.ru pentru studenții interesați de 78 de clase. Tema „Algoritmizare” este studiată în trimestrul IV din clasa a VI-a. Astfel, până în acest moment, studenții vor fi capabili să stăpânească utilizarea mediului KuMir și a proiectelor algoritmice intuitive, ceea ce le va permite să studieze cu succes teoria algoritmizării și să o aplice cu ușurință în practică. Cursul „Dezvoltarea gândirii algoritmice prin rezolvarea de probleme” este conceput pentru 17 ore, timp în care studenții vor fi capabili să stăpânească intuitiv, atunci când rezolvă probleme pe calculator, structurile algoritmice de bază: urmărirea, ramificarea, bucla, apelarea unui algoritm auxiliar, pentru compilarea eficientă a algoritmilor. 1 Acest curs poate fi primul pas pentru studiul suplimentar al programării și alegerea unei direcții de studiu legate de tehnologia informației. Scopurile și obiectivele cursului Scopul cursului:  extinderea cunoștințelor studenților la disciplina „Informatică și TIC”;  dezvoltarea gândirii algoritmice a elevilor prin crearea de algoritmi de rezolvare a problemelor. Obiectivele cursului:  introducerea studenților în practică în mediul KuMir;  luați în considerare principalele capacități ale celor mai populari interpreți „Robot” și „Desenător”;  stăpânească utilizarea structurilor algoritmice de bază: urmărire, ramificare, buclă, apelare. Tehnologia sesiunilor de antrenament. Orele de control se desfășoară sub formă de lucrări practice. La începutul lecției (5 minute), profesorul stabilește obiectivul acestei lecții pentru elevi și reamintește rezultatele fiecărui elev pe care le-a atins până la acest moment și ce sarcini trebuie să rezolve în această lecție. Elevii compun algoritmi pe un computer, îi execută, urmăresc rezultatele intermediare și raportează profesorului despre soluția problemelor. Elevii se pot ajuta reciproc în rezolvarea problemelor. Acele probleme care nu au fost rezolvate la clasă pot fi rezolvate ca teme și verificate la următoarele clase. Profesorul verifică problema rezolvată și înregistrează rezolvarea acesteia în jurnal. La finalul lecției (5 minute) se notează acei elevi care au cel mai mare număr de probleme rezolvate, se identifică dificultățile întâmpinate de elevii care nu au rezolvat problemele și se propun și se discută modalități de depășire a acestora. La începutul și la sfârșitul lecției sunt revizuite evaluările tuturor elevilor, ceea ce vă permite să organizați o competiție între elevi. Calendar-plan tematic Lecția Nr. Tema lecției 1 2 3 4 5 Introducere în sistemul KuMir. Rezolvarea problemelor. Robot interpret. Rezolvarea problemelor. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Exemple de algoritmi auxiliari. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Un exemplu de algoritm ciclic. Elaborarea algoritmilor ciclici. Rezolvarea problemelor. 6 7 Numărul de ore 1 1 1 1 1 1 1 2 8 9 10 11 12 13 14 15 16 17 Un exemplu de algoritm de ramificare. Compilarea algoritmilor de ramificare. Rezolvarea problemelor. Artist desenator. Rezolvarea problemelor. Comanda pentru a trece la un punct. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Comanda de deplasare prin vector. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Comanda de deplasare prin vector. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Elaborarea algoritmilor ciclici. Rezolvarea problemelor. Elaborarea algoritmilor ciclici. Rezolvarea problemelor. Rezumând. Evaluarea elevilor. Rezolvarea problemelor. Total 1 1 1 1 1 2 1 1 1 17 Conținutul materialului educațional Introducere în sistemul KuMir. Se încarcă sistemul KuMir. Numirea executorului Robot. Sistem de comandă pentru performer robot. Ordinea de scriere a algoritmului. Procedura de creare a unui câmp Robot. Executarea algoritmului. Urmărirea rezultatelor executării algoritmului de către robot. Scrierea primului algoritm. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Algoritm auxiliar. Două exemple de algoritmi auxiliari. Comanda pentru a apela un algoritm auxiliar. Înregistrarea unui algoritm auxiliar. Două cazuri în care se folosesc algoritmi auxiliari. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Algoritm ciclic. Un exemplu de algoritm ciclic. Buclă cu un număr specificat de repetări, comanda Buclă de N ori. Elaborarea algoritmilor ciclici. Rezolvarea problemelor. Algoritm de ramificare. Două exemple de algoritm de ramificare. Comanda Dacă. Forma completă și incompletă a comenzii dacă. Condiții într-un algoritm de ramificare. Compilarea algoritmilor de ramificare. Rezolvarea problemelor. Artist desenator. Sistemul de comandă al desenatorului. Scrierea unui algoritm pentru un desenator. Scopul comenzii este de a trece la un punct. Un exemplu de algoritm cu comanda de a muta la un punct. Procedura pentru crearea unui desen și scrierea unui algoritm pentru desenator interpret. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Desenator interpret. Un exemplu de algoritm cu comanda de deplasare cu un vector. Procedura pentru crearea unui desen și scrierea unui algoritm cu comanda de trecere la un vector pentru desenator interpret. Elaborarea algoritmilor liniari. Rezolvarea problemelor. Un exemplu de algoritm auxiliar. Elaborarea algoritmilor auxiliari. Rezolvarea problemelor. Un exemplu de algoritm ciclic. Elaborarea algoritmilor ciclici. Rezolvarea problemelor. Rezultatele așteptate ale stăpânirii cursului Cursul permite studenților să se familiarizeze cu: Elementele de încărcare și interfață ale programului KuMir. 5 Sarcina 2 Creați un program, după care Robotul va picta celulele dispuse sub formă de romb cu o lungime laterală de 4 celule. Sarcina 3 Creați un program, după executarea căruia, Robotul va picta celulele dispuse sub forma unei piramide înălțime de 4 celule și va reveni la poziția inițială. Sarcina 4 Creați un program, după care îl executați, Robotul va picta peste celule pentru a obține un desen interesant (de exemplu, o față zâmbitoare). 6 Sarcina 5 Robotul se află la începutul coridorului orizontal (celula A). Mutați robotul la capătul coridorului (celula B). Literele A și B nu sunt plasate în setarea Robot. Sarcina 6 Robotul este situat în fața intrării într-un coridor vertical. Robotul trebuie să meargă de-a lungul coridorului și să iasă din el o celulă. Robotul trebuie să picteze celulele prin care trece. Sarcina 7 Într-o setare Robot, creați un labirint cu o singură ieșire. Pune robotul în cușca din care va ieși din labirint. Scrieți un program care să scoată robotul din labirint. Sarcina 8 Robotul trebuie să se deplaseze din celula A în celula B și să picteze celulele marcate cu puncte. 7 Important: toți algoritmii pe care i-ați compilat sunt liniari, deoarece comenzile din ele urmează una după alta de la începutul până la sfârșitul algoritmului. 8

Și astăzi vom vorbi despre cicluri. Să ne dăm seama ce este un ciclu și cum să învățăm robotul nostru să efectueze algoritmi ciclici.

Aşa, ce este un ciclu? Imaginează-ți că suntem la o lecție de educație fizică și ne confruntăm cu o sarcină face 7 genuflexiuni. Această sarcină poate fi scrisă ca un algoritm liniar și apoi va arăta cam așa:

fă o ghemuială

fă o ghemuială

fă o ghemuială

fă o ghemuială

fă o ghemuială

fă o ghemuială

fă o ghemuială

Adică, am repetat comanda „fă o ghemuire” de 7 ori. Are sens să scrii 7 comenzi identice? Ar putea fi mai ușor să dai o comandă face 7 genuflexiuni? Desigur, este mai simplu și mai corect. Acesta este ciclul. Îți poți aminti chiar tu exemple de cicluri din viață - sunt destul de multe.

Astfel algoritm liniar, unde se repetă aceleași comenzi putem aranja ca algoritm ciclic- ceva de genul asta:

repeta de 7 ori

fă o ghemuială

sfârşitul ciclului

Așa am proiectat ciclul în limbajul inventat de noi. Artistul Robot are, de asemenea, capacitatea de a înregistra cicluri. În plus, ciclurile sunt diferite. Opțiunea pe care tocmai ne-am uitat se numește buclă cu contor sau buclă cu parametru.

Tipuri de cicluri.

Bucla cu un contor.

Bucla cu contor folosit când se știe dinainte câte repetări trebuie făcute. În exemplul de mai sus cu genuflexiuni, acesta este exact cazul.

Pentru a scrie o buclă cu un numărător pentru executor, trebuie să-i cunoașteți sintaxa. Și el este așa:

nc<numărul de repetări> ori

<команда 1>

<команда 2>

<команда n>

Aici trebuie să precizăm numărul de repetări (numărul) și comenzile care vor fi repetate. Comenzile care sunt repetate într-o buclă sunt apelate corpul buclei.

Să ne uităm la asta cu un exemplu.

Inițial, Robotul era în celula din stânga sus.

Să rezolvăm mai întâi problema liniar. În acest caz, vom picta celula curentă și vom muta 1 celulă la dreapta și programul va arăta astfel:
utilizați robotul
alg
început

vopsea peste

corect

vopsea peste

corect

vopsea peste

corect

vopsea peste

corect

vopsea peste

corect

vopsea peste

corect

vopsea peste

corect

După cum puteți vedea, comenzile pentru a picta și în dreapta sunt repetate de 7 ori. Să rescriem acum programul folosind o buclă. Apropo, pentru a introduce un ciclu în programul dvs., puteți merge la meniu Introduce selectați elementul tsk-tsk-tsk sau apăsați una dintre combinațiile de taste Esc, P(litera rusă R) sau Esc, H(litera latină H). În plus tastele trebuie apăsate secvenţial- mai întâi Esc, eliberați-l și abia apoi P sau H.

Așa că aici este al nostru program în buclă va arata asa:

utilizați robotul

nts de 7 ori

vopsea peste

corect

Dacă îl rulăm, vom vedea că rezultatul va fi același - 7 celule umplute. Totuși, programul a devenit mai scurt și mult mai inteligent din punct de vedere algoritmic!

Ca încălzire și întărire, vă sugerez să scrieți singur un program pentru Robot, care va desena un pătrat cu o latură de 7 celule. Desigur, folosind o buclă. Aștept o soluție în comentarii.

Buclă condiționată.

La rezolvarea Problemei 19 a Informaticii Academice de Stat în Informatică cu un Robot, nu va fi posibilă utilizarea unei bucle cu contor. Din moment ce câmpul există, de regulă, nesfârșit, iar pereții nu au o lungime anume. Prin urmare, nu vom putea determina numărul de repetări pentru o buclă cu un contor. Dar nu contează - ne va ajuta buclă cu condiție.

Să revenim la educația fizică și să schimbăm problema. La urma urmei, cineva s-ar putea să nu poată face 7 genuflexiuni, în timp ce altul poate să facă 27. Este posibil să ținem cont de acest lucru la crearea unui ciclu? Cu siguranţă. Numai că acum vom folosi nu un numărător (număr de repetări), ci o condiție. De exemplu, până obosești, fă genuflexiuni. În acest caz, persoana nu va face un anumit număr de genuflexiuni, ci se va ghemui până când obosește. Și ciclul nostru în limbaj abstract va lua următoarea formă:

la revedere nu obosit

fă o ghemuială

sfârşitul ciclului

Cuvintele nu sunt obosite în cazul nostru - aceasta este o condiție. Când este adevărat, bucla este executată. Dacă este fals (obosit), corpul buclei nu va fi executat. Artistul Robot are mai multe condiții

liber pe deasupra

liber de jos

lăsat liber

liber pe dreapta

perete de deasupra

zidul de dedesubt

peretele stâng

zidul din dreapta

Dar în condițiile sarcinii 19 din GIA sunt indicate doar primele 4 Așa că le vom folosi doar.

Acum să rezolvăm următoarea sarcină pentru Robot - trageți o linie verticală de la marginea stângă la dreapta câmpului folosind o buclă cu o condiție. Inițial, robotul este situat în colțul din stânga sus.

Să formulăm mai întâi un algoritm verbal - adică să descriem în cuvinte ce trebuie să facă Robotul. Acest algoritm va suna cam așa:

« În timp ce există spațiu liber în dreapta, faceți un pas spre dreapta și pictați celula »

Drept urmare, Robotul va alerga prin toate celulele din dreapta și le va picta până când va apărea un perete în dreapta.

Codul sursă al programului nostru pentru Robot va fi cam așa:

utilizați robotul

nts dreptul este gratuit pentru moment

corect

vopsea peste

Ca urmare a executării acestui program, vom vedea următoarea imagine:

Robot interpret. Algoritmi auxiliari(2 ore)

Ţintă: introducerea conceptului de algoritmi principali și auxiliari; explicați regulile de utilizare a algoritmului auxiliar; analiza exemple de algoritmi folosind cei auxiliari. Să dezvolte abilități practice în construirea algoritmilor folosind metoda rafinamentului secvenţial.

Planul de lecție

1. Introducerea de noi termeni (algoritmi principali și auxiliari, apeluri) și explicarea noilor concepte.

2. Analiza exemplelor de rezolvare a problemelor folosind un algoritm auxiliar.

3. Lucrări practice

Când rezolvați unele probleme, este convenabil să le împărțiți în subsarcini mai mici, fiecare dintre acestea putând fi formulată ca un algoritm independent. În acest caz, este mai întâi compilat așa-numitul algoritm principal, în care apelurile la algoritmi auxiliari sunt folosite pentru a rezolva subsarcinile, care sunt adăugate ulterior. Această soluție se numește metoda de rafinare secventiala. Permite unui grup de programatori să lucreze la un proiect, fiecare rezolvându-și propria sarcină secundară.

În procesul de rezolvare a unei probleme, fiecare algoritm auxiliar poate fi, dacă este necesar, împărțit în algoritmi auxiliari mai mici.

Este apelată comanda de executare a algoritmului auxiliar provocare și este scris în corpul algoritmului principal.

Același algoritm poate fi considerat principal și auxiliar în raport cu alți algoritmi. Într-un limbaj algoritmic, algoritmul principal este scris primul, iar cei auxiliari sunt notați pe rând.

Sarcina 1:

Robotul se află în colțul din stânga sus al câmpului. Nu există pereți sau celule pictate. Creați un algoritm, folosind unul auxiliar, care desenează patru cruci pe o linie orizontală. Poziția finală a robotului poate fi arbitrară.

Soluţie

Analiza la tabla:

Sarcina 2. Robotul se află în colțul din stânga sus al câmpului. Nu există pereți sau celule pictate. Creați un algoritm care pictează un pătrat de 8 x 8 într-un model de șah Poziția finală a robotului poate fi arbitrară.

Lucrare practică pe un computer „Rezolvarea unei probleme folosind algoritmi auxiliari”

Problema 1 . Robotul se află în colțul din stânga jos al câmpului. Nu există pereți sau celule pictate. Creați un algoritm care pictează 6 dungi verticale de lungime egală în 6 celule. Poziția finală a robotului poate fi arbitrară.

Problema 2 . Folosind cele auxiliare, creați un algoritm pentru pictarea celulelor care formează numărul 1212.

Teme pentru acasă : Vino cu un algoritm care desenează următoarea imagine: Pentru a rezolva problema, utilizați doi algoritmi auxiliari.

Manual metodologic pentru profesorii de informatică. Evgrafova Olga Vladimirovna, gimnaziul nr. 8 Kolomna, 2013 În procesul de studiere a disciplinei „Informatică și TIC”, studenții nu numai că învață cultura informațională (cultura comunicării competente cu un computer, pregătirea documentelor, comunicarea electronică), ci și stăpânesc elementele de bază ale programării. Una dintre cele mai de succes dezvoltări interne în acest domeniu este sistemul de programare Kumir. În cadrul acestuia, studenții pot dobândi abilități practice în crearea și depanarea unui algoritm, lucrând cu artiștii Robot și Draftsman. Avantajele acestui sistem sunt posibilitatea de a scrie comenzi în limba rusă în limbajul algoritmic școlar și claritatea rezultatului rezultat al executării algoritmului. Sistemul KuMir a fost dezvoltat pe baza nevoilor sistemului de învățământ rus. Caracteristicile sale:      distribuit gratuit; multiplatformă; zero cerințe de resurse; susținut de Academia Rusă de Științe; Printre dezvoltatori se numără autorii multor manuale și materiale didactice despre informatică;  shell-ul gratuit al software-ului Idol poate fi găsit pe site-ul http://www.niisi.ru/kumir/. Din păcate, autorii noilor manuale de informatică acordă o atenție insuficientă sau chiar îi ignoră pe acești interpreți. În același timp, dezvoltatorii GIA și -1-

p. 2

Examenul de stat unificat include sarcini care utilizează datele executantului în sarcinile lucrărilor de examen. Tema este studiată în clasa a IX-a la secțiunea „Algoritmizare și programare”. Pentru studierea temei sunt alocate 9 ore. Elevii ar trebui să știe: ce este un interpret; SKI Robot, mediul interpretului Robot; ce este un algoritm; care sunt principalele proprietăți ale algoritmului; modalități de scriere a algoritmilor: organigrame, limbaj algoritmic educațional; construcții algoritmice de bază: urmărire, ramificare, buclă; scopul algoritmilor auxiliari. Elevii ar trebui să fie capabili: să înțeleagă descrierile algoritmilor în limbajul algoritmic educațional; efectuați o urmărire a algoritmului pentru un interpret cunoscut; compune algoritmi de control liniar, ramificat și ciclic pentru performerul robotului; evidențiați subsarcinile; definiți și utilizați algoritmi auxiliari. Plan tematic de lecție: Nr. 1. 2. 3. 4. 5. Numărul de ore Robot Interpret. Sistem de comandă a executorului. Compoziție1 0,5 algoritmi liniari. Algoritmi ciclici. 3 1 Lucrare practică nr. 1. Compilarea și depanarea algoritmilor ciclici. Ramificarea și rafinarea secvențială a algoritmului. 2 1 Lucrare practică nr. 2. Compilarea și depanarea algoritmilor ciclici și de ramificare. Algoritmi și subrutine auxiliare. 2 0,5 Ave. sclav. nr. 3. „Utilizarea algoritmilor auxiliari”. Test. „Crearea unui algoritm în mediul executantului” Tema lecției Practică 0.5 2 1 1.5 1 Materiale pentru lecții pe tema „Robot executor educațional”: -2-

p. 3

Lecția 1. Robot interpret. Sistem de comandă a executorului. La executarea unui program, robotul se deplasează într-un câmp dreptunghiular în carouri, între celulele cărora se pot amplasa pereți. Câmpul este apelat pe ecran cu ajutorul butonului „Robot Window”, care se află pe bara de instrumente. Câmpul cod program robot. Robotul poate executa comenzi-comenzi și comenzi-întrebări. Comenzi de comandă: dreapta, stânga, sus, jos, pictură. Dacă există un zid în cale, comanda nu poate fi executată. O telecomandă este utilizată pentru a controla direct robotul. Prin apăsarea butoanelor de pe telecomandă, o persoană dă comenzile corespunzătoare, iar Robotul le execută. Pentru controlul programului, nu este suficient să știți ce comenzi și în ce secvență trebuie executate. De asemenea, este necesar să notați aceste comenzi într-o formă pe care computerul îl înțeleagă, de exemplu. formulat ca un algoritm. În cel mai simplu caz, algoritmul pentru un Robot este scris astfel: Numele algoritmului este o succesiune de caractere sau cuvinte separate prin spații. Primul caracter al numelui nu trebuie să înceapă cu un număr. Nume corecte: g, sumă, porecla perimetru, 12 aprilie, 12 aprilie, număr_11_kl. Numele „corect” va fi evidențiat cu albastru. use Robot alg algorithm_name start secvența de comenzi con Pentru o mai bună înțelegere a algoritmului din corpul programului, puteți folosi comentarii. Comentariile încep cu |. Dacă comentariile se întind pe mai multe rânduri, fiecare linie trebuie să aibă un semn | Comentariile nu au niciun efect asupra progresului algoritmului. Exemplu 1. Programul „Mișcarea Cavalerului” (mută Robotul din punctul A în punctul B). Starea inițială: Program: Rezultat: Regulile limbajului algoritmic permit să fie scrise mai multe comenzi pe o singură linie, separate prin punct și virgulă. -3-

p. 4

Exemplul 2. Trebuie să mutați robotul din punctul A în punctul B. Calea pe care trebuie să o urmeze robotul poate fi împărțită în cinci secțiuni identice. Este convenabil să grupați comenzile pentru trecerea fiecărei secțiuni într-o singură linie - acest lucru scurtează înregistrarea algoritmului și o face mai ușor de înțeles. Schimbarea decorului Robot. Pentru a forța Robotul să acționeze într-un mediu nou, acesta trebuie să fie încărcat folosind următoarele comenzi din meniul principal: Selectați elementul „Robot” „Schimbați mediul de pornire” Deschideți folderul dorit și selectați fișierul. Crearea unui nou mediu. Pentru a crea un mediu nou pentru Robot, trebuie să executați comenzile din meniul principal: Selectați elementul „Instrumente” „Editați mediul de pornire”. În fereastra „Setări”, selectați elementul „Setări” „Setare nouă” Setați numărul de rânduri și coloane. Faceți clic cu mouse-ul pentru a instala pereți și mutați robotul în celula dorită. Salvați setarea utilizând comenzile: „Setare” „Salvare ca” Specificați numele fișierului și folderul pentru plasare. Faceți clic pe butonul „Salvare”. Plasați/Eliminați un perete - faceți clic pe marginea dintre celule. Pictează / Curățați o celulă - faceți clic pe celulă. Adăugați/eliminați un punct - faceți clic pe celulă în timp ce apăsați tasta Ctrl. Setați radiații, etichete - faceți clic dreapta. Mutați robotul - trageți cu mouse-ul. „Execuție” Execuția programului. „Rulați continuu” Lucrări independente pe computer: 1. Încărcați un nou mediu, mutați robotul în punctul „B”, colorând de-a lungul punctelor marcate cu simbolul „punct”: „Atelier pentru robot” folderul „1” sarcină „ B” (materiale cu site-ul web al lui K. Polyakov http://kpolyakov.narod.ru), compuneți un program, deschideți fereastra Robot și rulați programul pentru execuție. Salvați programul în folderul dvs. cu numele „1_B”. 2. Creați o situație nouă, salvați-o în folderul dvs. cu numele „Setting_1”. Compuneți un program pentru noul mediu și salvați-l în folderul dvs. cu numele „new_environment_1”. 3. **Rezolvați alte probleme din folderul nr.1 al atelierului. -4- B

p. 5

Lecția 2. Algoritmi ciclici. Ciclul N - ori. Sarcina de revizuire: Petya a creat un algoritm pentru robotul „Walk”. Kolya a șters o echipă din ea. Determinați ce echipă a șters-o Kolya dacă se știe că robotul trebuie să revină la starea inițială. Răspuns: folosește corect Robot alg Walk start. Sus; La dreapta. ? . jos; stânga; capătul din stânga N ori · serie de comenzi kc Când se compun algoritmi, sunt adesea cazuri când o anumită secvență de comenzi trebuie executată de mai multe ori la rând. De exemplu, exemplul nr. 2 din lecția anterioară. Pentru a simplifica scrierea algoritmului în astfel de cazuri, puteți folosi comanda „Loop N times”. N este o expresie întreagă care specifică numărul de repetări. La executarea algoritmului, secvența de comenzi se repetă ciclic de numărul specificat de ori. Acest număr poate fi zero sau chiar negativ. Aceste cazuri nu sunt considerate eronate; corpul buclei pur și simplu nu va fi executat nici măcar o singură dată, iar computerul va proceda imediat la executarea comenzilor scrise după buclă. Exemplul 1. Trebuie să mutați robotul din punctul A în punctul B. A B Exemplul 2. Pictați un rând de 16 celule. Exemplul 3. Colorează un dreptunghi care măsoară 5 (rânduri) x 6 (coloane). folosește Robot alg Dreptunghi start nc de 5 ori cc final Un ciclu poate fi localizat în interiorul altui ciclu. Apoi se numește imbricat. -5-

p. 6

Lucru independent pe computer: Exemplul 4. Să presupunem că trebuie să mutați Robotul din poziția inițială în punctul indicat de un asterisc și să colorați celulele labirintului pe parcurs. Creați un mediu și un program. Salvați fișierele în propriul folder. Exemplul 5. Mutați robotul din poziția inițială la bază și pictați celulele marcate cu un punct. Creați un mediu și un program. Salvați fișierele în propriul folder. Exemplul 6. Este necesar să ghidați Robotul prin labirint de la poziția inițială până la punctul A. Exemplul 7. Este necesar să ghidați Robotul de-a lungul coridorului de la poziția inițială până la punctul A, privind în fiecare coridor lateral. Exemplul 8. Scrieți un program pentru pictarea celulelor câmpului marcat cu *. Poziția inițială a robotului este indicată de pictograma ◊. Exemplul 9*. Pe terenul interpretului sunt ziduri. Este necesar să găsiți poziția inițială, optimă a interpretului și să scrieți un program, al cărui rezultat va fi celule umplute (așa cum se arată în figură). **Creează programe folosind folderul „Atelier pentru robot”_ Nr. 2. -6-

p. 7

Lecția 3. Ciclul Bye. Trebuie să învățăm cum să compunem algoritmi universali care nu vor depinde de distanțele dintre Robot și perete sau de lungimea pereților. Pentru a face acest lucru, vom folosi un nou operator de buclă. nts while condition serie de comenzi kts La executarea unui ciclu, calculatorul repetă următoarele acțiuni:  verifică condiția;  dacă condiția este îndeplinită, atunci se execută comenzile corpului buclei și se verifică din nou condiția etc.  dacă nu este îndeplinită condiția, atunci execuția pe peretele din stânga din stânga liber al ciclului este finalizată, iar comenzile de pe peretele din dreapta din dreapta sunt scrise liber după CC. de jos peretele de jos este liber  condiții de ciclu (comenzi de întrebare): de sus peretele de sus este liber celula este vopsită peste celula este curată Note.  Dacă condiția nu este îndeplinită de la bun început, atunci corpul buclei nu va fi executat nici măcar o dată!  Bucla poate să nu se finalizeze dacă condiția este îndeplinită tot timpul. Această situație apare de obicei ca urmare a erorilor din NC în timp ce se compilează corect algoritmi. corect; la stânga Exemplu de algoritm infinit (în dreapta nu există perete): CC Condițiile pot fi simple sau compuse. O condiție simplă este de obicei un fel de verificare. Un exemplu ar fi orice comandă de întrebare robot. O condiție compusă este formată din mai multe condiții simple folosind cuvintele funcție ȘI, SAU, NU. Dacă există un AND între condițiile simple, atunci pentru ca condiția compusă să fie îndeplinită, ambele condiții simple trebuie să fie adevărate. Dacă există un OR între condițiile simple, atunci pentru ca condiția compusă să fie îndeplinită este suficient ca cel puțin o condiție simplă să fie adevărată. Exemplul 2. Robot Exemplu 1. Ped-ul trebuie să picteze și să înlocuiască Roklet-urile indicate de bot către bază. în imagine. Lungimea peretelui și distanța până la perete sunt necunoscute. utilizați Robot alg To Base begin. nts partea de sus este gratuită pentru moment. . Sus. kts. deocamdată există un zid deasupra. . La dreapta. kts. sus con -7-

p. 8

▪ Lucru independent pe computer: Undeva în câmpul Robot se află un perete sub formă de colț, ale cărui dimensiuni sunt necunoscute. Un robot dintr-o celulă arbitrară din stânga peretelui, dar cu siguranță vizavi de acesta, trebuie să ajungă pe perete și să picteze toate celulele de-a lungul peretelui din spatele lui, așa cum se arată în figură. ▪ Este necesar să mutați Robotul din poziția inițială în punctul A, în timp ce pictați celulele indicate ale câmpului. Dimensiunile pereților și distanța dintre ei pot fi arbitrare. ▪ Creați programe folosind folderul „Atelier pentru Robot”  Folder_4_Tasks_A_C_D  Folder_5_Tasks_A_B_C_D Lecția 4. Lucrare practică Nr. 1. Algoritmi ciclici pentru robot. Opțiunea 1 Sarcina 1. Pictați peste celulele situate în stânga peretelui sau deasupra peretelui. Distanța de la Robot la perete este necunoscută. Lungimea pereților este necunoscută. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. P Sarcina 2. Performer Robotul este situat undeva în interiorul unei zone pătrate limitate. Lungimea laturii pătratului este necunoscută. Scrieți un algoritm pentru Robot care pictează toate celulele situate pe diagonala unui pătrat din colțul din stânga sus până în colțul din dreapta jos. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. Sarcina 3. Transferați interpretul din celula A în celula B, colorând celulele marcate. Lungimea pereților și distanța dintre ele sunt necunoscute. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. -8-

p. 9

Sarcina 4. Este necesar să mutați Robotul din poziția inițială (◊) în punctul A, în timp ce pictați celulele indicate ale câmpului. Dimensiunile pereților și distanța dintre ei pot fi arbitrare. Sarcina 5. Există o scară pe un câmp nesfârșit. Numărul de pași poate fi oricare. Peretele orizontal inferior continuă nedefinit spre dreapta, peretele orizontal superior continuă nedefinit spre stânga. Robotul este situat undeva deasupra peretelui orizontal inferior. Pictați peste celulele situate de-a lungul părții verticale a treptelor (vezi figura). Poziția finală a robotului este oricare. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. Fiecare pas are o dimensiune de 2 celule pe orizontală și 2 celule pe verticală. Opțiunea 2 Sarcina 1. Scrieți un algoritm pentru Robot care pictează toate celulele situate de-a lungul părții stângi și deasupra părților inferioare ale dreptunghiului și adiacente peretelui. Distanța de la Robot la pereți și lungimea pereților sunt necunoscute. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. Sarcina 2. Performer Robotul este situat undeva în interiorul unei zone pătrate limitate. Lungimea laturii pătratului este necunoscută. Scrieți un algoritm pentru Robot care pictează toate celulele situate pe diagonala unui pătrat din colțul din dreapta sus până în colțul din stânga jos. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. Sarcina 3. Transferați interpretul din celula A în celula B, colorând celulele marcate. Lungimea pereților și distanța dintre ele sunt necunoscute. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. -9-

p. 10

Sarcina 4. Este necesar să mutați Robotul din poziția inițială (◊) în punctul A, în timp ce pictați celulele indicate ale câmpului. Dimensiunile pereților și distanța dintre ei pot fi arbitrare. Sarcina 5. Există o scară pe un câmp nesfârșit. Numărul de pași poate fi oricare. Peretele orizontal inferior continuă nedefinit spre stânga, peretele orizontal superior continuă nedefinit spre dreapta. Robotul este situat undeva deasupra peretelui orizontal inferior. Pictați peste celulele situate de-a lungul părții verticale a treptelor (vezi figura). Poziția finală a robotului este oricare. Creați o setare și scrieți un program. Salvați fișierele în propriul folder. Fiecare pas are o dimensiune de 2 celule pe orizontală și 2 celule pe verticală. Lecția 5. Algoritmi de ramificare. Comanda „dacă _ atunci _ altfel _ toate” Vedere generală a comenzii: dacă condiția atunci acțiunile 1 altfel acțiunile 2 toate Structura comenzii: după verificarea condiției, acțiunile 1 sunt executate, dacă condiția este adevărată, în caz contrar, acțiunile 2 sunt executate După aceasta, comenzile scrise sunt executate după cuvântul totul. În caz contrar, ramura poate lipsi (ramificare incompletă). În acest caz, comanda are forma: dacă condiția, atunci toate acțiunile Dacă condiția nu este îndeplinită, atunci comenzile scrise după cuvântul de serviciu sunt executate imediat. Exemplu 1. Creați un program care ghidează Robotul printr-un coridor de lungime arbitrară. Pe parcurs, Robotul trebuie să picteze toate celulele care nu au un perete dedesubt. Numărul de găuri este necunoscut. - 10 -

p. 11

Exemplul 2. Mutați robotul în punctul B și pictați celulele marcate cu un punct. Lungimea peretelui și numărul de „fundături” sunt necunoscute. utilizați Robot alg To Base start nc în timp ce dreapta este liberă la dreapta dacă partea de sus este liberă, apoi în sus vopsiți în jos toate nodurile în jos cu Exemplu** Calculați câte celule umbrite sunt în coridor (pentru a face acest lucru, trebuie să analizați construcții suplimentare: întreg sch |. descrierea unei variabile de tip întreg sch:= сч+1 | creșterea variabilei cu 1 сч | afișând valoarea variabilei pe ecran. Creați un algoritm pentru ca robotul să treacă prin mediul înconjurător: Sarcina 2. Creați un program în care robotul depășește orice număr de obstacole și ajunge la perete - 11 -.

p. 12

Sarcina 3. Colorează celulele marcate cu puncte. Sarcina 4. utilizați Robot Alg On Base începe să picteze peste nc, în timp ce în dreapta este liber la dreapta dacă este liber în partea de sus apoi în sus; vopsea peste; jos altfel pictați peste toți kts jos con Sarcina 5. Vopsiți peste celulele situate lângă pereți. Creați un algoritm care pictează toate celulele situate între doi pereți. Nu se știe care zid este la stânga. utilizați Robot alg between_walls începe nts până când (nu liber de sus) sau (nu liber de jos) la dreapta dacă (nu liber de sus) și (nu liber de jos) apoi pictați peste toate kc con use Robot alg uch5 start to the dreapta nts până când nu vopsesc liber de jos; la dreapta kts vopsit peste; jos nc până când stânga este liber să picteze; la stânga kts ts până când stânga este liberă să picteze peste; jos kts vopsea peste; stânga; vopsea peste; Sus; nts până când partea de sus este vopsită liber; sus kts ts până când vârful este vopsit liber peste; stânga kts cu Sarcina 6**. Robotul este la începutul coridorului. Coridorul are fundături în partea de sus și de jos de lungime necunoscută, dar locația lor nu este niciodată opusă. Lungimea coridorului este, de asemenea, necunoscută. Scrieți un algoritm pentru pictarea tuturor punctelor fără fund și ieșirea din coridor. - 12 -

p. 13

utilizați Robot alg fundurile început. nts pentru moment (perete deasupra) sau (perete dedesubt). . La dreapta. . dacă (liber deasupra) și (perete dedesubt). . . Că. . . . nts partea de sus este gratuită pentru moment. . . . . Sus; vopsea peste. . . . kts. . . . nts este încă gratuit de jos. . . . . jos. . . . kts. . Toate. . dacă (liber de jos) și (perete de sus). . . Că. . . . nts este încă gratuit de jos. . . . . jos; vopsea peste. . . . kts. . . . nts partea de sus este gratuită pentru moment. . . . . Sus. . . . kts. . Toate; . kts; con Comenzile evidențiate cu roșu trebuie să se oprească la ieșirea din coridor. Lecția 6. Lucrare practică nr. 2. Algoritmi ciclici și de ramificare pentru Robot. Rezolvarea problemelor folosind CMM GIA. Comentariu. La compilarea algoritmilor, problema trebuie rezolvată în formă generală, adică. se determină tipul figurii, dar lungimile laturilor, numărul de trepte și alți parametri pot varia. Programul ar trebui să funcționeze pentru orice figură cu aspect similar! Sarcina 1. Creați o situație și scrieți un algoritm care pictează toate celulele situate în dreapta secțiunilor verticale ale peretelui. utilizați Robot alg task 1 start down; La dreapta. nts partea de sus este gratuită pentru moment. . picta. kts. nts nu sunt încă liberi de sus. . La dreapta. kts. Sus. nts nu este încă liber în stânga. . vopsea peste; Sus. kts con - 13 -

p. 14

utilizați Robot alg task 2 început. nts dreptul este gratuit pentru moment. . La dreapta. kts. nts nu sunt încă liberi în dreapta. . Sus. kts. La dreapta. nts nu sunt încă liberi în dreapta. . vopsit; La dreapta. kts con Înălțimea fiecărei trepte este de un pătrat, lățimea este de 2 pătrate. Problema 2. Scrieți un algoritm care pictează toate celulele deasupra pașilor. Sarcina 3. Pictați toate celulele situate deasupra treptelor scărilor care coboară de la stânga la dreapta. utilizați Robot alg task 3 început. nts este încă gratuit de jos. . jos; stânga; La stânga. kts. nts nu este încă liber în stânga. . vopsea peste; La dreapta. . vopsea peste; La dreapta. . jos. kts con Sarcina 4. Colorează celulele labirintului. utilizați Robot alg Labirint început. La dreapta. deocamdată este un zid în dreapta. . vopsea peste; Sus. . vopsea peste; Sus. . vopsea peste; La dreapta. . vopsea peste; jos. . vopsea peste; jos. . vopsea peste; La dreapta. kts con Sarcina 5** Artistul se află într-o celulă arbitrară, dar întotdeauna vizavi de perete (imaginea de mai sus). Ca rezultat, trebuie să pictați peste celule, așa cum se arată în figura de mai jos. - 14 -

p. 15

utilizați Robot alg Exit start. nts în timp ce în dreapta este liber la dreapta; . kts. nts în timp ce în dreapta peretele este jos; . kts. corect; Sus. nts deocamdată (perete în stânga și liber în sus) sau (perete în sus și liber în dreapta) sau (perete în dreapta și liber în jos) sau (perete dedesubt și liber în stânga). . dacă (perete în stânga) și (liber deasupra). . . Că. vopsea peste; Sus. . Toate. . dacă (peretele este deasupra) și (liber în dreapta). . . Că. . vopsea peste; La dreapta. . Toate. . dacă este un perete în dreapta și există spațiu liber dedesubt. . . Că. . vopsea peste; jos; . . Toate. . dacă există un perete dedesubt și există spațiu liber în stânga. . . Că. . . vopsea peste; stânga; . . Toate; . kts; con Lecția 7. Algoritmi auxiliari Când rezolvați unele probleme, este convenabil să le împărțiți în subsarcini mai mici, fiecare dintre acestea putând fi formulate ca un algoritm independent. În acest caz, este mai întâi compilat așa-numitul algoritm principal, în care apelurile la algoritmi auxiliari sunt folosite pentru a rezolva subsarcinile, care sunt adăugate ulterior. Această metodă de soluție se numește metoda de rafinare secvențială. Permite unui grup de programatori să lucreze la un proiect, fiecare rezolvându-și propria sarcină secundară. Comanda de executare a unui algoritm auxiliar se numește apel și este scrisă în corpul algoritmului principal. Într-un limbaj algoritmic, algoritmul principal este scris primul, iar cei auxiliari sunt notați pe rând. Exemplul 1. Luați în considerare situația din lecția nr. 1. Robotul trebuie mutat în celula marcată cu un punct. utilizați Robot alg Corridor start bypass; bypass; bypass; bypass; bypass con alg bypass start up; Sus; jos dreapta; jos; dreapta con - 15 -

 


Citire:



Poziția capetelor pe antenă

Poziția capetelor pe antenă

Articolul dezvăluie principalele metode de determinare a azimutului folosind o busolă magnetică și locurile de utilizare posibilă a acestuia. Utilizare...

Cum să descărcați și să configurați un asistent inteligent pentru un dispozitiv Android

Cum să descărcați și să configurați un asistent inteligent pentru un dispozitiv Android

Data actualizării: 2017-08-05 09:22:20 Ultima versiune: Compatibilitate: de la Android 4.0.3-4.0.4 - la Android 6.0 Drepturi de aplicare: Schimbarea modurilor...

Opțiuni „Peste tot acasă” și „Peste tot acasă, Rusia” MTS - descriere, cost, cum să vă conectați

Opțiuni „Peste tot acasă” și „Peste tot acasă, Rusia” MTS - descriere, cost, cum să vă conectați

Rusia ocupă o zonă imensă a planetei noastre. Mulți ruși se confruntă cu călătorii frecvente în țara lor natală: călătorii de afaceri, călătorii...

Cum să recuperați sau să resetați o parolă de utilizator Windows

Cum să recuperați sau să resetați o parolă de utilizator Windows

Dacă ați uitat brusc parola pentru contul dvs. Windows, atunci nu aveți de ales decât să căutați o modalitate de a o reseta sau de a seta...

imagine-alimentare RSS