連続して変わる数値の繰り返し処理を入れ子で実行する(double loop)
この記事の内容は以下のwebサイトを参考にしました。
Double loops
まずは単純な例。iの部分が1から3まで変わっていき,
計算結果がそれぞれ出力されます。
このように1+1,1+2,1+3の計算結果が出力されました。
これを,式の部分もテキストとして表示したいときには,
localマクロを使います。式の部分はiがそのまま変わる
だけですが,答えの部分がiとは異なるためです。ここでは
答えの部分をsumと置いています。
次は,入れ子構造のloopです。具体的には,式の1+の部分も数値を
増やしていきたいときの場合です。この方法は,double loopまたは
nested loopと呼ばれるみたいです。
関連記事として,たくさんの変数に同じ処理を繰り返したいとき も参照
変更履歴
20150507 題名修正
Double loops
まずは単純な例。iの部分が1から3まで変わっていき,
計算結果がそれぞれ出力されます。
forvalues i=1/3{
display 1+`i'
}
display 1+`i'
}
2
3
4
このように1+1,1+2,1+3の計算結果が出力されました。
これを,式の部分もテキストとして表示したいときには,
localマクロを使います。式の部分はiがそのまま変わる
だけですが,答えの部分がiとは異なるためです。ここでは
答えの部分をsumと置いています。
forvalues i=1/3{
local sum=1+`i'
display "1+`i'=`sum'"
}
local sum=1+`i'
display "1+`i'=`sum'"
}
1+1=2
1+2=3
1+3=4
次は,入れ子構造のloopです。具体的には,式の1+の部分も数値を
増やしていきたいときの場合です。この方法は,double loopまたは
nested loopと呼ばれるみたいです。
forvalues i=1/3{
forvalues j=1/3{
local sum=`i'+`j'
display "`i'+`j'=`sum'"
}
}
forvalues j=1/3{
local sum=`i'+`j'
display "`i'+`j'=`sum'"
}
}
1+1=2
1+2=3
1+3=4
2+1=3
2+2=4
2+3=5
3+1=4
3+2=5
3+3=6
関連記事として,たくさんの変数に同じ処理を繰り返したいとき も参照
変更履歴
20150507 題名修正