2014-09-19 5 views
5

에서 이적 사용자 정의 단위 변환 I했습니다 다음과 같은 사용자 지정 단위 (사이비 코드) 정의 :대칭 펄

unix_days = unix_seconds/86400; 
nasa_seconds = unix_seconds - 946728000; 

이 날 직접 unix_daysunix_seconds를 변환하거나 nasa_secondsunix_seconds을 변환 할 수 있습니다.

그러나 다른 공식을 쓰지 않고 unix_daysunix_seconds 으로 직접 변환 할 수는 없습니다.

마찬가지로 nasa_secondsunix_days으로 변환 할 수 없으며 추가 수식은 입니다.

추가 기능을 쓰지 않고도 을 수행 할 수있는 영리한 Perl 서브 루틴 또는 패키지가 있습니까? 구체적으로는, 사용자 장치 변환 포장

  • 은 단위 변환 함수의 역을 신성 수. 예를 들어, f(x)=x/86400의 반대쪽은 g(y)=y*86400입니다.

  • 필요에 따라 과도기를 적용 할 수 있습니다. 예를 들어 unix_seconds = nasa_seconds + 946728000 (기능 반전에 의해) 및 unix_days = unix_seconds/86400 인 경우이를 조합하여 nasa_seconds에서 unix_days으로 직접 변환 할 수 있습니다.

이 필요한 경우 비정상적인 방법으로 변환 공식을 작성해도됩니다. 예를 들어, 화씨 섭씨과 같이 쓸 수있다 :

C to F: *1.8 +32 

이 양식은 반전하기 쉽습니다 : 단지 즉, 뒤로 역의 단계를 따르

F to C: -32 /1.8 

그런 일이 존재 하는가?

답변

5

Physics::Unit은 필요한 기능을 제공해야합니다.

+0

감사합니다. 나는 당신이 당신 자신의 단위를 정의하게 해주는 패키지가 있다는 것을 깨닫지 못했습니다. – barrycarter