Syn BASIC (オンラインBASICインタプリタ)(1)

このページをスマホなどでご覧になる場合は、画面を横長にする方が読みやすくなります。
目次へ  前のページへ (1) (2) (3) (4) (5) (6) 次のページへ
2021年02月27日 Version 0.10α公開。
2021年05月16日 Syn BASICをVersion 0.24αにアップデート。
2021年05月21日 ツイートできるBASICプログラムの文字数の上限を、200文字から600文字に拡張。
2021年05月25日 Syn BASICをVersion 0.25αにアップデート。また、ページ構成を変更し、1ページ目の内容の一部を2ページ目に移動。
2021年06月05日 Syn BASICをVersion 0.27αにアップデート。
2021年06月14日 Syn BASICをVersion 0.28αにアップデート。

記事きじにふりがなをけたいときは、つぎのチェックボックスをクリックしてください。

Synシン BASICベーシックは、オンラインで使つかえるBASICベーシックインタプリタです。ブラウザじょうBASICベーシックのプログラムを実行じっこうできるので、開発かいはつ環境かんきょう準備じゅんびすることなく、気軽きがるBASICベーシックのプログラムを実行じっこうできます。

画面1、Synシン BASICベーシック

うえ画面がめん(画面がめん1)で、BASICベーシックのプログラムが実行じっこうできます。使つかかた説明せつめい以下いかいてあります。

プログラムをツイートボタンで、入力にゅうりょくしたプログラムをツイートできます。プログラムのツイートは、あつ縮されたかたちでツイートうちのリンクにまれ、そのリンクをクリックすると、このサイトで、実際じっさいにプログラムが実行じっこうできます。

ちゅう:ツイートできるプログラムのサイズに上限じょうげんがあります。上限じょうげんは、あつあとで1900バイトです。あつまえだと、2kバイトつよのプログラムがツイートできます。

つぎしめすツイートは、筆者ひっしゃ実際じっさい自分じぶんつくったプログラムをツイートしたれいです。ツイートうちのリンクをクリックすると、つくったプログラムが実際じっさい起動きどうします。

2ほん抵抗ていこう抵抗値ていこうち入力にゅうりょくすると、なるべくそのちかい2ほん抵抗ていこうを、E24けいれつからえらぶプログラムをつくりました。

スクリーンショットは、が3.14にちかくなるわせをえらんでいる様子ようすしめします。リンクをクリックすると実行じっこうできます。

https:/スラッシュ/スラッシュt.co/スラッシュj8w92YmメートルcjW pic.twitter.comメートル/スラッシュ03bgグラムmメートルhwB5J

&mメートルdash; しなぷす@synapse.kyotoトゥー (@h164tanタンジェント1) June 14, 2021

なお、このページで公開こうかいしているSynシン BASICベーシックのバージョンはVersionバージョン 0.28αアルファです。アップデートの履歴りれきについてはSyn BASICリリースノートをごらんください。

目次もくじ

