digitSumディジットサム関数

本ページには広告が含まれています。

引数に指定した数字和(数値の各桁を足した結果)を返します。正の整数以外を指定した場合は、エラー値を返します。

構文
  1. Integer = digitSum( num )
引数
num 必須
数値(正の整数)
戻り値
各桁の数値の和

プログラム

UWSC
//////////////////////////////////////////////////
// 【引数】
//   num : 数値(正の整数) 
// 【戻り値】
//   
//////////////////////////////////////////////////
FUNCTION digitSum(num)
	DIM res = 0
	IFB VARTYPE(ABS(num, VAR_DWORD)) = num THEN		// 正の整数ならば
		FOR n = 1 TO LENGTH(num)
			res = res + VAL(COPY(num, n, 1))
		NEXT
	ELSE
		res = ERR_VALUE
	ENDIF
	RESULT = res
FEND

プログラム実行例

各桁の和を求める

458の各桁の和(=4+5+8)を求める。

UWSC
PRINT digitSum(458)

//////////////////////////////////////////////////
// 【引数】
//   num : 数値(正の整数) 
// 【戻り値】
//   
//////////////////////////////////////////////////
FUNCTION digitSum(num)
	DIM res = 0
	IFB VARTYPE(ABS(num, VAR_DWORD)) = num THEN		// 正の整数ならば
		FOR n = 1 TO LENGTH(num)
			res = res + VAL(COPY(num, n, 1))
		NEXT
	ELSE
		res = ERR_VALUE
	ENDIF
	RESULT = res
FEND
結果
プレーンテキスト
17
使用関数

関連記事

ABS関数 (スクリプト関数)
引数の絶対値を求めます。
ARCCOS関数 (スクリプト関数)
引数の逆余弦を求めます。
CEIL関数 (スクリプト関数)
正の方向へ切り上げた数値を返します。
LN関数 (スクリプト関数)
自然対数を求めます。
LOGN関数 (スクリプト関数)
常用対数を求めます。
ZCUT関数 (スクリプト関数)
マイナス値を0にして返します。プラス値はそのままの値を返します。
isOdd関数 (自作関数)
奇数かどうか調べます。
radToDeg関数 (自作関数)
弧度法から度数法に変換します。
degToRad関数 (自作関数)
度数法から弧度法に変換します。
ARCSIN関数 (スクリプト関数)
引数の逆正弦を求めます。