数値にも整数型と実数型の2つの型があります。 これは引数に使うのが実数型変数か整数型変数かで変わってきます。 例えばこの自作関数X2をDEF外においてB=X2(A%)として使用した場合にはDEF内のローカル変数Aは整数型変数として処理されB=X2(A#)として使用した場合には実数型変数として処理されます。(OPTION DEFINTを使用してない場合はデフォルトの変数は実数型となる) では、変数ではなく定数でこの関数を使用した場合の挙動はどうなるかというとX2(1)だとローカル変数Aは整数型、X2(1.0)だと実数型となります。現在は2倍する関数なので戻り値はどちらも2ですが、戻り値を1.5倍するようにA=A*1.5に変更した場合はX2(1)は1を返し、X2(1.5)は1.5を返します。