%macro run_cycle(first_month,num_cycle,J_month,K_month);
%do t=1 %to &num_cycle;
%let x=&first_month+(&t-1)*3;
%if %eval(&x/100)-(int(&x/100)))>0.12 %then
%let month_cycle=&first_month+(&t-1)*3+100-12;
%else
%let month_cycle=&first_month+(&t-1)*3;
我在运行上面的IF语句时,提示 ERROR: 在需要数值操作数的 %EVAL 函数或 %IF 条件中发现字符操作数。条件是: %eval(&x/100)-(int(&x/100)))>0.12
这是为什么,哪个数字是字符型?怎么解决