연습문제: 도형
3차원 도형을 위한 몇 가지 유틸리티 함수를 만들어 보겠습니다. 3차원 상의 한 점을 [f64;3]
으로 나타내도록 합니다. 함수 서명은 개발자가 결정합니다.
// 해당 좌표의 제곱을 더하고 // 제곱근을 사용하여 벡터의 크기를 계산합니다. `v.sqrt()`와 같은 `sqrt()` 메서드를 사용하여 제곱근을 // 계산합니다. fn magnitude(...) -> f64 { todo!() } // 벡터의 크기를 계산하고 모든 좌표를 해당 크기로 나눠서 // 벡터를 정규화합니다. fn normalize(...) { todo!() } // 다음 `main`을 사용하여 작업을 테스트합니다. fn main() { println!("단위 벡터의 크기: {}", magnitude(&[0.0, 1.0, 0.0])); let mut v = [1.0, 2.0, 9.0]; println!("{v:?} 크기: {}", magnitude(&v)); normalize(&mut v); println!("정규화 후 {v:?}의 크기: {}", magnitude(&v)); }