whileによる繰り返し処理
繰り返し処理 for の他に、whileを使用した繰り返し処理の計算方法があります。
繰り返し処理をする場合、ループ回数を指定するのではなく、ある条件になったとき繰り返しを終了させたい場合があります。そのような場合に使用すると便利である。Whileの一般形式は
while 条件式
実行文など
End
のようになります。
whileと ifによる分岐
例として、kが1から始まりその和wが100より大きくなった場合に計算を和と繰り返し回数を表示して終了することにします。以下のようなプログラムを実行すると得られます。
1. k=1; w=0;
2. while k
3. if w <= 100 then 4. w=w+k; 5. else 6. break; 7. end 8. k=k+1; 9. end 10. w, k
回数をカウントするKの初期値は1、カウントの和wの初期値はゼロとして計算します。wの和が100いあkの場合には繰り返して計算をし、それを超えたらbreakでるうぷから抜け出します。
wの値が105の時にループを抜け出します。
whileと論理演算子
配列のi番目のデータが60より小さく且つ、iが40より小さい場合にその和を求めることにします。
1. i=1;
2. w=0;
3. x=[ 1: 2:100 ];
4. while ( (x(i) < 60 ) & ( i < 40)) 5. w=w+x(i) 6. i=i+1; 7. end 8. w,i
xの配列は1から100の数を2刻みで作成します。
xの配列の数字が60より小さく、かつiが40より小さい場合には、繰り返し処理をします。
i=i+1
でiは増加します。
w和が900でカウントが31になった時に終了します。
論理演算しの使い方も納得いただけたかと思います。色々と組み合わせて、プログラムを作ってみてください。
関連記事
-
行列 3行3列の表示 |scilab入門
行列 Bが3行3列の場合 行列 が であるとします。これをscilabで表す場 …
-
行列に関係演算子を用いた計算とは|scilab入門
行列の要素ごとに関係演算子を適用して無ることにします。 次のような記号を関係演算 …
-
複数の色を用いてグラフを描く plot2d
ヒトツノウインドウにラインの色を変化させて、数個のグラフを重ねて表示することにし …
-
べき乗 ^|scilab入門
べき乗の計算には ( ^ )を使います。 2の8乗についての計算は次のようになり …
-
関数のオンライン定義 deff を使ってみる!
関数のオンライン定義を用いると、数式だけを呼び出して計算ができます。 関数 fu …
-
小数点以下切り上げ ceil | scilab入門
小数点以下切り上げる場合には、ceil を満ちいます。 例えば 0.5 の場合 …
- PREV
- ifによる分岐と関係演算子・論理演算子
- NEXT
- 関数のオンライン定義 deff を使ってみる!