Syn BASICのプログラムの作り方(6)

このページをスマートフォンなどでご覧になる場合は、画面を横長にする方が読みやすくなる事があります。
目次へ  前のページへ (1) (2) (3) (4) (5) (6) (7) (8) (9) 次のページへ
2024年09月18日 公開
2024年10月01日 NEW命令の説明を追加した。

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

前のページでは、プログラムモードでプログラムのぎょう入力にゅうりょくする方法ほうほうについて説明せつめいしましたので、今回こんかいは、入力にゅうりょくしたぎょう間違まちがいがあった場合ばあい訂正ていせい仕方しかたや、不要ふようぎょう削除さくじょ仕方しかたについて説明せつめいします。

2-3.入力にゅうりょくしたぎょう間違まちがいがあった場合ばあい訂正ていせい方法ほうほう

10 PRINTプリント "こんにちは"ENTERエンター入力にゅうりょくするつもりだったのに、間違まちがって10 PRINTプリント "こんばんは"ENTERエンター入力にゅうりょくしてしまった場合ばあい想定そうていして、間違まちがいを訂正ていせいする方法ほうほう説明せつめいします。

まず、した画面がめん22で、10 PRINTプリント "こんばんは"ENTERエンター入力にゅうりょくしたあとで、LISTリストENTERエンター入力にゅうりょくしてください。

画面22、練習れんしゅうよう画面がめん

10 PRINTプリント "こんばんは"ENTERエンター入力にゅうりょくしたあとで、LISTリストENTERエンター入力にゅうりょくしてください。

そうすると、実行じっこうれい38のよう画面がめんになっているはずです。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは" ← 10行を入力
LIST ← LIST命令を入力
10 PRINT "こんばんは" ← リストの表示
Ok
実行例38、10 PRINTプリント "こんばんは"入力にゅうりょくしたあとでリスト表示ひょうじした様子ようす

ここで、間違まちがって入力にゅうりょくした10ぎょう訂正ていせいしてみます。

間違まちがったぎょう訂正ていせいするには、間違まちがったぎょうおな行番号ぎょうばんごうで、ただしいぎょう入力にゅうりょくなおします。

画面がめん22で、10 PRINTプリント "こんにちは"ENTERエンター入力にゅうりょくして10ぎょう訂正ていせいしたあとに、LISTリストENTERエンター入力にゅうりょくして、リストを表示ひょうじしてください。そうすると、実行じっこうれい39にしめように、10ぎょう訂正ていせいされているのがかるとおもいます。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは" ← 誤った10行の入力
LIST ← LIST命令
10 PRINT "こんばんは" ← 訂正前のリスト
Ok
10 PRINT "こんにちは" ← 正しい10行を入力
LIST ← LIST命令を入力
10 PRINT "こんにちは" ← 訂正後のリストの表示
Ok
実行例39、10ぎょう訂正ていせいしたあとにリスト表示ひょうじした様子ようす

いま説明せつめいした方法ほうほうでは、間違まちがったぎょうすべ入力にゅうりょくする必要ひつようがありました。これでは、ながぎょう訂正ていせいするのが大変たいへんです。

しかし、ぎょうなか間違まちがった部分ぶぶんだけを訂正ていせいする方法ほうほうがありますので、これから説明せつめいします。

実行じっこうれい39の状態じょうたいで、さらに10ぎょう10 PRINTプリント "おはよう"変更へんこうします。

そのためには、画面がめん22で、訂正ていせいのリストの、 こんにちはまえにカーソルを移動いどうしてください。マウスカーソルをその部分ぶぶん移動いどうしてクリックする(スマホなどの場合ばあいはその部分ぶぶんをタップする)か、カーソルキーを使つかってカーソルを移動いどうします。

そうすると、実行じっこうれい40のようになります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは"
LIST
10 PRINT "こんばんは" 
Ok
10 PRINT "こんにちは"
LIST
10 PRINT "こんにちは" ← カーソルを「こ」の前に移動
Ok
実行例40、リストのこんにちはまえにカーソルを移動いどうした様子ようす

その状態じょうたいDELキーを5かいすと、こんにちは文字もじえて、実行じっこうれい41のようになります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは"
LIST
10 PRINT "こんばんは" 
Ok
10 PRINT "こんにちは"
LIST
10 PRINT "" ← 「こんにちは」が消えた
Ok
実行例41、DELキーを5かいしてこんにちはした様子ようす

