Science >> Wetenschap >  >> Zonsverduistering

Hoe maak je een zonnestelsel in MSWlogo?

`` `MSLOGO

; Definieer de planeten en hun eigenschappen

naar planeet:Naam:Grootte:Kleur:Afstand:Orbitspeed

setPos [0 0]

stoot

Vooruit:afstand

pendel

setheading 0

Herhaal 360 [

Voorwaartse:maat * 0,5

Terug:maat * 0,5

Rechts:Orbitspeed

]

setheading 0

Voorwaartse:maat * 0,5

stoot

Terug:maat * 0,5

pendel

Setheading:Orbitspeed

Voorwaartse:maat * 0,5

stoot

Terug:maat * 0,5

pendel

setheading 0

cirkel:maat

stoot

setPos [0 0]

pendel

setheading 0

Vooruit:afstand

pendel

Setheading:Orbitspeed

cirkel:maat

stoot

setPos [0 0]

pendel

Label:naam

stoot

setPos [0 0]

pendel

setheading 0

einde

; Teken de zon

cirkel 50

setheading 0

stoot

vooruit 50

pendel

setheading 0

Label "Sun"

stoot

setPos [0 0]

pendel

; Trek kwik

Planet "Mercury" 5 "Gray" 70 2

; Teken Venus

Planet "Venus" 8 "Yellow" 90 1.5

; De aarde trekken

Planet "Earth" 10 "Blue" 110 1

; Teken Mars

Planet "Mars" 7 "Red" 130 0.8

; Teken Jupiter

Planet "Jupiter" 20 "Orange" 160 0,5

; Saturnus trekken

Planet "Saturn" 18 "Yellow" 200 0.3

; Teken uranus

Planet "Uranus" 15 "lichtblauw" 250 0,2

; Neptunus tekenen

Planet "Neptune" 14 "Dark Blue" 300 0,15

`` `

Verklaring:

1. `Planet` Procedure: Deze procedure definieert de eigenschappen van de planeet:

- `:name`:Naam van de planeet (gebruikt voor het labelen).

- `:size`:grootte van de planeet in pixels.

- `:Color`:kleur van de planeet.

- `:afstand ':afstand van de zon in pixels.

- `:orbitspeed`:snelheid van de baan in graden per stap (regelt hoe snel de planeet beweegt).

2. De zon tekenen:

- `Circle 50` trekt de zon als een cirkel met een straal van 50 pixels.

- `Setheading 0` zet de richting van de schildpad op 0 graden (horizontaal).

- `Penup` tilt de pen op om tekenen te voorkomen tijdens het bewegen.

- `Vooruit 50` verplaatst de schildpad van 50 pixels naar rechts naar voren.

- `Pendown` zet de pen neer om te beginnen met tekenen.

- `Setheading 0` zet de richting van de schildpad weer op 0 graden.

- `Label" Sun "` schrijft het label "Sun" op de huidige positie.

- `Penup` tilt de pen op om naar de oorsprong te gaan.

- `setPos [0 0]` stelt de schildpad terug op de oorsprong.

- `Pendown` zet de pen neer om te tekenen.

3. De planeten tekenen:

- Voor elke planeet wordt de 'planeet' -procedure met de juiste eigenschappen aangeroepen.

- De lus `Herhaal 360` tekent het baanpad.

- In de lus beweegt de schildpad naar voren en naar achteren, waardoor een klein lijnsegment ontstaat.

- `rechts:orbitspeed` roteert de schildpad door de baansnelheid, waardoor de planeet in een cirkel bewoog.

- De planeet wordt getekend met de opgegeven kleur en grootte.

De code uitvoeren:

1. Sla deze code op in een bestand met de naam "Solar_system.lg" (of een andere naam).

2. Open MSWLogo en laad het bestand door te typen "Solar_system.lg" ``.

3. Voer de code uit door 'run' te typen '.

Dit zal een basis visuele weergave van het zonnestelsel creëren. U kunt de code wijzigen om de kleuren, maten, afstanden en baansnelheden van de planeten aan te passen. U kunt ook extra functies toevoegen, zoals manen, kometen of asteroïden.