2017年4月17日月曜日

プログラミング学習五【手を動かさないと始まらない】

プログラミングとは何なのか、まず知るべきことは何なのか、どうすればできるようになるのかを説明するブログ。

話の内容

○コンピュータは決まった順番で処理する

スマホで閲覧されている方へ
このブログは画面横幅を広くしてあります。スマホ解像度での閲覧は厳しいと思いますので、ウェブバージョンへどうぞ。

ポク太郎です。

前回使ったプログラムを眺めてコンピュータの処理する順番について頭に叩き込みます。

スマホで閲覧されている方へ
このブログは画面横幅を広くしてあります。スマホ解像度での閲覧は厳しいと思いますので、ウェブバージョンへどうぞ。

【ご注意】
説明のために、WebMSXエミュレータ(クリックするだけでブラウザ上で動きます)を使用します。別ウインドウで開いておいて下さい。
他の学習から続けて行う方は一旦リセットを行ってください。(左下の電源マークをクリックーReset)

プログラム中にある[ENTER]の表記は、打ち込むのではなくエンターキーを押すという意味です。※命令自体はMSX用なので一切覚える必要はありません。上にある“話の内容”が伝わればいいんです。

コンピュータは決まった順番で処理する

前回使用したプログラムが保存してあるフロッピーディスクです。フロッピーディスクの使い方はこちら

前回のプログラムを読み出してみてください。

前回のプログラムです。
●例4-1
行番号プログラム命令の内容
10cls 画面を全部消せよ
20A$="Poku" 変数A$に値を代入せよ
30B$="James.Rambo" 変数B$に値を代入せよ
40M1=len(A$) 変数M1にLEN()関数の戻り値を代入せよ
※LEN()関数は文字の数を返す関数でしたね。
50M2=len(B$) 変数M2にLEN()関数の戻り値を代入せよ
60KEI=M1+M2 変数KEIにM1とM2を足し算した結果を代入せよ
70SA=M1-M2 変数SAにM1からM2を引いた結果を代入せよ
80PRINT A$,B$ 変数A$とB$を表示せよ
90PRINT "Moji No Kazu" "Moji No Kazu"という文言を表示せよ
100PRINT M1,M2,KEI,SA 変数M1、M2、KEI、SAを表示せよ
110C$="(c) "+A$+"."+B$ 変数C$に"(c)"と変数A$と"."(ピリオド)と変数B$を
足し算したものを代入せよ
文字列を足し算すると文字列をつなげることができます。
120PRINT "" ""(空白)を表示せよ
130PRINT C$ 変数C$を表示せよ
140PRINT "All Rights Reserved" "All Rights Reserved"という文言を表示せよ

ここでコンピュータが処理をする順番に着目します。

命令にはやってもらいたい順番があります。人間は命令をたくさん出しますが、順番を効率よくコンピュータに伝えるためにルールがあります。

コンピュータは先頭から始まり、上から下へと順番に命令を遂行する。
これがルールです。

強調するために下のように掘り下げた表現で説明します。

もし上のプログラムで20行目に100時間かかる処理があったとしても、30行目が実行されるのは20行目が完了した後です。必ず順番を守ります

また、もし上のプログラムで20行目に永遠に終わらない処理があったとしたら、永遠に20行目をやり続けます。
「コンピュータは1秒間に100万回の計算ができるケナゲな子」と考えるとよいと思います。「やれ」と命令されたらいつまでもやり続けます。


ルールはホントにそれだけ?

“先頭から順番に一つづつ”というのは分かりました。でもホントにそれだけ?

・それだったら、下のように命令を永遠に書いてやらないといけないぞ?
10 print 1
20 print 2
30 print 3
40 print 4
50 ...
・何かを判断してあるときはこっちの計算、あるときは別の計算ってできないの?

などの疑問が発生します。

そこで、どんなプログラム言語でも必ず用意されているのが、
ループ  …繰り返しの命令
条件分岐 …もしこうならこの処理、違うなら別の処理をせよという命令
の二つです。

この二つの命令を駆使し、自分の思い描くプログラムを構築していくことになります。

↓この言葉は覚えておきましょう。
ループ」と「条件分岐」です。


次回とそのまた次回に命令の順番を変更するループと条件分岐を説明します。



話の内容

こんな話でしたが内容は伝わりましたでしょうか。
○コンピュータは決まった順番で処理する


プログラミング学習
学習一その場で触って“変数”を理解
学習ニ利用できる“部品”の一つ-四則演算と剰余を理解
学習三利用できる“部品”の一つ-関数を理解
学習四“部品”を使ってかんたんなプログラムを作る
イマココ→学習五プログラムが「命令の順番を書き記したもの」ということを実感
学習六“順番を変える命令”の一つ-ループを理解する
学習七“順番を変える命令”の一つ-条件分岐を理解する
学習八プログラムを組めるようになるにはどうするべきかを理解する


スポンサーリンク



↓ ランキングに参加しています!(Ctrlキーを押しながら) ↓

blogramのブログランキング

ポク太郎の「俺の説明聞いてくれ」 コンテンツ
ポク太郎の「俺の説明聞いてくれ」最キラー記事 IT関連
電気回路やプログラムの記事。元々のメインコンテンツ。
UWSC奮闘記
プログラミングのできる子に
デジタルの世界って
映画・ドラマ・芸能
ハリウッドが主のエンターテイメントの記事。最近は似顔絵多し。
戦士の息抜き
ブログ運営
AnalyticsやSerchConsolなどの使い方、アクセスアップに関する話題。
アドセンス関連
他のGoogleツール
その他
アホのもくろみ
アホの雑記
取りとめもなく好き勝手に書く記事。不本意にも一番人気だったり。
役に立つかも
休むに似たり
好き勝手に書く
落書き漫画
何故人気なのか全く解らない数コマ漫画。結局最大コンテンツに。
物思いに耽る
免責事項 ホームへ戻る

スポンサーリンク





0 件のコメント:

コメントを投稿