Cuprins:

(Foarte simplu) Modelarea bolii (folosind Scratch): 5 pași
(Foarte simplu) Modelarea bolii (folosind Scratch): 5 pași

Video: (Foarte simplu) Modelarea bolii (folosind Scratch): 5 pași

Video: (Foarte simplu) Modelarea bolii (folosind Scratch): 5 pași
Video: Cum scrii când începi un caiet nou 2024, Iulie
Anonim
(Foarte simplu) Modelarea bolilor (folosind Scratch)
(Foarte simplu) Modelarea bolilor (folosind Scratch)

Astăzi, vom simula un focar de boală, fiind vorba de orice boală, nu neapărat COVID-19. Această simulare a fost inspirată de un videoclip de la 3blue1brown, la care voi face legătura. Deoarece acest lucru este drag and drop, nu putem face cât de mult putem cu JS sau Python, dar există și avantaje în utilizarea scratch-ului, deci, dacă doriți să vedeți cum să modelați un focar cu JS, puteți vedea articol pe care l-am scris despre modelarea focarelor de boală aici. Acum, să începem!

Notă: Imaginea de mai sus provine dintr-o simulare prin quantum9innovation (nu un utilizator Instructables) pe care o puteți vedea aici.

Provizii:

O să ai nevoie:

  • Un cont Scratch (vă puteți înscrie aici
  • Cunoștințe de bază despre drag and drop (dar voi continua să trec prin cod)
  • Un computer sau dispozitiv cu care puteți programa (pe care probabil îl aveți, deoarece citiți acest lucru)
  • Opțional - Urmăriți videoclipul 3b1b, vă va oferi o idee despre ceea ce programăm.

Pasul 1: Configurare de bază

Configurare de bază
Configurare de bază

Mai întâi, să creăm un proiect, să-l numim orice doriți, apoi să ștergem sprite-ul existent pe pânză. Puteți face acest lucru făcând clic pe butonul coș de gunoi de pe sprite. Acum avem o pânză goală și puteți schimba culoarea de fundal în orice doriți.

Apoi, creați un sprite nou și, în loc să utilizați un sprite existent, pictați-l pe al vostru. Fă-l un punct albastru. Acest sprite reprezintă populația susceptibilă a comunității și vom avea, de asemenea, o populație recuperată / eliminată și infectată, de unde provine numele modelului, SIR (susceptibil, infectat, recuperat / eliminat). Asigurați-vă că numiți spritul „neinfectat”.

Acum, creați un sprite nou (din nou) și denumiți-l sprite1, pe care îl vom picta și noi înșine. Intitulează-l „Sprite1” și creează 2 costume, unul ar trebui să fie un punct roșu, iar celălalt un punct gri. Faceți-le costume1 și respectiv costume2. Aceste două reprezintă populațiile infectate (punctul roșu) și recuperate / eliminate (punctul gri).

Pasul 2: Configurarea codului pentru populația sensibilă

Configurarea codului pentru populația sensibilă
Configurarea codului pentru populația sensibilă

Acum am stabilit codul populației susceptibile. Mai întâi creăm 2 variabile: persoane și infectați. Variabila „Oameni” reprezintă populația și poate fi modificată în funcție de câți oameni dorim în simularea noastră, iar simularea se va schimba în consecință. De asemenea, creăm o variabilă infectată, iar aceasta reprezintă populația care are / a avut boala. Ambele variabile ar trebui să fie variabile globale, ceea ce înseamnă că pot fi utilizate în toate spritele.

Apoi, copiați codul de mai sus în sprite neinfectat. Să mergem prin ceea ce face. Când începe programul, sprite-ul este ascuns, iar acest lucru nu trebuie să punem același cod pentru clone în sprite-ul în sine, ceea ce ajută. Apoi, setăm cele două variabile (infectate și persoane) la ceea ce dorim să fie, în acest caz, setăm infectatul la 1 și persoanele la 100. Aceasta înseamnă că începem cu o persoană care este infectată și 100 de persoane în total, fără a include persoana infectată. Apoi rulăm o buclă, care este rula cantitatea care variabila people este, în acest caz, 100. Mergem într-o poziție aleatorie și apoi creăm o clonă a spritei. Mergem într-o poziție aleatorie, deoarece în acest fel nu avem o linie de puncte care se mișcă într-o singură direcție și, în schimb, apar în poziții aleatorii.

Pasul 3: Configurarea codului pentru Sprite infectat și eliminat

Configurarea codului pentru Sprite infectat și eliminat
Configurarea codului pentru Sprite infectat și eliminat

Acum, comutați la sprite-ul "Sprite1" și apoi copiați codul de mai sus. Să o parcurgem. Când pornește programul, sprite-ul este ascuns și apoi rulează o buclă pentru suma setată la infectat. Merge într-o poziție aleatorie și creează o clonă de la sine.

Pasul 4: Completarea Codului populației sensibile

Completarea Codului populației sensibile
Completarea Codului populației sensibile

Să parcurgem lucrurile pe care trebuie să le facem:

  • Infecta
  • Mutare

Treceți la Sprite neinfectat, copiați codul de mai sus și să trecem la modul în care finalizează infectarea și mișcarea. În primul rând, merge la costumul unu și acest lucru nu este cu adevărat necesar, dar îl avem acolo, așa că, dacă decidem să adăugăm mai multe, nu trebuie să ne facem griji că schimbă costumele cu cele noi pe care le-am adăugat. Apoi, se arată. Dacă vă amintiți, am ascuns sprite-ul original, astfel încât vor fi ascunse și clonele, ceea ce nu vrem. Apoi vom rula o buclă pentru totdeauna, care va rula întregul program până când cineva face clic pe semnul de oprire pe zero. Alunecăm într-o poziție aleatorie timp de 1 secundă și apoi verificăm dacă suntem pe margine, caz în care săriem de ea. Apoi, dacă atingem culoarea roșie, atunci clonăm Sprite1 (populația infectată / eliminată) și mărim variabila infectată cu 1, urmată de ștergerea sprite-ului nostru.

Pasul 5: Finalizarea codului infectat / eliminat

Finalizarea codului infectat / eliminat
Finalizarea codului infectat / eliminat

Trecând la Sprite1, creăm o nouă listă, cronometru. Această listă va urmări cât timp este infectat un punct și, după o anumită perioadă de timp, fie moare, fie se recuperează, devine parte din populația eliminată / recuperată și este reprezentată de un punct gri, care nu poate fi reinfectat.

Copiați codul de mai sus și să îl parcurgem. Când începem ca o clonă, inserăm cantitatea totală de secunde pentru care programul rulează în lista temporizatorului și vom verifica acest lucru pentru a vedea cât timp a fost infectat și îl vom schimba pentru a fi recuperat în consecință. Ascundem lista cronometrelor și apoi schimbăm costumul clonat pe costumul infectat pentru orice eventualitate, și apoi arătăm sprite-ul nostru. Acum rulăm o buclă pentru totdeauna, în care se întâmplă mai multe lucruri: îi spunem clonei să alunece la o poziție aleatorie la fiecare secundă, verificăm dacă variabila infectată este mai mare decât populația însăși, caz în care o setăm la populație și în cele din urmă, mergem și verificăm primul articol din lista de temporizatoare pentru a vedea dacă au trecut mai mult de 5 secunde și, dacă este adevărat, trecem costumul la costumul recuperat, astfel încât să nu putem infecta, apoi ștergem articolul din temporizator.

Recomandat: