repeat

ループの始まりの場所を示す

repeat p1,p2

p1=1~(-1) : ループ回数
p2=0~(0)  : システム変数cntのスタート値

解説

repeatloopの間をくり返し実行します。
repeat命令は、くり返しの開始地点を示します。
loop命令は最後に通過したrepeat命令まで戻ります。つまり、

	repeat 5
		print "やっほー"
	loop

のようなプログラムは、「やっほー」を5回表示します。
repeat命令のパラメータ、p1でくり返しの回数を指定することができます。回数の指定を省略、またはマイナス値を指定すると無限ループになります。
繰り返しの回数が0の場合は、繰り返し部分は実行されず対応する loop命令までジャンプします。

repeatloopを含む部分をさらにループさせるネスト構造も記述することができます。ただし、正常にloop命令を通ってループしないで抜けたりすると、ネスト構造がおかしくなるのでループから強制的に抜けるような構造にはしないようにしてください。

ループ回数を調べたい時や、カウンターを利用したい時のためにシステム変数cntを参照することができます。cntは通常、0からスタートして、 loop命令でループするたびに1づつ増えていきます。
ただし、repeat命令のp2でカウンタがスタートする数値を変更することも可能です。たとえば、repeat 3,1 のように指定した場合には、変数cntの値は1,2,3の順で変化します。

ループの内部で、強制的にループを抜け出す場合には、 break命令を使用してください。また、ループをやり直すためのcontinue命令も用意されています。

関連項目

loopループの始まりに戻る
breakループから抜ける
continueループをやり直す
foreach変数の要素数だけ繰り返す

サンプル逆引き (185)

addline.hsp
aplkey3.hsp
arraynote.hsp
atan_grect.hsp
base64test.hsp
block3.hsp
block3.hsp
block3.hsp
button_test.hsp
calcsheet.hsp
cl_dirlist.hsp
client2.hsp
clipset.hsp
cnvsrc.hsp
comtest3.hsp
comtest4.hsp
comtest8.hsp
defcfunc.hsp
demo.hsp
dirinfo.hsp
dragdrop.hsp
ease_test1.hsp
ease_test1.hsp
ease_test2.hsp
ease_test2.hsp
ease_test3.hsp
elastic.hsp
elm2d_edit.hsp
emath.hsp
emath2.hsp
emit_sample1.hsp
emit_sample3.hsp
facedetect.hsp
facemove1.hsp
facemove2.hsp
fullscr.hsp
fxinfo.hsp
gblur.hsp
getenv.hsp
getxls.hsp
gradf.hsp
grect.hsp
groll.hsp
grotate.hsp
grotate.hsp
gsquare.hsp
gsquare.hsp
hidmon_test2.hsp
hsplogo.hsp
hsptv_test.hsp
hsptv_test.hsp
hsptv_test2.hsp
hsptv_test3.hsp
hsptvapp_test.hsp
hsv.hsp
htcopy1.hsp
htcopy2.hsp
kick.hsp
line.hsp
makeavi.hsp
map1.hsp
map2.hsp
mapedit.hsp
mapmove1.hsp
mapmove2.hsp
memnote.hsp
meshmap.hsp
meshmap2.hsp
meshmap3.hsp
meshmap4.hsp
meshmap5.hsp
meshmap6.hsp
meshmap7.hsp
mkfont.hsp
mkpack.hsp
modfunc.hsp
modvar.hsp
mouse2.hsp
mtouch.hsp
multitouch2.hsp
multitouch3.hsp
note1.hsp
noteadd.hsp
obaqme.hsp
objsort.hsp
omedetai.hsp
pipe.hsp
poker.hsp
putimg.hsp
regtest2.hsp
sample1.hsp
sample2.hsp
sample3.hsp
sample4.hsp
sample_01_basic.hsp
sample_01_basic_bbs.hsp
sample_02_basic.hsp
sample_02_memolite.hsp
sample_03_basic.hsp
sample_03_vram_blob.hsp
sample_04_d3lineto.hsp
sample_05_DrawText.hsp
sample_05_particle_basic.hsp
sample_06_snow_night.hsp
sample_06_TransMode.hsp
sample_07_snow_white.hsp
sample_08_ball.hsp
sample_09_imagetest.hsp
sample_09_toge.hsp
sample_13_d3texture_div.hsp
sample_14_d3ribbonto.hsp
sample_15_d3wincx.hsp
sample_16_d3setlocal.hsp
sample_17_d3setlocal_shadow.hsp
sample_18_poly_particle.hsp
sample_19_getmouse.hsp
sendmail.hsp
server2.hsp
settex.hsp
shoot.hsp
split.hsp
starmove.hsp
stars.hsp
tamane1.hsp
tamane2.hsp
tamane4.hsp
test1.hsp
test1.hsp
test1.hsp
test1.hsp
test1.hsp
test10.hsp
test10.hsp
test11.hsp
test12.hsp
test12.hsp
test13.hsp
test13.hsp
test2.hsp
test2.hsp
test2.hsp
test2.hsp
test2.hsp
test2.hsp
test3.hsp
test3.hsp
test3.hsp
test3.hsp
test3.hsp
test4.hsp
test4.hsp
test4.hsp
test5.hsp
test5.hsp
test5.hsp
test5.hsp
test6.hsp
test7.hsp
test7.hsp
test7.hsp
test7.hsp
test8.hsp
test8.hsp
test8.hsp
test9.hsp
test9.hsp
tile.hsp
twitter_timeline.hsp
usbiotest.hsp
volsamp.hsp
vtest2.hsp
wave.hsp
winobj.hsp
xsample_alphapaint.hsp
xsample_alphastg.hsp
xsample_amano.hsp
xsample_Astro.hsp
xsample_diamond.hsp
xsample_gcube.hsp
xsample_gcube.hsp
xsample_gimbal.hsp
xsample_Rocket.hsp
xsample_shiraho.hsp
xsample_verge.hsp
yopparai.hsp

情報

バージョン3.4
作成日2013/12/09
著作者onitama
URLhttp://hsp.tv/
備考ver3.4標準命令
タイプ内蔵命令
グループプログラム制御命令
対応環境
  • Windows 版 HSP
  • コマンドライン版 HSP
  • HSPLet
hs ファイルhsphelp\i_prog.hs