ここでおはようENTERエンター入力にゅうりょくすると、10ぎょう10 PRINTプリント "おはよう"変更へんこうされ、実行じっこうれい42にしめ状態じょうたいになります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは"
LIST
10 PRINT "こんばんは" 
Ok
10 PRINT "こんにちは"
LIST
10 PRINT "おはよう" ← 「おはよう」に変更
Ok ← カーソルがOkの前に来る
実行例42、おはようENTERエンター入力にゅうりょくして10ぎょう変更へんこうした様子ようす

LISTリスト命令めいれい使つかって、プログラムが変更へんこうされたのを確認かくにんしてみましょう。したきのカーソルキーを1かいして、カーソルが一番いちばんOkオーケーつぎぎょうるようにしたあとに、LISTリストENTERエンター入力にゅうりょくしてください。実行じっこうれい43にしめように、10ぎょう10 PRINTプリント "おはよう"変更へんこうされていること確認かくにんできます。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "こんばんは"
LIST
10 PRINT "こんばんは" 
Ok
10 PRINT "こんにちは"
LIST
10 PRINT "おはよう"
Ok
LIST ← リスト命令を入力
10 PRINT "おはよう" ← 変更後のリスト
Ok
実行例43、変更へんこうのリストを確認かくにんした様子ようす

このように、10 PRINTプリント "こんにちは"10 PRINTプリント "おはよう"変更へんこうするときに、ぎょう全体ぜんたい入力にゅうりょくなお必要ひつようはなく、変更へんこうのあるこんにちは部分ぶぶんおはよう入力にゅうりょくなおすだけで、変更へんこう作業さぎょうができます。

2-4.不要ふようぎょう削除さくじょする方法ほうほう

不要ふようぎょう削除さくじょする方法ほうほうについて説明せつめいします。

れいとして、リスト1にしめような、3ぎょうのプログラムをかんがえます。

リスト1ぎょう削除さくじょ方法ほうほう説明せつめいするためサンプルプログラムCOPY
10 PRINT "おはよう"
20 PRINT "こんにちは"
30 PRINT "こんばんは"

いま、このプログラムから20ぎょう削除さくじょして、リスト2にしめすプログラムにしたいとします。

リスト2、20ぎょう削除さくじょしてられるプログラムCOPY
10 PRINT "おはよう"
30 PRINT "こんばんは"

この作業さぎょうを、した画面がめん23でいます。画面がめん23には、あらかじめリスト1のプログラムが入力にゅうりょくしてあります。

10 PRINT "おはよう"
20 PRINT "こんにちは"
30 PRINT "こんばんは"
画面23、練習れんしゅうよう画面がめん

画面がめん23の30ぎょう表示ひょうじされているぎょうつぎぎょうで、LISTリストENTERエンター入力にゅうりょくして、入力にゅうりょくされているプログラムのリストを表示ひょうじしてください。(実行じっこうれい44参照さんしょう)

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
LIST ← リスト命令を入力
10 PRINT "おはよう"← リストの先頭行
20 PRINT "こんにちは" 
30 PRINT "こんばんは"← リストの最終行
Ok
実行例44、LISTリストENTERエンター入力にゅうりょくして、プログラムリストを確認かくにんした様子ようす

実行じっこうれい44にしめように、たしかに10ぎょう、20ぎょう、および30ぎょうからなる、3ぎょうのプログラムが入力にゅうりょくされています。

ここで、20ぎょうだけをしたいのですが、じつは、特定とくていぎょうだけ消去しょうきょするには、消去しょうきょしたいぎょう行番号ぎょうばんごう(この場合ばあいは20)を入力にゅうりょくして、そのあとENTERエンターキーをせばいいのです。

画面がめん23で、20ENTERエンター入力にゅうりょくしてください。実行じっこうれい45のようになります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
LIST
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
Ok
20 ← 消したい行の行番号を入力
実行例45、20ENTERエンター入力にゅうりょくして、20ぎょう削除さくじょした様子ようす

この状態じょうたいで、すでに20ぎょう削除さくじょされているのですが、はっきりとはからないので、LISTリスト命令めいれい確認かくにんしてみましょう。

画面がめん23で、さらにLISTリストENTERエンター入力にゅうりょくして、プログラムリストを表示ひょうじしてください。実行じっこうれい46の状態じょうたいになり、たしかに20ぎょう消去しょうきょされていることかります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
LIST
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
Ok
20
LIST ← LIST命令を入力
10 PRINT "おはよう"
30 PRINT "こんばんは" ← 10行の次が30行
Ok
実行例46、LISTリスト命令めいれい実行じっこうして20ぎょう削除さくじょされたこと確認かくにんした様子ようす

