X

年月日から経過日数を算出する2

前回のコードから、計算速度向上の為に、2011年からの計算開始変更
なので、2011年以前の経過日数の算出は不可能です
※FlashLite1.1用

また、閏年の計算等で色々間違っていたので修正

// arg_1 Year
// arg_2 Month
// arg_3 day

function_ret_1 = 0;
tmp_4 = 0; //閏年フラグ
//trace(‘ ‘);
function_ret_1 += 734138; //2010/12/31の日数
for( tmp_1 = 2011; tmp_1 < arg_1; tmp_1 ++ ){
tmp_2 = 365;
tmp_4 = 0;

if( tmp_1 % 4 == 0 ){
//閏年
tmp_2 = 366;
tmp_4 = 1; //閏年フラグ

if( tmp_1 % 100 == 0 ){
//100で割れるので平年
tmp_2 = 365;
tmp_4 = 0; //閏年フラグ

if( tmp_1 % 400 == 0 ){
//400で割れるので閏年
tmp_2 = 366;
tmp_4 = 1; //閏年フラグ
}
}
}

function_ret_1 += tmp_2;
}

tmp_4 = 0;
if( arg_1 % 4 == 0 ){
tmp_4 = 1;
if( arg_1 % 100 == 0 ){
tmp_4 = 0;
if( arg_1 % 400 == 0 ){
tmp_4 = 1;
}
}
}

for( tmp_1 = 1; tmp_1 < arg_2; tmp_1 ++ ){
tmp_2 = eval( ‘define_month_’ add tmp_1 );
if( tmp_4 == 1 && tmp_1 == 2 ) {
tmp_2 += 1;
}
function_ret_1 += tmp_2;
}

function_ret_1 += arg_3;

健巳: