« 夕闇の多摩川で自転車散歩&24時間TV『はなちゃんのみそ汁』 | トップページ | ☆ブログ公開9周年☆ »

Quick BASICの練習(3)~REM 文、GOTO 文、IF 文、各種トラブル・・

あっと言う間に3ヶ月の空白期間が経過してしまったが、代表的な初心者向け

ソフト・BASICの1つのヴァージョン、Quick BASIC(クイック・ベーシック)の

練習を続けよう。今は時間が無いので、少ししか進めないけど、ブログ9周年

の直前に、どうしてもプログラム記事を追加しておきたかったのだ。そのくらい、

重要で将来性豊かな分野だと思ってる。社会的にも、当サイトにとっても。

 

この3ヶ月間に、どうも私のPC内部に妙な変化が起きたようで、Cドライブに

インストールしたはずのこのソフトがなかなか発見できなかったし、スタートメ

ニューに置いてたショートカットもなぜか使えなくなってる。それどころか、先ほ

どショートカットが消えてしまった。

 

結局、別扱いで保存してたショートカットのアイコンのダブルクリックで何とか

起動できたけど、ソフト自体はいまだに発見できてない。もちろん、コントロー

ルパネルで「表示」の設定を変える操作は色々と試したが、実行ファイルが

表示されないのだ。

 

使用テキストは前回と同じく、少し前の高校数学の教科書、数研出版『数学A』

1995年版)。教科書の記述のままだと上手く行かないこともあるので、マイ

ナーチェンジの試行錯誤を繰り返すことになる。今回は初めて、教科書通りに

作ったプログラムが暴走。保存してたプログラムが吹っ飛ぶ災難に遭遇した。

やはり油断大敵。初心者には得体の知れない世界のようだ。。

 

なお、これまで書いて来た4本の記事は以下の通り。 

 

  初めてのプログラミング♪

              ~メモ帳でバッチファイル作成(コマンドプロンプト用)

  初めてのプログラミング(2)~計算その他、簡単なバッチファイル

    ・・・・・・・・・・・・・・・・・・・・

  Quick BASICのダウンロード、ダイレクトモード(Immediate)入力と計算

  Quick BASICの練習(2)~プログラム・モードでの入力&実行

 

 

           ☆          ☆          ☆

まずは、教科書p.174に即して、三角形の2辺と挟む角から、残りの1辺の 

長さを求めるプログラムを作ってみた。例によって、わざと教科書とは少しだ

け変えてある。

 

教科書は三角形ABCの2辺の長さをm、nとしてるが、アルファベット2文字

ずつでAB、ACとしても大丈夫だった。あと、教科書は半角カタカナを使って

るが、今の所、私の環境では使えないので、単なるローマ字表記にしてある。

 

140831a

 

前回までの話から進んだ点はただ一つ。REM 文(リマーク文)を挿入したこと。

行の始めに、半角で「REM」とスペースを入力すると、その行は単なる説明と

なるらしい。リマーク(remark)とは、注釈とか寸評のこと。コンピューターの動

作には関係ないが、プログラムの読み手や書き手にとって分かりやすくなる。

 

第40,50行の「角の換算」とは、前回もやった、度数(degree)表示からラジア

ン(radian)表示への単位変換のこと。あらかじめ用意されてる三角関数(ここ

ではCOS=コサイン)が、弧度法のラジアンを使ってるので、180度をπラジア

ンとすることになる。円周率π(パイ)は無理数3.141592・・・だから、簡単の

ために3.14としてある。

 

140831b  結果は左の通り。画面の要求に従って、

  角Aを60(度)、AB=2、AC=1と入力

  すると、BC=1.73・・・という正答が表

示された。要するに、三角定規の細長い方の例で、1.73とは√3のことだ。

 

 

          ☆          ☆          ☆

次に、教科書p.175の問4。「半径r、中心角a°の扇形の面積Sを求める 

プログラムを作れ。ただし、rとaの値は実行時に入力されるようにする」。a

は上の例と同じく、大文字でAとしてある。

 

140831c

 

この場合、弧度法は関係ないから、角度の換算は必要ない。実行画面で、

140831d  A=90(度)、r=2を入力すると、

  正答のS=3.14が表示された。

  半径2の4分円の面積だ。

 

 

           ☆          ☆          ☆

さらに、すぐ下の練習18。「x時間y分は何秒であるかを求めるプログラムを

作れ」。簡単すぎるが、図形以外の基本問題という意味か。

 

140831e

 

140831f  実行画面で、1時間と30分を入力すると、

  z=5400秒という正答が示された。

 

 

 

           ☆          ☆          ☆

さて、今回のメインイベントは次の話だ。GOTO 文(ゴートゥーぶん)。プログラ

ムの処理の途中で、少し前の行など「に行く」(go to)ための文のこと。これを

使うと、繰返しの処理が可能になるが、停止が教科書通りには出来なかった。

無理やりソフト全体を閉じると、今までの保存ファイルが全て消えてしまった。

画面右上の×印をクリックしただけなのに。。

 

最初のそのトラブルは、データが吹っ飛んで残ってないから、改めて挑戦した

140831g  様子を示そう。「BB 」、「CC 」

  を横に連続表示させようとしたけ

  ど、教科書と違って縦にズラッと

  並んでしまうから、スペースを入

  れた意味は無かった。

 

140831h  停止するには、教科書だとSTOPキー

  を押すことになってるけど、私のキー

  ボードには無いから、代わりにFn(ファ

  ンクション・キー)+Pause・BREAK

  を押した。そこで止まった所まではい

いんだけど、元の画面に戻る方法が分からない。どのキーを押しても、繰返し

の表示が再開されてしまうのだ。

 

ちなみに、この2回目の挑戦でまた×印をクリックすると、今度はなぜかファ

イルが壊れず、エラー表示みたいなものも出なかった。前と何が変わったの

かは不明。。

 

 

            ☆          ☆          ☆

最後に、その無限の暴走を止めるプログラムについて。教科書p.177の

「条件判断」の項目に、IF 文(イフぶん)の説明がある。正直、先に予告して

おいて欲しかった。そうすれば、今までのファイルを失うことも無かったのだ。

まあ、暴走の経験もある意味、貴重ではあるけど。。

 

IF 条件 THEN 条件成立時の命令文」の形の文を使えば、限られた条

件でのみ、処理させることが出来る。空白は半角スペース。「IF~THEN~」

は直訳すると「もし~その時~」だが、論理(学)的には「~ならば~」に相当

する定型文。

 

140831i 左は、1から続く自然数 

 を表示させるプログラ

 ムで、N<7、つまり7

 未満の時のみ、反復動

 作をするから、7で自動 

 的に停止する。50行目がIF 文だ。

 

30行目のN=N+1というのは、この世界に特有の表現で、それまでのNの

140831j  値に1を加えて、新たなNとする

  ことを表してる。

 

  数学的に正しい表現を使うなら、

  「N´=N+1」みたいなもの。よ

  り正確に言うなら、添字に m+1

   と mを使った式、

「N m+1 = N m + 1」みたいなものだろう。

 

 

141013b  (☆1ヶ月半後の追記

  第40行の右端に「;」

  (セミコロン)を入れる

と、表示が右に並んだ。)

 

 

          ☆          ☆          ☆

省略表現として、「N=N+1」は巧みだと思うけど、こうした文を書くことで何か

不都合が起きないのかどうか、初心者としては心配になる。おそらく、不都合

が起きないことの一般的証明というのは存在せず、まあ何とかなってるという

のが実態なんだと想像する。

 

なお、0から自然数を書き並べるには、スタートを「N=-1」とすればいいよう

だ。素人的には、どうしてこのスタートから表示しないのか不思議だけど、まあ

実害は無さそうだから、気にしないことにしよう。

 

141013c  (☆追記: 左のように、

   +1の操作の前に

   「PRINT」を書けば、

   スタートの数字1から

  表示された。)

 

今週は計19547字となった。ではまた来週。。☆彡

 

 

 

cf. Quick BASICの練習(4)~IF 文、FOR 文、NEXT 文とループ(繰り返し)

                  (5)~二重ループ、流れ図(フローチャート)

                  (6)~DIM文と配列変数(添字つき変数)

                  (7)~関数値の計算、方程式の近似値

                  (8)~素数の判別、エラトステネスのふるい

                  (9)~数列の二項間漸化式と固有値、一般項

 

                  (元の字数 2851字 ; 追記込み 3132字)

|

« 夕闇の多摩川で自転車散歩&24時間TV『はなちゃんのみそ汁』 | トップページ | ☆ブログ公開9周年☆ »

プログラミング」カテゴリの記事

数学」カテゴリの記事

コメント

テンメイさん
ブログ9周年 おめでとうございます!

毎日更新
実際続けるのは
ほんとうに大変なことだっだろうと思います

今日の記事は
私には 難しいので
その内容について
コメントできなくてごめんなさい

