LANGUAGE
日本語 English

関数名

CompareDoubleValue

定 義

long CompareDoubleValue(double val1, double val2, long digit);

戻り値

1: 不一致
0: 一致
-1: digitが9以上の場合エラーになります。

引 数

val1: 比較対象値1
val2: 比較対象値2
digit: 比較桁数(小数点以下の桁数)

概 要

val1とval2を指定された桁数で比較します。

詳 細

val1とval2を指定された桁数で比較し、一致した場合は0を、不一致の場合は1を返却します。
桁数はdigitで指定します。例えばdigitに2を設定した場合は、小数点以下2位までで比較を行います。

備考

RTX64-4.4 以降対応

前処理の候補

後処理の候補

他処理の候補

対応HW

〇PCベースコントローラ
×InterMotion

使用例


void main()
{

	double val1;
	double val2;
	long digit;
	long flag;
	int i;
	
	//test1
	val1 = 1.232;
	val2 = 1.233;
	
	Printf0("test1\n");
	
	for(i = 0; i < 6; i++)
	{
		flag = CompareDoubleValue(val1,val2,i);
	    Printf1("flag=%d\n", flag); 
	    //0 0 0 1 1 1
	}
	
	//test2
	val1 = 3.322;
	val2 = 3.233;
	
	
	Printf0("test2\n");
	
	for(i = 0; i < 6; i++)
	{
		flag = CompareDoubleValue(val1,val2,i);
	    Printf1("flag=%d\n", flag); 
	    //0 1 1 1 1 1
	}
	
	//test3
	val1 = 2323.333;
	val2 = 123.333;
	
	
	Printf0("test3\n");
	
	for(i = 0; i < 6; i++)
	{
		flag = CompareDoubleValue(val1,val2,i);
	    Printf1("flag=%d\n", flag); 
	    //1 1 1 1 1 1
	}
	
	//test4
	val1 = 0.342435341;
	val2 = 0.342435342;
	
	Printf0("test4\n");
	
	for(i = 0; i < 10; i++)
	{
		flag = CompareDoubleValue(val1,val2,i);
	    Printf1("flag=%d\n", flag); 
	    //0 0 0 0 0 0 0 0 -1
	}	
}