Python programozás gondolatmenetben tudnátok segíteni?
Szóval a gyakorlat az lenne, hogy több 'golyó' legyen a vászon, melyek össze vissza gurúlnak, de ha össze ütköznek lepattanjanak egymásról (nyílván a falról is le kell, hogy pattanjanak). Namost nekem sikerült egy müködő programot írnom 2 golyóra, de annak a vizsgálatát, hogy összemennek-e szerintem túl bonyolítom, meg talán magát az egész programot. Tudnátok segíteni, hogy jó-e a gondolatmenetem, mert otthon tanúlgatok egyedül, és soha nem mondja meg senki, hogy mit lehetne rövidebben, gyorsabban, egyszerűbben... Remélem tudtok segíteni :)
Itt lenne érdemes kicsit objektum orientáltan gondolkozni és csinálni egy golyó osztályt, majd mindet ebből példányosítani.
Ha ezt még nem érted az nem baj, nézz utána a Python class-oknak.
Körök ütközése helyett te a befoglaló négyzetet vizsgálod, amennyire nézem, és még azt is rosszul. Ez nem feltétlenül rossz közelítés általában, de itt az, hiszen kevés kör pontos(abb) ütközését szeretnénk.
Először is, két kör akkor ér össze, ha a középpontjuk távolsága kisebb, mint a sugaruk összege. A távolság pithagorasz tétellel számolható, de egyszerűbb, ha négyzetre emeled a sugarak összegét, akkor nem kell gyököt vonni a távolságból. Mivel a gyökvonás szigorúan monoton függvény, ebből nincs gond.
Az, hogy egy kör egy síkról/egyenesről merre pattan, azt ugye a beérkezés szögének a tükrözése adja meg. Körök ütközésénél nincsenek síkok, de odaképzelhetsz egyet. Ez persze nem lesz tökéletes, mert a sebességek nem fognak változni, ami ellentmond a fizikának, de ennyit azt hiszem engedhetünk kezdőként.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!