2013-06-27 2 views
1

또는 1 대 1.0 또는 2 대 2.0 ...APL에서 3.0과 3의 차이점을 알 수있는 방법이 있습니까?

이상적으로 다른 동작보다 다른 동작이 있습니까?

+0

텍스트로 저장했는지 또는 숫자가 정수 또는 부동 소수점/십진수인지 여부를 나타 냅니까? – Orbling

+1

AFAIK, APL에는 실제, 복합 및 텍스트의 세 가지 비 구조 유형이 있습니다. 정수 및 부동 소수점 등이 아닌 – Orbling

+0

숫자가 정수인지 부동 소수인지 여부 ... 방법이없는 것 같습니다. 단순히 3.0을 입력하면 결과는 3입니다. 그래서 추측하고 있습니다. APL은 '.0'구성 요소가 있는지 상관하지 않습니까? –

답변

0

아니요. APL에서 3과 3.0 사이에는 차이가 없습니다.

2

APL은 실제 스토리지 유형과 같은 것을 사용자로부터 격리하려고 시도합니다. APL은 입력 한 타입의 강등 여부를 결정할 수도 있고하지 않을 수도 있습니다. 따라서 1.0을 입력하고 double을 예상하면 실제로 부울 값을 얻을 수 있습니다. 이 동작은 구현에 따라 다릅니다.

일부 APL 시스템은 데이터 표현을 위해 [] DR이라는 기능을 제공합니다. 내 Dyalog APL v.10 시스템에서

[]DR 3.0 is 83, one byte integer 
[]DR 3 is 83, one byte integer 
[]DR 1 is 83, one byte integer 
[]DR 0 is 83, one byte integer 
[]DR ~1 is 11, one bit boolean 
[]DR 3.1 is 645, double floating point 

귀하의 마일리지 및 답변은 ​​시스템마다 다를 수 있습니다.