書式
integerp(数/式)
で用い、「数/式」が整数なら true を、整数以外なら false を返す。
(%i1) integerp(5); (%o1) true (%i2) integerp(5.0); (%o2) false (%i3) integerp(2/3+1/3); (%o3) true (%i4) integerp(x/x); (%o4) true (%i5) integerp(a); (%o5) false
関数 sqrt と組み合わせると、完全平方数か否かを判定できる。
(%i6) integerp(sqrt(100)); (%o6) true (%i7) integerp(sqrt(10)); (%o7) false
補足 linearalgebra.mac には非負整数か否かを判定する関数 nonnegintegerp も用意されている。
(%i8) load(linearalgebra)$ (%i9) nonnegintegerp(0); (%o9) true (%i10) nonnegintegerp(10); (%o10) true (%i11) nonnegintegerp(-10); (%o11) false