在以下程序中,填写声明,以便程序在距离达到250英里或使用10加仑燃料时停止生成观测值。
Data work.go259;
set perm.cars;
do gallons = 1 to 10 .....;
Distance= gallons*mpg;
output;
end;
run;
正确的答案是&#34;加仑= 1到10而(距离<250)&#34; 但我想知道为什么&#34;加仑= 1到10直到(距离= 250)不正确?我假设当距离= 250时,do循环将停止,因此程序将在距离达到250时停止生成观察结果。
答案 0 :(得分:0)
据了解,您希望有条件地打破循环。两个简单的方法是离开和转到(谈论过去的爆炸。^^)这里有两个例子。还有命令继续,但还没有测试过。
Data test_goto;
do gallons = 1 to 10;
Distance= gallons*75;
output;
if distance >=250 then goto hop_Out;
end;
hop_Out:
run;
Data test_leave;
do gallons = 1 to 10;
Distance= gallons*75;
output;
if distance >=250 then leave;
end;
run;