1. Synシン BASICベーシック特徴とくちょう … 1ページ
1-1. 行番号ぎょうばんごうのあるふる文法ぶんぽうBASICベーシック … 1ページ
1-2. 自分じぶんWebウェブサイトにみ、簡単かんたん計算けいさんをさせることのできるBASICベーシックインタプリタ … 1ページ
1-3. 日本語にほんごのエイリアスを使つかって漢字かんじやひらがなでプログラムできるBASICベーシック … 1ページ
2. Synシン BASICベーシック文法ぶんぽう … 2ページ
2-1. Synシン BASICベーシック使つかえるぶん命令めいれい … 2ページ
2-2. Synシン BASICベーシック使つかえる関数かんすう … 2ページ
2-3. Synシン BASICベーシック使つかえる演算子えんざんし … 2ページ
2-3-1. 用語ようご説明せつめい … 2ページ
2-3-2. 演算子えんざんし一覧いちらん … 2ページ
2-3-3. ビット演算子えんざんしのオペランドの32ビット整数化せいすうか … 2ページ
2-3-4. 演算子えんざんし優先順位ゆうせんじゅんい … 2ページ
3. Synシン BASICベーシックつくったプログラムのれい … 3ページ
3-1. 2つのかずもとめるプログラム … 3ページ
3-2. 入力にゅうりょくした複数ふくすうかず最大値さいだいち最小値さいしょうち合計ごうけい、および平均値へいきんちもとめるプログラム … 3ページ
3-3. じゃんけんをするプログラム … 3ページ
3-4. 素数そすうつけるプログラム(1) … 3ページ
3-5. 素数そすうつけるプログラム(2) … 3ページ
3-6. 円周率えんしゅうりつもとめるプログラム … 3ページ
4. Synシン BASICベーシック使つかってみよう(ダイレクトモードで命令めいれいする) … 4ページ
4-1. 簡単かんたん計算けいさんをしてみよう(PRINTプリントぶん基本きほんてき使つかかた) … 4ページ
4-1-1. ざんざんをやってみる … 4ページ
4-1-2. 入力にゅうりょく間違まちがえるとエラーになる … 4ページ
4-1-3. エラーの訂正ていせい方法ほうほう … 5ページ
4-1-3-1. 間違まちがえた命令めいれいをすべてなおしてエラーを訂正ていせいする方法ほうほう … 5ページ
4-1-3-2. 以前いぜんんだ内容ないよう編集へんしゅうしてエラーを訂正ていせいする方法ほうほう … 5ページ
4-1-4. ざんざんをやってみる … 6ページ
4-1-5. ざんざんざんざん優先ゆうせんされる … 6ページ
4-1-6. 計算けいさん優先順位ゆうせんじゅんいえたいときまる括弧かっこ使つか … 6ページ
4-1-7. Synシン BASICベーシック使つか括弧かっこまる括弧かっこだけ … 6ページ
4-1-8. 計算けいさん精度せいどについて … 6ページ

1.Synシン BASICベーシック特徴とくちょう

Synシン BASICベーシックは、気軽きがるBASICベーシックプログラムを実行じっこうできるよう開発かいはつされた、オンラインで使つかえるBASICベーシックインタプリタです。スマートフォンなどのせま画面がめん端末たんまつでも動作どうさするようつくられています。

1-1.行番号ぎょうばんごうのあるふる文法ぶんぽうBASICベーシック

またSynシン BASICベーシックはマイクロソフトしゃMBASICエムベーシック意識いしきした文法ぶんぽう採用さいようしています。

行番号ぎょうばんごうのあるBASICベーシックで、各行かくぎょうには行番号ぎょうばんごうける必要ひつようがあります。現在げんざいでは、Visual Basicビジュアルベーシックなど、行番号ぎょうばんごう使つかわない(あるいは行番号ぎょうばんごう使つかこと強制きょうせいされない)BASICベーシック一般いっぱんてきになっていますが、ふる時代じだいしのぶため、あえてふる文法ぶんぽう採用さいようしています。

10 '100までの数を合計するプログラム
20 s=0 : ' 変数sを0に初期化(省略可)
30 for i=1 to 100
40 s=s+i
50 next i
60 print s
cls:list
画面2、1から100までの合計ごうけいもとめるプログラム

れいとして、1から100までの合計ごうけいもとめるプログラムを、画面がめん2にしめします。各行かくぎょう先頭せんとうに10、20、30、・・・と行番号ぎょうばんごういていることかります。

画面がめん2では、RUNランボタンをクリックすると、実際じっさいにプログラムを実行じっこうできます。(あるいは、画面がめんをクリックして、画面がめん文字もじ入力にゅうりょくできる状態じょうたいにしてから、RUNラン[ENT]エンター入力にゅうりょくしてもプログラムを実行じっこうできます) プログラムを実行じっこうすると、1から100までの合計ごうけいの5050が表示ひょうじされるはずです。

ちゅう:ENTERエンターキーをことを、この記事きじでは[ENT]エンターことにします。

プログラムのぎょう追加ついか削除さくじょ変更へんこうなどは、この行番号ぎょうばんごう使つかこといます。

たとえば、うえ画面がめんのプログラムの60ぎょうを、つぎようえたいとします。

リスト1、60ぎょうをこのよう変更へんこうしたい
60 printプリント "Sumサム:",s

その場合ばあいうえとお入力にゅうりょくして[ENT]エンターキーをすと、プログラムが変更へんこうできます。

