Acesta intrebare ne cere sa cream un cuib in centrul lumii Va avea in jur de noua puncte/petice si-l vom colora in portocaliu Mergeti in Code si adaugati o noua variabila "turtles" In prima linie ce contine turtles-on, vom adauga intre paranteze "return-to-nest" Semnul intrebarii la sfarsit Apoi vom crea un nou patch cuib Asadar, tastati "patches-on" deschideti paranteza si apoi "nest?" si inchideti paranteza Acum trebuie sa adaugam cateva linii procedurii "set up" In comanda "ask turtle" vom introduce "set return-to-nest?" ca fiind fals Daca nu facem asta NetLogo va seta automat orice variabila noua ca adevarata/true Acum vom adauga o noua linie ce va deveni o noua procedura si o vom denumi "set up nest" Pentru a adauga aceasta procedura incepeti prin a adauga "to" si continuati cu "set-up-nest" si apoi "ask patches" ce ne pune in contextul patchurilor Setam variabila "nest?" ca adevarata ori de cate ori un petic este la o distanta de 2 fata de origine Iar pentru asta vom scrie intre paranteze "distancexy 0 0" mai mic dcat 2 Si urmatoarea linie, daca un petic indeplineste acel criteriu/"if nest? true" Atunci seteaza "pcolor" sa fie portocaliu Inchideti paranteza Si intotdeauna incheiati o procedura cu "end" Sa vedem daca functioneaza Aceasta paranteza nu a fost inchisa. Am uitat o paranteza. O s-o adaug Sa vedem daca acum merge. Pare in regula Mergem in interfata, apasati butonul "set up" si puteti vedea ca este in centru E greu de spus daca sunt intr-adevar 9 petice dar presupun ca sunt Acum avem un cuib portocaliu in centrul lumii Urmatorul lucru care ni se cere este sa scriem un cod care va face ca furnicile sa se intoarca la cuib dupa ce mananca si inainte de a porni din nou Sunt multe moduri in care se poate face asta Eu am optat pentru urmatorul Mai intai as dori sa simplific putin procedura "to go" Asadar, voi crea o noua procedura si o voi denumi cauta mancare/"look for food" Voi copia aceasta sectiune cu cut, voi scrie o noua linie de procedura dupa care voi adauga sectiunea taiata Si acum ne vom intoarce la procedura "to go" si vom introduce "ifelse return-to-nest?" este fals atunci cauta mancare/"look-for-food" Si bineinteles, daca "ifelse return-to-nest?" este adevarat atunci se vor intoarce la cuib. Inca nu am am scris procedura "return-to-nest" Asa ca o vom face acum Totusi, inainte de a face asta, ar fi o idee buna sa verificam codul de eventuale greseli Asa ca apasam butonul "check" Si ne anunta ca nu avem inca o procedura "return-to-nest" Deasemeni, observ ca am uitat un semn de egal in aceasta linie asa ca-l voi introduce acum Si voi incepe si scrierea procedurii "return-to-nest" Pentru asta vom scrie "face patch 0 0" care reprezinta peticul de origine Mergi inainte 1/"fd 1" Asta va face ca orice furnica care are variabila "return-to-nest?" adevarata sa se intoarca catre peticul de origine si sa se deplaseze un petic in acea directie Apoi vrem sa le facem sa porneasca din nou daca sunt la cuib Deci, daca culoarea peticului va fi portocalie, adica furnica s-a intors la cuib atunci vom seta "return-to-nest?" ca fals pentru ca este deja acolo Inchidem paranteza Pana acum nu avem nici o furnica care s-a intors la cuib/"return-to-nest?" ca adevarata Asa ca va trebui s-o facem Dupa ce au mancat mancarea vom seta "return-to-nest?" ca adevarat Vom verifica codul Pare in regula Mergem inapoi in interfata, apasam "set up" si "go" Sunt destul de multe furnici si e greu sa vedem ce fac fiecare Asa ca vom reduce numarul de furnici Si vom incerca din nou O sa-l incetinim putin O sa observati ca furnicile se comporta asa cum ar trebui Mananca si se intorc la cuib inainte de a porni din nou Putem schimba culoarea inapoi la rosu pentru a face totul mai evident dar o vom lasa pentru mai tarziu