行番号ぎょうばんごう入力にゅうりょくしたあとENTERエンターキーをせば、指定していした行番号ぎょうばんごうぎょう削除さくじょできること説明せつめいしましたが、それでは、プログラムなか存在そんざいしない行番号ぎょうばんごう入力にゅうりょくしたあとENTERエンターキーをせば、どうなるのでしょうか?実際じっさいにやってみましょう。

画面がめん23で、さらに、40ENTERエンター入力にゅうりょくして、元々もともと存在そんざいしない40ぎょう消去しょうきょしようとしてください。実行じっこうれい47にしめ状態じょうたいになります。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
LIST
10 PRINT "おはよう"
20 PRINT "こんにちは" 
30 PRINT "こんばんは"
Ok
20
LIST
10 PRINT "おはよう"
30 PRINT "こんばんは"
Ok
40 ← 存在しない40行を消去
Undefined line number(40). ← エラー
40 ← 選択状態になっている
実行例47、40ENTERエンター入力にゅうりょくして、存在そんざいしない40ぎょう削除さくじょしようとした様子ようす

存在そんざいしない行番号ぎょうばんごう入力にゅうりょくしてENTERエンターキーをすと、存在そんざいしないぎょう削除さくじょできませんから、Undefinedアンデファインド lineライン numberナンバーというエラーがます。このエラーは、存在そんざいしない行番号ぎょうばんごう指定していして、なにらかの操作そうさ(この場合ばあい削除さくじょ)をしようとしたときるエラーです。

2-5.すべてのぎょう削除さくじょするNEWニュー命令めいれい

入力にゅうりょくしたプログラムすべてを削除さくじょしたい場合ばあいは、NEWニュー命令めいれい使つかいます。

した画面がめん24には、すでにリスト3にしめすプログラムが入力にゅうりょくされています。LISTリストENTERエンター入力にゅうりょくして、プログラムが入力にゅうりょくされていること確認かくにんし、つぎNEWニューENTERエンター入力にゅうりょくしてプログラム全体ぜんたい消去しょうきょし、最後さいごにもう一度いちどLISTリストENTERエンター入力にゅうりょくしてプログラムがえていること確認かくにんしてください。

リスト3画面がめん24にあらかじめ入力にゅうりょくされているプログラムCOPY
10 PRINT "A"
20 PRINT "B"
30 PRINT "C"
10 PRINT "A"
20 PRINT "B"
30 PRINT "C"
画面24、練習れんしゅうよう画面がめん

LISTリストENTERエンターNEWニューENTERエンターLISTリストENTERエンターと、3つの命令めいれいじゅん入力にゅうりょくしてください。

そうすると、実行じっこうれい48のよう画面がめんになっているはずです。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
10 PRINT "A"
20 PRINT "B"
30 PRINT "C"
LIST ← LIST命令でプログラムを表示させる
10 PRINT "A" ← プログラムが表示される
20 PRINT "B"
30 PRINT "C"
Ok
NEW ← NEW命令でプログラムを全部消す
Ok
LIST ← もう一度プログラムを表示させる
Ok ← プログラムが表示される事なくOkが出る

実行例48、NEWニュー命令めいれいでプログラムを全部ぜんぶした様子ようす

最初さいしょLISTリスト実行じっこうするときは、リスト3のプログラムが表示ひょうじされます。

つぎNEWニュー実行じっこうすると、入力にゅうりょくされているプログラムが全部ぜんぶえます。

最後さいごにもう一度いちどLISTリスト実行じっこうすると、プログラムがすべ消去しょうきょされたため、プログラムを表示ひょうじすることなく、Okオーケーのメッセージがます。

2-6.行番号ぎょうばんごうなおすRENUM命令めいれい

以前いぜんに、行番号ぎょうばんごうは10ではじまり、10ずつえていくように、数字すうじっていく習慣しゅうかんがあること説明せつめいしました。しかし、ぎょうぎょうあいだあらたなぎょう追加ついかしたり、不要ふようになったぎょう削除さくじょしたりしているうちに、行番号ぎょうばんごうかた一定いっていではなくなります。このようときに、10、20、30、···と、綺麗きれい行番号ぎょうばんごうなおすための命令めいれいがRENUM命令めいれいです。

