Mi az algoritmusa bármely programnyelvben az alábbi feladatnak?
Adva van egy űrszonda, v1 sebességgel halad egy elliptikus pályán.
1.
Írjuk meg azt a programot, amely felismeri az elliptikus pályán áthaladó v2 sebességgel haladó aszteroidaövezetet és kitér időben egy újabb elliptikus pályán ütközés nélkül, majd visszatér az eredeti útvonalra!
2. Általánosítsuk a feladatot tetszőleges objektumokra, amely az elliptikus pályán áthalad!
Természetesen felhasználható a háromdimenziós koordináta rendszer.
Igazából a kitérő egyenletre lennék kíváncsi.
Képzeljük el, hogy az űrszondában utazunk, és előttünk áthalad egy aszteroidaraj.
Az aszteroidarajt egyszerűsítsük le henger alakúra.
A hengerre és az űrszonda pályájára húzzunk egy merőleges egyenest.
Ennek az egyenesnek az irányába fogjuk kikerülni a hengert.
Ha ezt a jelenetet leegyszerűsítjük oldalnézetből 2 dimenzióra, akkor a henger metszete egy kör lesz, az űrszonda pedig legyen egy pont.
Most az a feladat, hogy a pontból olyan egyenest húzzunk, ami épphogy nem érinti a kört.
Ha az egyenes érintené a kört, akkor az az egyenes a kör érintője volna.
Megnöveljük a kör sugarát 10%-kal, hogy nagyobb kört kapjunk.
Ennek a nagyobb körnek számoljuk ki az érintő egyenesét.
Azon a ponton ahol az érintő egyenes túljutott a kör középponján, már vissza kanyarodhatunk az eredeti pálya irányába, hogy majd vissza álljunk az eredeti pályára.
Itt van a kört megkerülő algoritmus pascal forráskódja:
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!