2026. június 9., kedd

Naprendszer





---------------
import turtle
import math

# Ablak beállítása
ablak = turtle.Screen()
ablak.bgcolor("black")
ablak.title("Naprendszer szimuláció")

# A Nap
nap = turtle.Turtle()
nap.shape("circle")
nap.color("yellow")
nap.shapesize(3, 3)
nap.up()
nap.goto(0, 0)

# Bolygók adatai: név, szín, méret, távolság a Naptól, keringési sebesség
bolygok_adatok = [
    ("Merkúr", "gray", 0.3, 50, 4.7),
    ("Vénusz", "orange", 0.7, 80, 3.5),
    ("Föld", "blue", 0.8, 120, 3),
    ("Mars", "red", 0.5, 160, 2.4),
    ("Jupiter", "brown", 1.5, 220, 1.3),
    ("Szaturnusz", "yellow", 1.2, 280, 1),
    ("Uránusz", "light blue", 1.1, 340, 0.7),
    ("Neptunusz", "blue", 1.1, 400, 0.5)
]

bolygok = []
szogok = []

for nev, szin, meret, tav, seb in bolygok_adatok:
    bolygo = turtle.Turtle()
    bolygo.shape("circle")
    bolygo.color(szin)
    bolygo.shapesize(meret, meret)
    bolygo.up()
    bolygok.append((bolygo, tav, seb))
    szogok.append(0)

# Hold a Föld körül
hold = turtle.Turtle()
hold.shape("circle")
hold.color("white")
hold.shapesize(0.3, 0.3)
hold.up()
hold_szog = 0

while True:
    for i, (bolygo, tav, seb) in enumerate(bolygok):
        # Bolygók keringése a Nap körül
        x = tav * math.cos(math.radians(szogok[i]))
        y = tav * math.sin(math.radians(szogok[i]))
        bolygo.goto(x, y)
        szogok[i] += seb

        # A Hold csak a Földhöz kapcsolódik (a lista harmadik eleme, index 2)
        if i == 2:  # Föld
            x_hold = x + 30 * math.cos(math.radians(hold_szog))
            y_hold = y + 30 * math.sin(math.radians(hold_szog))
            hold.goto(x_hold, y_hold)
            
    hold_szog += 5
--------------


Nincsenek megjegyzések:

Megjegyzés küldése