プチコン3号 SmileBASIC コミュニティ投稿ウッノ uxtuno2014/12/16 21:45:16switch的な処理でちょっと思い付いた方法 ちゃんと動いてそうです4そうだね 5返信プレイ済み2017/11/04 00:57:09に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿bigslope bigslope2014/12/17 1:26C言語のcase文は、最後にコロンを付ける事でラベル扱いにして、内部的にgoto文で飛ばしているんじゃないかって気がします。 そう考えると、これも同じ考え方ですね。1そうだね プレイ済み2017/11/04 00:57:09に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿たくや joniosan2014/12/20 18:34ON 変数 GOTO @ラベル,@ラベル,… というものがありまして…0そうだね プレイ済み2017/11/04 00:57:09に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿ウッノ uxtuno2014/12/20 19:56>>たくや さん ON ~ GOTO ですとBREAKさせるのにラベルが必要なんですよね それに「変数がある値の時の処理」って書けないんじゃないですか? まあ、このプログラムはswitchと同じようにbreakで抜けられることを面白く思い作ったものなので 実際は他の方法で分岐した方がいいかもしれませんね0そうだね プレイ済み2017/11/04 00:57:09に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿bigslope bigslope2014/12/20 20:42ON~GOTO文の場合は、条件となる変数が連続している数字(0,1,2…)でなければならないという制約があるのに対し、switch~case文は、 ・条件は連続した値でなくても良い ・条件をひとまとめにして処理を行える ・どの条件にも該当しなかった場合の処理が行える …というような、柔軟な記述が出来ます。0そうだね プレイ済み2017/11/04 00:57:09に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿bigslope bigslope2014/12/20 20:45switch(a) { case 0: case 10: case 20: printf("0または10または20の場合\n"); break; case 30: printf("30の場合\n"); break; default: printf("それ以外の場合\n"); break; } (最近C触っていないので忘れ気味)0そうだね プレイ済み2017/11/04 00:57:09に取得