スクラッチからBASIC

用語の解説

スクラッチからBASIC(コマンド一覧(一部))です。(2-010)

今回は「スクラッチからBASIC(コマンド一覧(一部))」です。解説が行いやすいものや伝わりやすいものをピックアップしました。

スクラッチのブロックは理解できているが、BASICの一覧があればBASICが理解できる人向けです。 移植に頻繁に使われるものや理解しやすいものをピックアップしました。(一覧表の順番はスクラッチ起動時の左側にあるブロックの上からの順(一部省いています)です。)

Scratch(スクラッチ)は、Scratch財団がマサチューセッツ工科大学(MIT)メディアラボ ライフロングキンダーガーデングループ(MIT Media Lab Lifelong Kindergarten Group)と共同開発する、8歳から16歳のユーザーがメインターゲットの無料教育プログラミング言語及びその開発環境、コミュニティサイトです。

スクラッチのコマンド標準的なBASICのコマンド内容、 備考
LOCATE 又は SPOFSコスチューム(スプライト、キャラクターのこと)が画面に表示される位置を指定する。
WAITLOCATE等の合成休憩時間を加えて指定した位置に移動する。
SPROTスプライトを回転させる。
PRINT文字を表示する。
SPSCALEスプライトの表示倍率を変更する。
 BEEP又は BGMPLAY音や音楽を鳴らす。
RUNプログラムの実行を開始する。
INKEY$又は BUTTON指定したキーが入力されたら実行する。
 GOTO
(ただし、BASICの様に多用すると動作チェックで苦しむことになる。よく考えて使うこと。)
@(ラベル)メッセージ1に向かう。なお、独立したスプライト内で誤って使用すると暴走する原因になるので注意。
GOSUBRETURN@(ラベル)メッセージ1のサブルーチンに向かい、終了すると「メッセージ1を送って待つ」に戻る。
WAIT (N-BASIC等ではFOR~NEXT文をから回しして行った。)何もしない空白の停止時間を実行する。
 有限の繰り返しは FOR~NEXT
無限の繰り返しはGOTO文を使用
逆コの字の上部分から中に挟まったブロックを繰り返す。
IF~THEN  条件が成立すると中に挟まったブロックを実行する。
 IF~THEN~ELSE  条件が成立すると上部に挟めたブロックを実行する。 条件が成立しなかったら下部に挟めたブロックを実行する。
(BASICでは特に該当する命令は無い。)その状況によって実行回数を増やすなど。コスチューム(スプライト、キャラクターのこと)を増やす。
 INKEY$又は BUTTON指定したキーが入力された(IF~THENで使用。)
PEEK又は CHKCHR,SPCOL,SPHITSPキャラクターの衝突判定に使う。
INPUT入力した情報は「答え」に代入される。
     MOUSEOUT)又は
タッチパネルで TOUCHOUT)、
マウスのボタンは MBUTTON
   
プチコン4ではBEEPBGMPLAYの中のパラメータで指定等。現在の音量の値

TIME$
TMREAD~OUT H,M,S

DTREAD~OUT Y,M,D

リセットは TIME$=”00:00:00“等    
 
(BASICでは背景を独自に管理していないので該当する命令は無い。)現在のステージの番号等
加算、
減算、
アスタリスク()積算、
除算
 
RND   (N-BASIC:例)INT(RND(1)*10)+1   (プチコン4:例)RND(10)+1乱数を作成する
, <, =, ANDかつ,
ORまたは, NOT~でない
 
(例)A$+B$文字の連結。 文字の加算。
(N-BASIC:例)MID$(“りんご”,1,1)
(プチコン4:例)MID$(“りんご”,0,1)
左からX文字目を取り出す。 スクラッチでは1文字を場所で扱うが、 LEFT$は文字数を扱う。
(例)LEN(“りんご”)文字数を返す。
(例)A=INSTR(“りんご”,“り”)文字列内から指定文字列を検索
MOD 
FIXROUND 
ABS絶対値、INT切り下げ、CEIL切り上げ、SQR平方根、SINサイン、COSコサイン、TANタンジェント 、ASINアークサイン(SINの逆関数)、ACOSアークコサイン(COSの逆関数)  (INTで切り上げを実行する例) X=INT(X)+1  
ATANアークタンジェント(TANの逆関数)、LOG(底を省略)自然対数ln LOG対数log EXP自然対数のべき乗 、POW単にを用いる べき乗 
  リストを作るから ↑よく使う。 ———– 
↓「挿入する」なので、管理には取扱注意。
    DIMVAR    配列(スクラッチは1次元配列のみ) 内容や最大値の指定は変数内容の表示時において行う。

以上、一部ですが一覧を紹介しました。

2023年5月29日

コメント

タイトルとURLをコピーしました