そのあとLISTリスト[ENT]エンター入力にゅうりょくしてプログラムのリストを表示ひょうじすると、つぎよう表示ひょうじされるはずです。

リスト2、60ぎょう変更へんこうのプログラム
10 '100までのかず合計ごうけいするプログラム
20 s=0 : ' 変数へんすうsを0に初期化しょきか(省略しょうりゃく)
30 forフォー i=1 toトゥー 100
40   s=s+i
50 nextネクスト i
60 printプリント "Sumサム:";s
    

このように、すでに入力にゅうりょくみのぎょう行番号ぎょうばんごう(この場合ばあいは60)ではじまる文字もじれつ入力にゅうりょくして[ENT]エンターキーをすと、既存きそんぎょうを、あたらしく入力にゅうりょくしたぎょうえます。

入力にゅうりょくみのプログラムに使つかわれていない行番号ぎょうばんごうはじまる文字もじれつ入力にゅうりょくすると、プログラムにそのぎょう追加ついかします。

リスト3、プログラムに追加ついかしたいぎょう
15 printプリント "Calculationカルキュレーション ofオブ sumサム"

たとえば、さきほど60ぎょうえたあとに、さらにリスト3のようみ、[ENT]エンターキーをすと、プログラムに15ぎょうとしてリスト3にしめぎょう追加ついかされます。

そのあとLISTリスト[ENT]エンター入力にゅうりょくすると、表示ひょうじされるプログラムリストはリスト4のようになります。

リスト4、15ぎょう追加ついかしたプログラム
10 '100までのかず合計ごうけいするプログラム
15 printプリント "Calculationカルキュレーション ofオブ sumサム"
20 s=0 : ' 変数へんすうsを0に初期化しょきか(省略しょうりゃく)
30 forフォー i=1 toトゥー 100
40   s=s+i
50 nextネクスト i
60 printプリント "Sumサム:";s

このれいかるように、BASICベーシックプログラムのぎょうは、行番号ぎょうばんごうちいさいじゅんならべられます。

あるぎょうつぎぎょうあいだあたらしいぎょう追加ついかしたい場合ばあいは、追加ついかするぎょう行番号ぎょうばんごうは、既存きそんの2つのぎょう行番号ぎょうばんごうあいだ数字すうじにすればよいことかります。うえれいでは、10ぎょうと20ぎょうあいだぎょう追加ついかするために、10と20のあいだの15を行番号ぎょうばんごうとして、あたらしいぎょう入力にゅうりょくしました。

プログラムの行番号ぎょうばんごうを、1,2,3,・・・と1ずつおおきくしていったのでは、あとからぎょうぎょうあいだあたらしいぎょう追加ついかできませんから、BASICベーシックでは、行番号ぎょうばんごうを10ずつやす習慣しゅうかんがあります。

1-2.自分じぶんWebウェブサイトにみ、簡単かんたん計算けいさんをさせることのできるBASICベーシックインタプリタ

Synシン BASICベーシックには、起動きどうにプログラムを自動じどう入力にゅうりょくしたり、あるいはさらにそのプログラムを自動じどうてき実行じっこうする機能きのうがあります。

10 i=i+1
20 print i,
30 wait 1000:' 1秒(1000ms)待つ
40 goto 10
cls:list:'画面を消してリスト表示
run
画面3、自動じどうてき実行じっこうされる、1びょうごとにかずかぞえるプログラム

画面がめん3では、いちびょう間隔かんかく数字すうじがカウントアップしているはずです。これは、つぎようBASICベーシックプログラムをつくって、それをページにみ、自動じどう実行じっこうするようにしてあるからです。

10 i=i+1
20 printプリント i,
30 waitウェイト 1000:' 1びょう(1000msミリびょう)つ
40 gotoゴートゥー 10

Synシン BASICベーシック起動きどうに、うえのプログラムを自動じどうてき入力にゅうりょくし、それを自動じどうてき実行じっこうするために、このページのHTMLエイチティーエムエルにはつぎようなコードがんであります。

  <divディブ class="SynBasicFrameシンベーシックフレーム">
    10 i=i+1<br>ブレーク
    20 printプリント i,<br>ブレーク
    30 waitウェイト 1000:' 1びょう(1000msミリびょう)<br>ブレーク
    40 gotoゴートゥー 10<br>ブレーク
    clsシーエルエス:listリスト:'画面がめんしてリスト表示ひょうじ<br>ブレーク
    runラン
  <div>とじディブ

