Er zijn twee manieren om een punt in een vlak voor te stellen: cartesische coördinaten en poolcoördinaten. In het eerste coördinatensysteem wordt elk punt voorgesteld door een \(x\)- en een \(y\)-coördinaat. In het tweede coördinatensysteem wordt elk punt voorgesteld door een straal \(r\) (de afstand tot de oorsprong) en een hoek \(\theta\) (de hoek tussen de verbinding met de oorsprong en de positieve -as). Het verband tussen deze twee coördinatensystemen:
figuur | formules |
---|---|
\(\begin{aligned}\left\{ \begin{array}{rcl}x&=&r\cos(\theta) \\y&=&r\sin(\theta) \end{array} \right.\end{aligned}\) en \(\begin{aligned}\left\{ \begin{array}{rcl}r&=&\sqrt{x^2+y^2} \\\theta&=&\arctan(\frac{y}{x})\end{array} \right.\end{aligned}\) |
Om deze oefening op te lossen heb je functies uit de module math nodig. Zoek de beschikbare functies op in de API1.
Je kan een lijst met functies ook in Python opvragen:
import math
help(math)
Tip: Bekijk het verschil tussen de functies atan
en atan2
. Je kan dit opzoeken in
module math2.
De invoer bestaat uit twee reële getallen, elk op een afzonderlijke regel, die respectievelijk de \(x\)- en \(y\)-coördinaat van een gegeven punt in het cartesisch coördinatensysteem voorstellen.
De uitvoer bestaat uit twee reële getallen, elk op een afzonderlijke regel, die respectievelijk de straal \(r\) en de hoek \(\theta\) van het gegeven punt in poolcoördinaten uitdrukken.
Ingegeven \((x, y) = (1, 0)\)
>>> main()
1.0
0.0
Ingegeven \((x, y) = (0, 3)\)
>>> main()
3.0
1.5707963267948966
main()
.>>>
) gebruikt voor de aanroep van main()
. De uitvoer van het programma staat op de volgende lijnen tegen de linkerkantlijn.