ホーム ] PC技術/システム技術 ] VB.NETプログラミング ] なるほどナレッジ ] インフォメーション ]

上へ
関数共通仕様
システム変数
定数
符号変換
関係演算
丸め演算
加減算
乗算
除算/逆数
整数除算/剰余算
平方根/立方根
階乗算
指数関数
対数関数
三角関数
逆三角関数
双曲線関数
逆双曲線関数
階乗評価関数
級数評価関数
ニュートン評価関数
演算時間評価関数

UltraMath

関係演算

最終更新日:2006/05/08 関数追加

●概要

 関係演算、つまり、大小比較や、範囲判定、一致程度の検証を行う。

●関数仕様

○比較演算

Comp(ByRef A As UltraLong, ByRef B As UltraLong) As ULRelation
Comp(ByRef A As Object, ByRef B As Object) As ULRelation

 A と B の大小を比較し、ULRelationを返す。A を基準とする。

 ULRelationは、Enum ULRelation にて以下のように表される。

LessThan          小さい(A < B)
Equal                同じ  (A = B)
GraterThan       大きい(A > B)
NA                   比較不能

IsEqual(ByRef A As UltraLong, ByRef B As UltraLong) As Boolean
IsEqual(ByRef A As Object, ByRef B As Object) As Boolean

 A と B を比較し、等しければ、True を返す。

○範囲判定

 数値範囲を指定し、その範囲に入っているかどうかを判定する。

IsBetween(ByRef A As UltraLong, ByRef B As UltraLong, ByRef C As UltraLong) As Boolean
IsBetween(ByRef A As UltraLong, ByRef B As Object, ByRef C As Object) As Boolean

 境界値を含まない判定となる。B、C の順序は任意。

 B ≦ C: B < A < C であれば、True を返す。以外はFalse.
 B > C: C < A < B であれば、True を返す。以外はFalse.

IsWithin(ByRef A As UltraLong, ByRef B As UltraLong, ByRef C As UltraLong) As Boolean
IsWithin(ByRef A As UltraLong, ByRef B As Object, ByRef C As Object) As Boolean

 境界値を含む判定となる。B、C の順序は任意。

 B ≦ C: B ≦ A ≦ C であれば、True を返す。以外はFalse.
 B > C: C ≦ A ≦ B であれば、True を返す。以外はFalse.

○一致演算

HowEqual(ByRef A As UltraLong, ByRef B As UltraLong) As Integer

  A、Bの値が、どの程度頭から一致しているかを返す。戻り値は、

  • -1   符号、指数部などが異なり、全く違う値であった。
     
  • 0    符号、指数部は同じであるが、一致する桁はなかった。
     
  • 1以上 符号、指数部は同じで、頭からその数だけ桁が一致していた。

<注意>

 この関数では、例えば、0.5 と、0.4999999999・・・・・・・・999999 を比較しても、回答は0となってしう。このような場合は、次の関数を使用する。

Difference(ByRef A As UltraLong, ByRef B As UltraLong) As Integer

 A - B を演算し、その差の指数部を返す。この演算は、Subt(A, B).Exponent と同じ。