« 置換・互換による行列式の定義~初心者向け | トップページ | レース4日後、ゆっくりジョギングで再始動 »

初めてのプログラミング♪~メモ帳でバッチファイル作成(コマンドプロンプト用)

今まで、何度かプログラミングの本は買ったけど、読んだのは初めてだ(笑)。

もちろん、使ったのも初めて♪ ほぼ完全な素人、超初心者が、マニュアル

本を見ながら、初めてプログラミングの真似事をしてみた様子を、感想付き

でレポートしてみよう。

 

最初に書きたいのは、なぜ今まで挑戦しなかったか。最大の理由は、パソコ

ンが壊れるような気がしてたからだ (^^ゞ 

 

書店に行くと、初心者向けのプログラミングの本はそこそこあるけど、私が欲

しい一言が強調されてないのだ。「この本にしたがってプログラミングしても、

ほとんどの場合、パソコンは壊れないので大丈夫です」♪ こんな感じの文

章を一番最初に書いてくれれば、すぐにその本を買って、試してみたと思う。

 

Windows XP以降、パソコンの暴走は一気に減ったけど、今のVistaでも、

地デジを見てる最中に外部アンテナのUSBケーブルに手が当たったりする

と、いきなり青い画面に英字が浮かんだりする。こうなるともう、手がつけられ

なくて、勝手に終了&再起動するのを待つだけなのだ。

 

この程度なら可愛げがあるけど、かなり前、エクスプローラーでPC内部を

見てたら、いきなり訳の分からない文字が左上からワニャワニャと並び始め

たことがあった。何がキッカケだったか、どうやって対処したのか、もう覚えて

ないけど、その時の強烈な恐怖だけはよく覚えてる (^^ゞ 「これがウィルス

に感染した症状か?」と思ったのだ。英語、フランス語、ドイツ語、中国語、韓

国語、アラビア語、どれでもない不気味な文字が画面に広がる恐ろしさ。。

 

あれは一体、何だったのか、結局分からない。でも、とにかくPCの暴走は手

がつけられないなというイメージが頭に焼きついたから、なるべく余計な事を

したくない。当然、自分のPCでプログラミングなんて論外なのだ。ネットカフェ

で試してみようかな・・・と思ったことなら何度かあるけど(笑)。コラコラ!

 

 

           ☆          ☆          ☆

そんな私が、遂に初体験する気になったのは、年に一度のフルマラソンを無

難に終えて、ホッと一息ついたから♪ 3日経っても血マメが完治しないから、

走る代わりのチャレンジってことで、清水の舞台から飛び降りる思いで決心。

これ、かなり長い間「しみずのぶたい」と読んでた話は以前にも書いたね(笑)

 

140326j   私が買ったのは、本当に初心者向

  けの内容になってる本で、その名も

  ズバリ、『おうちで学べるプログラミ

  ングのきほん』(河村進、翔泳社)♪ 

 

  「学」を除くと、ひらがなとカタカナだ

  けの書名だから、小学生でも分かる

  はず。初心者向けってだけじゃなく

  て、全体を広く浅く見渡してる点も

ポイントだった。どうせ1冊で済むはずはないから、手始めの本として、大き

な見取り図みたいなものが欲しかったわけ。

 

ちなみに、これまたどうしても書きたいのは、「初心者向け」って感じの宣伝

文句の空しさ。これ、ネット上でもよくあるけど、私が5年ほど前にあちこち見

たサイトはどれも、訳のわからない専門用語を説明抜きに使っててパスだっ

た。本もあれこれ開いてみたけど、最初のページだけでいくつも分からない

話や単語が出てるから、論外。こうゆう経験の積み重ねもまた、私をプログ

ラミングから遠ざけてたのだ。。

 

 

          ☆          ☆          ☆

では、いよいよ本題。とにかく私は、自分で書いたブログラミングもどきでPC

140326k  が動くという経験

 をしたかったから、

 本の中盤まではチ

 ラ見で読み飛ばし

 て、直ちに第4章

 第2節(4-2)、

 「手続き型言語に

 触れてみよう」に

 向かった。

 

この見出しの「手続き型言語」とは何なのか、まだ意味はあんまし分かってな

い(笑)。ただ、私が普段から色々使ってるウィンドウズの「メモ帳」を使って、

僅か数行の簡単なプログラミングを行う話からスタートしてたから、流石にPC

は壊れないだろうと思ったわけ♪ 無料ソフトをダウンロードするとか、CDや

DVDを使うとか、一切なし。単に、「メモ帳」にちょこっと書いて保存、その後、

開くだけなのだ。

 

140326i   ちなみに「メモ帳」ってものを知らな

  い人もいるだろうから、一応説明し

  とこう。昔からWindowsに標準で

  入ってるメモ用のソフトで、例えば

  スタートボタンをクリックして、表示

  されるプログラムの中から「アクセ

  サリ」フォルダをクリックすると、「メ

  モ帳」が見つかるはずだ。

 

同じ場所にある「ワードパッド」と比べても軽い動きだし、「Word(ワード)」と

かと比べると遥かに軽い。凄く実用的な文章作成ソフトだ。上図でメモ帳の5

段上にある「コマンドプロンプト」が、後で重要な役割をはたす。

 

 

          ☆          ☆          ☆

で、記念すべき最初のブログラミングは、「バッチファイル」と呼ばれるファ

イルを作って「電卓」のソフトを起動するブログラム作成。

 

ここで、これまた私が強調したいのは、ほとんどのマニュアルの図で、半角

スペースの有無が分かりにくくなってる事だ。初心者にとっては、それだけ

でもう打つ気がしなくなる。私がマニュアルを書くのなら、ちゃんと半角スペー

スの有無まで説明するけどね。赤字を添えるとかして。

 

140326a  とにかく、最初に

 メモ帳で作ったファ

 イルは左の通り♪

 直訳すると、「スター

トせよ 電卓(calculator)の実行プログラム」。

 

140326e_2   ただし、ファイル名の最後(拡張子・・・後述)の部

  分は、この図だと「.txt」(テキスト)にしてあるけど、

  実際は「.bat」。つまり、「バッチファイル」と呼ばれ

るものとして保存した。上図がそのアイコンだ。     

 

最初の図のファイル名が、「.txt」へと変えてあるのは、スクリーンショットで静

140326b   止画を取るため。名前が

  「prog001.bat」のままだと、

  ダブルクリックした時、メ

  モ帳の画面が開く代わり

  に、プログラムが実行され

  て、電卓が現れるのだ。

 

 

(☆追記: 拡張子PC環境によって変わるようだ。私はVistaで、マニュア

       ル通り、 .bat にして成功。他に、Windows NT用の .cmd でも

       成したけど、分かりやすいので基本的に .bat を使う。)

 

 

          ☆          ☆          ☆

「start calc.exe」は極端に簡単な命令文だけど、単なる本の真似ではない。

本だと実は4行書かれてて、電卓の実行について2行、サイト閲覧(ブラウザ

起動)について2行となってた。両方の動作をさせるためだ。

 

私はまず、サイト閲覧の2行はカット、つまり省略。続いて、電卓の2行につ

いても、1行目の「rem 電卓を開く」という文はおそらく不要だろうと思ってカッ

トしてみた。つまり、それは単に読み手の自分が分かるように日本語の説明

を付けてるだけで、コンピューターにとっては無意味だろう。

(☆追記: rem~は「注釈行」と言うらしい。)

 

そう思って、「start calc.exe」とだけ書いて、ファイル名も指示通りにはせず、

自己判断で、「prog001.bat」として保存。無事成功したのだ。初体験の成功、

気持ちいい♪・・・という文章は、一部常連さん向けのサービスってことで(笑)

 

 

          ☆          ☆          ☆

ここで、そもそもバッチファイルとは何なのか気になって、ウィキペディアを

見ると、ちょっと分かりにくい書き方で、「コマンドプロンプト」用のプログラム

だというような話を書いてる。バッチ(batch)とは、まとめたものの事で、コマ

ンドプロンプト用の命令をまとめたのがバッチファイルだ。

 

コマンドプロンプトとは、要するに、コマンド(命令)を打ち込むためのソフト

で、メモ帳や電卓と同じく、最初からアクセサリの1つとしてPCに入ってる。

次のような黒い画面で、何か命令を打ち込めばPCを作動させるのだ。入出

力装置という一般的な意味で、「コンソール」という言い方もするらしい。

 

140326c

 

上図で、最後に白い空欄があるのは、私のPCのユーザー名が入ってるか

ら (^^ゞ 本来は、ユーザーに命令の入力をうながす最後の行のことを「コマ

ンドプロンプト」(命令のうながし)と呼ぶようで、それがそのままソフトの名前

にもなってるようだ。

 

ファイル名の最後に「.bat」という拡張子がついたバッチファイルとは、この

マンドプロンプトに直接入力する代わりに、それを動かすファイルらしい。あ

らかじめ書いて保存できるし、コマンドプロンプトよりメモ帳の方が親しみや

すいから、バッチファイルには十分な価値がある。

 

 

         ☆          ☆          ☆

ちなみに「拡張子」というものをよく知らない人もいるだろうから、念のため

に書いとこう。ファイル名の最後に付く、種類を表す文字列で、代表的なの

が、画像ファイル名の最後の「.jpg」とか、ウェブのページ保存名の最後の

.html」など。ドット(点)に3文字前後のアルファベットが付いてる。すべて

半角。

 

標準の設定だと、おそらく「.bat」という拡張子は表示されないから、あらかじ

め自分で設定しとくと便利かも。環境によって、やり方は違うだろうけど、私

140326d   の場合なら、「スタート」→

  「コントロールパネル」→

  「フォルダオプション」→

  「表示」タブと進んで、詳細

設定の中の「登録されている拡張子は表示しない」の左側に付いてるチェッ

クマークを外せばいい(図は外した後)。プログラミングを終えたら、またチェッ

クを付けた方が、表示がスッキリすると思う。

 

 

            ☆          ☆          ☆ 

140326f2  最後に、もう一

 つ、バッチファ

 イルをお見せし

 よう。これまた、

 本のままではな

 く、自己判断で

 少し変えてある。

私が「prog003.bat」と名付けたこのファイルのアイコンをダブルクリックすると、

電卓が3つ開いて、下のようなコマンドプロンプトの画面が表示される。

 

140326g

 

メモ帳のプログラムの1行目。「@echo off」とは、プログラム自体をコマンドプ

ロンプトに表示させないためらしい(ウィキの説明)。2行目はまだ解読できて

140326h  ないけど、「3」の

 部分で、開く電卓

 の個数を決めるよ

 うだ。

 

 2行目の最後と5

 行目の最初にカッ

 コが付いてるのは、

人間が見て分かりやすくするためであって、コンピューターにはカッコ前後の

改行は関係ないらしい。超初心者の私が見ると、カッコの位置が変だと感じ

てしまうね♪

 

3行目は、「・・個目の電卓を起動」とコマンドプロンプトに表示するための命

令。6行目の「pause」は、一時休止の意味だろうから省略してもいいだろう・・

と思って省略したら、コマンドプロンプトが一瞬映ってすぐ消えてしまった。ただ

し、電卓は3個起動したから、単なる表示の指示文だろう。本来の命令の実

行とは無関係だと思う。

 

 

☆翌日の追記: 2行目は、「以下の命令を、Aという変数のみ1から3へと変

           化させて、反復せよ」という意味のようだ。

 

 

          ☆          ☆          ☆

実際には、英語版ウィキの「Batch file」の項目も参照しながら、もうちょっと

色々試してみたけど、今日の記事はもう終了。いやぁ、これは個人的にブレ

イクスルーだね♪ 画期的な一歩となった。今後は少しずつ、JavaScriptや

C言語にも挑戦していく予定。ただし、パソコンが壊れなかったら。。(笑) 

 

数学の計算、画像・動画関連、ゲーム等々、一気に夢が広がった気がする

けど、マニアックな性格だけにハマリ過ぎが怖いかも (^^ゞ 気を付けなきゃ。

では、また明日。。☆彡

 

 

 

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

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

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

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

                  (3)~REM 文、GOTO 文、IF 文、各種トラブル・・

                  (4)~IF 文、FOR 文、NEXT 文とループ(繰り返し)

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

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

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

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

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

 

                                     (計 4797文字)

|

« 置換・互換による行列式の定義~初心者向け | トップページ | レース4日後、ゆっくりジョギングで再始動 »

「パソコン・インターネット」カテゴリの記事

コメント

この本私も読みました。いろんな言語の特徴が初心者にもわかりやすく解説されていて、良い本だと思います。

投稿: U | 2014年3月29日 (土) 17時47分

> 友人U

おっと、超久々のコメントは意外な所に来たね♪
これ読んだってことは、やっぱ平積みだったのかな。
売れ線なのかね。確かに、よく書けてると思う cherryblossom
  
広く浅く、丁寧で心地良く。初心者にピッタシ。
足りない部分は他を使うか、自分の試行錯誤ってことで。。shine

投稿: テンメイ | 2014年3月30日 (日) 04時37分

コメントを書く



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




« 置換・互換による行列式の定義~初心者向け | トップページ | レース4日後、ゆっくりジョギングで再始動 »