SynBasicFrameシンベーシックフレームというクラスのdivディブ要素ようそもうけると、そこがSynシン BASICベーシック実行じっこうできるコンソール画面がめんになります。そのdivディブ要素ようそなかに、Synシン BASICベーシック自動じどう実行じっこうしたい命令めいれいぶんbrブレークタグ(改行かいぎょうタグ)で区切くぎってくと、それらがじゅん自動じどうてき実行じっこうされます。

うえれいでは、10ぎょうから40ぎょうまでのプログラムをみ、画面がめん消去しょうきょ(clsシーエルエス)してプログラムリストを表示ひょうじする(listリスト)という操作そうさ自動じどう実行じっこうします。

この機能きのう使つかうと、ホームページでなに計算けいさんおこなうサービスを提供ていきょうしたい場合ばあい習得しゅうとくむずかしいJavaScriptジャバスクリプトPHPピーエイチピー使つかわないでも、習得しゅうとくやさしいBASICベーシックスクリプトけます。

画面がめん4にしめすのは、一次いちじ方程式ほうていしきかいもとめるサービスを、Synシン BASICベーシック実現じつげんしたれいです。xにかんする一次いちじ方程式ほうていしきax+b=0のaとbを入力にゅうりょくすると、方程式ほうていしきかい表示ひょうじします。

10 '一次方程式の解を求めるプログラム
20 print "一次方程式 ax+b=0 を解きます。aとbを入力してください。"
30 input "a:",a
40 if a=0 then print "aには0以外の数字を入力してください。":goto 30
50 input "b:",b
60 print
70 if b>=0 then s$="+" else s$="-"
80 print "解きたい方程式:";a;"x";s$;abs(b);"=0"
90 print "求めた解:x=";-b/a
100 print
110 goto 20
cls:run
画面4、BASICベーシック記述きじゅつした計算けいさんサービスのれい(一次いちじ方程式ほうていしきかいもとめるプログラム)

参考さんこう:どのようなプログラムがうごいているのかをりたいほうは、中断ちゅうだんボタンをクリックしてプログラムを停止ていししたあとLISTリスト[ENT]エンター入力にゅうりょくしてください。プログラムのリストが表示ひょうじされます。

ボタンをしたりプルダウンメニューから選択肢せんたくしえらんだりといったグラフィカルなインターフェースはSynシン BASICベーシック実現じつげんできませんが、ぎゃくにいえば、GUIグイあつかうのに必要ひつようイベントハンドラとう勉強べんきょうをせずに、とりあえず動作どうさするプログラムがめます。

Synシン BASICベーシックTypeScriptタイプスクリプト記述きじゅつされていますが、そのTypeScriptタイプスクリプトのソースファイルを、ちか将来しょうらいMITエムアイティーライセンス公開こうかいする予定よていです。そのソースファイルをダウンロードし、ご自分じぶんWebウェブサイトのサーバーにアップロードすれば、ご自分じぶんのサイトにBASICベーシックプログラムをことができるようになります。

参考さんこう:TypeScriptタイプスクリプトは、JavaScriptジャバスクリプト拡張かくちょうしたプログラミング言語げんごで、JavaScriptジャバスクリプトともに、ウェブブラウザじょう動作どうさするプログラムの開発かいはつによく使つかわれます。

1-3.日本語にほんごのエイリアスを使つかって漢字かんじやひらがなでプログラムできるBASICベーシック

このBASICベーシックインタプリタの特徴とくちょうとして、おおくの予約語よやくご日本語にほんごのエイリアス(別名べつめい)があることげられます。

たとえば"PRINTプリント"のエイリアスは「け」と「かけ」なので、"PRINTプリント"と入力にゅうりょくするわりに、「け」や「かけ」と入力にゅうりょくしても、おな動作どうさになります。

おも予約語よやくごと、そのエイリアスをひょう1にしめします。

ちゅう:将来しょうらいのバージョンアップにともない、予約語よやくごやエイリアスはへんさらになる可能性かのうせいがあります。

