本帖最后由 weichenxiehou 于 2012-6-15 00:47 编辑
用gawk来应该还是比较方便:- BEGIN{FS="/";printf "input:"}
- {
- ok=0
- if($1 !~ /[0-9]+/ || $2 !~ /[0-9]+/)
- {print "illegal input!";printf "input:";next}
- for(i=($1<$2?$1:$2);i>1;i--)
- if($1%i==0 && $2%i==0)
- {ok=1;printf("result:%d/%d\n",$1/i,$2/i);break}
- if(ok==0) printf("result:%d/%d\n",$1,$2)
- printf "input:"
- }
复制代码
|