参考さんこう:RENUMは、"renumberリナンバー"というえい単語たんご省略しょうりゃくしたものです。renumberリナンバーは、「番号ばんごうなおす」という意味いみです。

れいとして、リスト4にしめすプログラムを、RENUM命令めいれい行番号ぎょうばんごうなおして、リスト5のようえてみましょう。

リスト4行番号ぎょうばんごうなおまえのプログラムCOPY
5 PRINT "a"
10 PRINT "b"
25 PRINT "c"
28 PRINT "d"
リスト5行番号ぎょうばんごうなおしたあとのプログラムCOPY
10 PRINT "a"
20 PRINT "b"
30 PRINT "c"
40 PRINT "d"

した画面がめん25で、作業さぎょうしてください。この画面がめんには、あらかじめリスト4のプログラムが入力にゅうりょくされています。

5 PRINT "a"
10 PRINT "b"
25 PRINT "c"
28 PRINT "d"
画面25、練習れんしゅうよう画面がめん

必要ひつようならLISTリストENTERエンター入力にゅうりょくしたあとで、RENUMENTERエンター入力にゅうりょくしてください。

必要ひつようならLISTリストENTERエンター入力にゅうりょくして、プログラムリストを表示ひょうじさせてから、つぎRENUMENTERエンター入力にゅうりょくすると、リスト5のプログラムになります。実行じっこうれい49には、LISTリスト命令めいれい省略しょうりゃくして、いきなりRENUMENTERエンター入力にゅうりょくした場合ばあい実行じっこうれいしめします。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
5 PRINT "a"
10 PRINT "b"
25 PRINT "c"
28 PRINT "d"
RENUM ← RENUM命令を入力
Ok

実行例49、RENUM命令めいれい行番号ぎょうばんごうなおした様子ようす

このままでは行番号ぎょうばんごうなおされた様子ようすからないので、さらにLISTリストENTERエンター入力にゅうりょくして、プログラムリストを確認かくにんすると、実行じっこうれい50にしめように、ちゃんと行番号ぎょうばんごうが10からはじまって、10ずつえていく状態じょうたいになっていること確認かくにんできます。

Syn BASIC Version 0.31α ©2021-2022 Hiroshi Tanigawa(Synapse)
Ok
5 PRINT "a"
10 PRINT "b"
25 PRINT "c"
28 PRINT "d"
RENUM
Ok
LIST ← LIST命令を入力
10 PRINT "a" ← 行番号が付け直されている
20 PRINT "b"
30 PRINT "c"
40 PRINT "d"
Ok

実行例50、行番号ぎょうばんごうなおされていること確認かくにんした様子ようす

さらに、ここでRENUM 1000ENTERエンター入力にゅうりょくしてから、LISTリスト命令めいれいでプログラムリストを表示ひょうじすると、実行じっこうれい51のように、1000ぎょう、1010ぎょう、1020ぎょう、1030ぎょうと、行番号ぎょうばんごうが、1000からはじまって、10ずつえていくようなおされたことかります。

10 PRINT "b"
25 PRINT "c"
28 PRINT "d"
RENUM
Ok
LIST
10 PRINT "a"
20 PRINT "b"
30 PRINT "c"
40 PRINT "d"
Ok
RENUM 1000 ← 1000行から始まる様に付け直す
Ok
LIST ← LIST命令を入力
1000 PRINT "a"
1010 PRINT "b"
1020 PRINT "c"
1030 PRINT "d"
Ok
実行例51、1000ぎょうからはじまるよう行番号ぎょうばんごうなおした様子ようす

RENUM命令めいれいでは、さらに複雑ふくざつ行番号ぎょうばんごうかたもできるのですが、くわしくは、Syn BASIC (オンラインBASICインタプリタ)(2)のページのRENUM命令めいれい説明せつめいをごらんください。

次のページでは、変数へんすう使つかかたについて説明せつめいします。

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

関連ページ

PCBgogoのバナー
Arduino 電子工作
このサイトの記事が本になりました
ISBN:978-4-7775-1941-5
工学社の書籍の内容の紹介ページ
本のカバーの写真か書名をクリックすると、Amazonの書籍購入ページに移動します。
電子工作で学ぶ論理回路入門
このサイトの中の人が書いた本です。
ISBN:978-4-7775-2280-4
工学社の書籍の内容の紹介ページ
この本の紹介記事
本のカバーの写真か書名をクリックすると、Amazonの書籍購入ページに移動します。