ドラマや芸能ネタという軽いものから
数学・英語・プログラムに至るまで
その能力に 驚かされます
それらは どこで 身につけられたのでしょうか?

私の方は 最近
<食べ物ブログ>と化してしまいました(笑)

人間 歳を重ねると
本能の赴くままに
生きていくことになるのでしょうか(笑)

それはそれで 楽しいですね
変化も そのまま受け止めて
自分らしく続けていくつもりです

テンメイさんも
テンメイさんにしか書けないブログ
続けて行ってくださいね

10周年を 楽しみにしています


投稿: 彩花 | 2014年8月31日 (日) 23時47分

> 彩花さんへ
  
こんばんは。ここではご無沙汰ですね♪
祝辞コメント、ありがとうございます birthday
  
記事の選択がちょっと変わってるけど(笑)
9周年の当日ってことですね。
   
この記事は、見た目ほど難しくないですよ♪
高校1年の教科書通りにやってるだけだから。
僕もこの春、ほとんどゼロからのスタートで、
進み方も超~ゆっくり。。(^^ゞ
まあでも、プログラミングもある程度は何とかなるかな
・・って感触はつかめて来ました♪
    
  
毎日更新っていうのは、字数さえ少なければ、
簡単なことだと思います。
極端な例は、ツイッターで1日1回つぶやくだけとか♪
  
ブログでも、あちこち見てると、
かなり字数の少ないものもあります。
もちろんそれは僕の感覚であって、短い方が
読みやすくていいって人の方が多いのかも知れない。
   
でも、僕はここ数年、平均で2500字くらい
書いてるし、時間さえあればもっと書きたいほど♪
    
ネットだから可能なんですよね。
紙の本で沢山書くと、書き手も買い手も
お金がかかり過ぎます。
売れなくて読まれなくて、出版費用がかさむだけ(笑)
   
ネットなら、僅かな費用でいくらでも書けて読める。
自宅でも電車でも、歩きながらでも。
良し悪しはともかく、凄い時代ですよね typhoon
   
ほとんどネット依存症、ブログ依存症だけど、
あと1年は突っ走ってみるつもりです。
毎日、ハイテンション。明石家さんま状態(笑)
  
10周年の後は、週3回くらいにしたいけど、
自分でも先が読めないですね。
1年後の自分が何を考え、どう行動するのか。
そもそも、ココログが消える可能性もあるし (^^ゞ
同期のOCNブログがもうすぐ消えちゃうし。。
    
まあ、少なくとも1年後に、ブログを止めて
ツイッターやFacebookに移ることは
ないでしょう。あれは僕の趣味とは違う。
  
ただ、ブログを週3回にして、あとは
ツイッターっていう形なら、アリかも♪
で、ツイートをまとめてブログに組み込むとか。
     
   
僕の能力って言っても、単なる何でも屋ですからね。
専門家から見ると、すべて中途半端な人間 happy02
僕自身に言わせると、総合マニアック・ブロガー♪
   
理屈の強さは、将棋が強かった父親ゆずりかな。
言葉の読み書きは、母親が好きなんですよ。
特に書く方は、ずーっと日記を続けてるほど。
ほとんど読んだことないけど、探せば
僕への悪口も色々と書いてるんでしょう(笑)
いや、1回無理やり読まされたもんで (^^ゞ
   
で、そちらが<食べ物ブログ>と化した?
全然OKでしょ♪ みんなが興味を持ってること。
僕には書きにくい分野だから、お任せします cake
  
食べて、寝て、運動する。
本能による動物的行動は、人間にとっても基本。
まあ、食べ過ぎに注意してバランスを保てば、
健全で自然な方向性でしょう。
   
僕の場合は不健全なキャラだから、理屈を
こねたり、妙な事にこだわったりするわけです♪
これはこれで、ある意味、人間らしい事かも。
人間とは、本能が変形した動物だから。。chick
     
   
とにかく、あと1年は頑張ってみるつもりです run
はたして、毎日更新をキープできるかどうか。
って言うか、1年後に生きてるのかどうか(笑)
   
お互い、しぶとくサバイバルしましょう clover
わざわざ、どうもでした。。shine
  
   
P.S. バックアップはしっかり保存しましょうね♪

投稿: テンメイ | 2014年9月 3日 (水) 02時50分

コメントを書く



(ウェブ上には掲載しません)




« 夕闇の多摩川で自転車散歩&24時間TV『はなちゃんのみそ汁』 | トップページ | ☆ブログ公開9周年☆ »