Raku의 atan2 — 두 인자를 받는 아크탄젠트
Raku의 atan2 — 두 인자를 받는 아크탄젠트
수학 문헌이나 다른 언어에서 익숙한 atan2(y, x)를 Raku에서도 그대로 쓸 수 있어요. 두 좌표를 받아 그 벡터가 x축과 이루는 각도(θ)를 라디안으로 돌려주는 2-인자 아크탄젠트예요.
sub atan2($y, $x = 1e0)
method atan2($x = 1e0)
서브 형식은 보통 다른 언어·수학 문헌처럼 두 인자로 쓰는 게 명확해요. 하지만 한 인자 형태도 있는데, 그 결과는 항상 atan의 결과와 같아요.
say atan2 3, 1; # OUTPUT: «1.2490457723982544»
say atan2 3; # OUTPUT: «1.2490457723982544»
say atan2 ⅔, ⅓; # OUTPUT: «1.1071487177940904»
메서드 형식은 self와 단일 인자를 Numeric으로 강제해서, 그 둘로 2-인자 아크탄젠트를 라디안 단위로 계산해요.
say 3.atan2; # OUTPUT: «1.24904577239825»
say ⅔.atan2(⅓); # OUTPUT: «1.1071487177940904»
메서드든 서브든 $x 인자는 기본값이 1이에요. 그래서 두 단일 인자 경우 모두, 함수는 x축과 원점(0,0)에서 점(3, 1)으로 가는 벡터가 이루는 각도 θ를 라디안으로 돌려줘요.
본문
- 두 좌표
$y,$x로 2-인자 아크탄젠트를 라디안으로 계산해요. $x기본값은 1이라 한 인자 형태는 항상atan과 같은 결과를 내요.- 메서드 형식은 self와 단일 인자를
Numeric으로 강제해 같은 계산을 해요.