다트 게임에서 다트를 한 번 던졌을 때 얻는 점수를 계산해요.
다트는 플레이어가 과녁을 향해 다트를 던지는 게임이에요.
우리가 하는 게임에서 과녁은 다트가 어디에 꽂히느냐에 따라 네 가지 서로 다른 점수를 줘요:
바깥쪽 원의 반지름은 10단위이고(이는 과녁 전체의 반지름과 같아요), 가운데 원의 반지름은 5단위, 안쪽 원의 반지름은 1단위예요. 물론 세 원은 모두 같은 점을 중심으로 해요. 즉, 이 원들은 (0, 0) 좌표로 정의되는 동심원이에요.
과녁 위의 한 점(데카르트 좌표 x와 y로 정의되며, x와 y는 실수)이 주어졌을 때, 다트가 그 점에 꽂혔을 때 얻는 올바른 점수를 계산해요.
점수판 이미지는 habere-et-dispertire가 Inkscape를 사용해 만들었어요.
| 레지스터 | 용도 | 타입 | 설명 |
|---|---|---|---|
$a0 |
입력 | 정수 | x |
$a1 |
입력 | 정수 | y |
$v0 |
출력 | 정수 | 획득한 점수 |
$t0-9 |
임시 | 모든 값 | 임시 저장에 사용 |
Exercism에 가입하고 MIPS Assembly 트랙을 연습 문제 70개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.