いつも感謝しています。Nです。
前回の記事「面倒くさがり屋さんは素質がある」
http://ameblo.jp/engineertalksc/entry-12091579604.html
で、プログラムを整理する視点を説明しました。
今日は、Helloを自分の好きな位置に表示したいと思います。
私がこのブログを立ち上げた理由の一つに「どのように考えてプログラムを作り上げてゆくのか」を皆さんと一緒に経験していきたいというのがあります。
もちろん技術的なことも重要なのですが、私がもっと大事だと思っているのは、そのプログラムを作り上げてゆく過程を経験することだと私は考えています。
本ブログが読者さんの経験値を増やすものになれば良いなと思っています。また、それが刺激となり読者さんの内部からアイデアが出るようなブログにしていきたいと思っています。
まだ「アイデアなんて、全く出ないよ」という方もいるかもしれません。でも安心してください。その場合は、お送りしているソースファイルの一部を変えるということをやってみてください。例えば、HelloをHiにしてみるとか、Helloをスペースにしてみるとか、そういうことを、積み重ねてみてくださいね。
小さなことを積み重ねることで、人は成長していくのだと私は思います。
あなたが「できない」と思うことがあったとします。その場合、その「できない」ことを小さく小さく刻んでいきます。そうすると、「できない」と思ってたことも「できる」と思える瞬間がやってきます。そしたらそれを「やる」。これを積み重ねることで、あなたの能力が向上していきます。
例えば、腕立て伏せを100回連続でするという目標を持ったとします。しかしこれが「できない」と感じた場合、これを小さく小さく刻んでいきます。50回は?、40回は?30回は?
20回は?10回は?9回は?8回は?7回は?6回は?5回は?4回は?3回は?2回は?1回は?
そして、「あっ、1回なら出来るかも」と思えたとします。そしたら、1回やる。そしてその1回を続けてゆくうちに、「あれ?2回も出来るかもなぁ」と思えるようになったら、2回をやる。
このように、プログラムを作る上でも「自分に実行可能なステップ」を見つけてそれをやることが大事だと思います。
更に「自分に実行可能なステップ」が出来たら、「達成感」を味わうということも意識してみてくださいね。
出来たことに意識を向けて、「よく、やった!。凄い!、前進したぞ!」と自分を思いっきり褒めてあげましょう(笑)
さて、今回のブログテーマ「Helloを自分の好きな位置に表示しよう」をやっていきましょう。
文字表示の位置を変えるには、
printf("¥033[%d;%dH", (表示行数字),(表示列数字));
で行います。
今回提供しているhello4.cでは、
#define setPosition( x, y ) printf("¥033[%d;%dH", (y),(x) )
の部分で、setPosition(x, y)を定義し、
setPosition( 70, 20 );
の部分で、70列目、20行目に文字表示をしなさいとなっています。
Step1:以下のリンクより、今回のソースファイルをダウンロードしてください。
https://www.dropbox.com/s/h851id7zt98et0a/hello4.c?dl=0
Step2:ファイル名はhello4.cとして、「3つの手順」でプログラムを実行してください。
Step3:hello4.cを改造してみましょう。
・画面上の1行目、5列目にHelloを表示してみましょう
・画面上の好きな場所に、Helloを表示してみましょう
・画面上に、複数のHelloを、好きな場所に表示してみましょう
Step4:もしアイデアが浮かんだら、それも実行してみましょう
Step5:達成感を味わいましょうね
「よくやった!、凄い!、前進したぞ!」