表1おも予約語よやくごとそのエイリアス
予約語よやくご エイリアス
PRINTプリント け,かけ
INPUTインプット け,キケ
LISTリスト リスト, りすと
NEWニュー せ, けせ
RUNラン やれ
GOTOゴートゥー け, いけ
GOSUBゴーサブ おこなってこい, いってこい
RETURNリターン もどれ, もどれ
IFイフ もし
THENゼン なら
ELSEエルス ちがえば, ちがえば
FORフォー かえせ, くりかえせ
TOトゥー 最後さいごかず, さいごのかず
STEPステップ はば, はば
NEXTネクスト えろ,かえろ
REMレム ちゅう,ちゅう

また、変数へんすうめい日本語にほんご使つかえます。変数へんすうめい最初さいしょ全角ぜんかく文字もじなら(厳密げんみつにいえば基本きほんラテン文字もじでなければ)、全角ぜんかく文字もじつづかぎ変数へんすうめいつづいているとみなします。

予約語よやくご日本語にほんごのエイリアスがあることと、変数へんすうめい日本語にほんご使つかえること利用りようすれば、画面がめん2の1~100のかず合計ごうけいもとめるプログラムは、画面がめん5のよう記述きじゅつすることもできます。

10 '100までの数を合計するプログラム
20 合計=0 : ' 変数「合計」を0に初期化(省略可)
30 繰り返せ 数=1 最後の数 100 : 'for文
40 合計=合計+数
50 変えろ 数 : 'next文
60 書け 合計 : 'print文
cls:list
画面5、漢字かんじやひらがなを使つかっていた、1~100までの合計ごうけいもとめるプログラム

また、ひらがなのエイリアスを使つかえば、画面がめん6のように、ひらがなだけでプログラムを記述きじゅつすることもできます。

10 '100までのかずをごうけいするプログラム
20 ごうけい=0
30 くりかえせ かず=1 さいごのかず 100
40 ごうけい=ごうけい+かず
50 かえろ かず
60 かけ ごうけい
cls:list
画面6、アルファベットや漢字かんじ使つかわずに、ひらがなだけでいた1~100までの合計ごうけいもとめるプログラム

なお、予約語よやくごのエイリアスに、ひらがなのもの用意よういしたのは、「小学生しょうがくせいにプログラミング教育きょういくをするうえで、児童じどうがアルファベットを習得しゅうとくしていないてんがネックになる」といたことがあるからです。最終さいしゅうてきに、すべての英語えいご予約語よやくごにひらがなのエイリアスを用意よういして、数字すうじとひらがなと小学生しょうがくせいにもなじみのある記号きごうだけでプログラムできるようにしようとかんがえています。

なお、このBASICベーシック日本語化にほんごかさいおこなっているのは、予約語よやくご日本語にほんごのエイリアスを用意よういしていることだけで、ぴゅうG-BASICジーベーシックように、命令めいれい語順ごじゅん日本語にほんごわせてえることいません。(れい:GOTOゴートゥー 100 ⇒ 100 ニイケ)

KEYBOARDキーボードいたボタンをすと、ソフトウェアキーボードが画面がめんしたてきます。スマートホンやタブレットでそれをタップすることでプログラムを入力にゅうりょくできます。通常つうじょうQWERTYクワーティー配列はいれつのキーボードもありますが、ABC順エービーシーじゅんのキーボードやひらがなのキーボードも用意よういしてあります。QWERTYクワーティー配列はいれつおぼえていないちいさな子供こどもには、ABC順エービーシーじゅんのキーボードやひらがなのキーボードでプログラムするほうがとっつきやすいかもれません。

次のページでは、Synシン BASICベーシックので使つかえる命令めいれいぶんなどについて説明せつめいします。

目次へ  前のページへ (1) (2) (3) (4) (5) (6) 次のページへ

関連ページ

Arduino 電子工作
このサイトの記事が本になりました。
書名:Arduino 電子工作
ISBN:978-4-7775-1941-5
工学社の書籍の内容の紹介ページ
本のカバーの写真か書名をクリックすると、Amazonの書籍購入ページに移動します。
こちらのページもおすすめです。