Ichigojam

Ichigojamのプログラミング初級2「キーコードの取得と表示」

★累計PV数:2,037views アクセス頂いてありがとうございます! (*ᴗˬᴗ)⁾⁾ 
 
 
いつも「みなラボ」にアクセスいただいてありがとうございます!(´∀`*)ノシ
▼「みなラボ」は「ブログランキング」と「ブログ村」の2つのランキングに参加しています!クリックで応援していただけると、もの凄く励みになります!↓(∩´∀`)∩ ※右クリック(または、長押し)「新しいタブで開く」が非常に便利です♪
 

 
ブログランキング・にほんブログ村へ

※↑それぞれクリックで「みなラボ」へ1票応援&「みなラボ」のランキング状況をご確認いただけます! 


こんにちは!や~べ~です。

今回は、Ichigojamのプログラミング初級2「キーコードの取得と表示」、ということで記事を書いていきたいと思います。

 
キーボードのキー1つ1つに割り当てられている数値=「キーコード」を取得し、その数値をモニターに表示させるプログラムを創ってみましょう!

キーを押すと、こんな風に数字が表示されれば大成功です!↓(写真)

「キーコード」の表示

 
それでは、プログラミング方法を詳しく説明していきたいと思います。

 

Ichigojamのプログラミング初級2「キーコードの取得と表示」

まず、「キーコードの取得と表示」のコードを書いておきます!

10 CLS
20 I=INKEY()
30 IF I<>0 THEN PRINT I
40 GOTO 20

 
こんな風に書けましたか?↓

キーコード取得プログラム

 
ここまで書いてキーボードの「F5」を押せば、プログラムが実行されます。

 
画面に何も表示されていないと思いますので、何か好きなキーを押してみて下さい。

なにかしらの数字が表示されると思います。

 
確認できましたでしょうか?

 
このなにかしらの数字は「キーコード」と呼ばれるもので、キーによって表示される数字が決まっています。

 
続いては、その「キーコード」について、説明していきます。

 

キーコードについて

押したキーに対応して、決まった数字が表示されるので、これから色々なプログミングをしていく中で使えそうですね!

例えば、「A」が押されたらジャンプとか「B」が押されたらダッシュとか、個々のキーを判別して、それそれに違ったプログラムを対応させれば、個々のキーにそれそれの別の役割を与えることができます!

 
キーの種類に対応するキーコードはコチラ↓を参考にしてください!

キーコード一覧
http://faq.creasus.net/04/0131/CharCode.html

key-code1

 

「キーコードの取得と表示」プログラムの解説

※↓こちらの記事もIchigojamのプログラミングについて、入門的な内容で書いてますので、併せて読んでいただければと思います。

Ichigojamのプログラミング初級1「Lチカ」
https://share-lab.net/ichigojam3

ichigo-lchi-1

 
では、今回のプログラムを解説していきたいと思います。

プログラムの行番号については、Lチカの記事で触れたので、今回は割愛します。

 
今回のプログラムには大きな特徴が二つあります。

 
一つ目は、IF文が使われており、条件によって命令が変化します。

 
二つ目は、GOTO文で繰り返し動作(無限ループ)します。

※Lチカのプログラムも無限ループしてるのですが、書き忘れてしまいました。。。

 
それぞれについて、少し解説します。まずは、IF文から。

 

IF文

もし●●ならば○○する。

という、条件分岐を使ったプログラミングがIchigojamでも可能です。

 
書き方)

IF ●● THEN ○○

 
●●の部分には、条件文を書きます!↓

 
記述例)

 

I<>0

⇒「I」という入れ物に入ってる数字が0でなければ、

 

I==0

⇒「I」という入れ物に入ってる数字が0ならば、

 

I<=0

⇒「I」という入れ物に入ってる数字が0以下ならば、

 

I<0

⇒「I」という入れ物に入ってる数字が0より小さければ、

 

I>=0

⇒「I」という入れ物に入ってる数字が0以上ならば、

 

I>0

⇒「I」という入れ物に入ってる数字が0より大きければ、

 
○○の部分には、動作を書きます!↓

 
記述例)

 

PRINT I

⇒モニターに「I」という入れ物に入っている数字を表示させる。

 

LED1

⇒LEDを光らせる。

 
など。

他にも、音を出したり、数字を代入したり、計算したり、色々な動作を設定することができます。

詳しくは、リファレンス↓を参考にして下さい。

IchigoJam BASIC リファレンス ver 1.2
http://ichigojam.net/IchigoJam.html

refarenns1

 
続いて、無限ループについて。

 

無限ループ

↓これは、先ほど書いたプログラム全体です。

 

10 CLS
20 I=INKEY()
30 IF I<>0 THEN PRINT I
40 GOTO 20

 
プログラムは行番号の小さいものから順に実行されていきます。

10、20、30と順番に実行されます。

40にGOTO文が書かれてなければ、40を実行するとプログラムは終了します。

 
しかし、このプログラムの場合は、40にGOTO文で「20へ進め」と書かれています。

こうすることで、20に戻って、また、30、40と進んで、また20へ戻るということを無限に繰り返すようにプログラミングされています。

これを「無限ループ」と呼びます。

 
無限ループはプログラムの特殊な使い方ではなく、ほぼ全てのプログラムで使われている一般的な手法です。

何かしらのキー入力を待つ場合には、必ず使われています。

 
モニターに変化が無くても、コンピューター内部では同じプログラムを常に繰り返しループさせながら、入力が入ってくるのを待ち構えているのです。^^

 
それでは、今回のプログラムを1行づつ見ていきましょう!

 

1行ごとの解説

 

10 CLS 

CLSで画面を全て消してまっさらにします。

 

20 I=INKEY()

「I」という入れ物に、押されたキーのキーコードを格納する。

 

30 IF I<>0 THEN PRINT I

もし「I」の中身が0でない場合、モニターに「I」を表示する。

※0でない場合=1以上、又は-1以下の場合

 

40 GOTO 20

行番号20へ進む。

 
これで、今回のプログラムの各行で行っていることは理解できたと思います。

 
続いて、今回使ったコマンドの解説をしていきます。

 

「キーコードの取得と表示」プログラムのコマンド解説

 

コマンド「クリア スクリーン」

 
CLS

画面を全部消す。

 
記述例)

CLS

 

コマンド「インキー」

 
INKEY()

キーボードやUARTから1文字入力する。
(入力がない時は0、UARTから0が入力された時は#100)

 
記述例)

PRINT INKEY()

 

コマンド「プリント」

 
PRINT数か文字列

文字を表示する。(文字列は"で囲む、";" で連結できる)

省略形⇒?

 
記述例)

PRINT 10

PRINT "HI!"

? 10

? "HI!"

 
今回紹介したコマンドやその他のコマンドは全て公式ページにまとめられていますので、そちらを参考にして下さい!↓

IchigoJam BASIC リファレンス ver 1.2
http://ichigojam.net/IchigoJam.html

refarenns1

 
せっかく創ったプログラムが消えてしまわないよう、SAVEコマンドを使ってプログラムを保存しておくと良いと思います!

 

まとめ

Ichigojamのプログラミング初級2「キーコードの取得と表示」、ということで記事を書かせていただきましたが、いかがでしたでしょうか?

プログラム自体はそんなに難しくなかったと思います!^^

キーコードを取得できると、色んな動きに応用できると思うので、ぜひ面白いプログラム考えてみて下さいね!^^

 
プログラミングに重要な「IF文」と「無限ループ」の考え方は今後プログラムを書いていく上で、必要不可欠な考え方になると思うので、しっかりと覚えておきたいですね!

IF文を使えると、条件で動作を選ぶことができるので、よりプログラミングっぽくなると思います!^^

 
的確に条件を設定する為にも、条件文の使い方を色々と試してみて、条件文を間違えることなく書けるようにしておくことも重要だと思います。

 
じゃあ、今回はここまでっ!!

ではではっ!(´∀`*)ノシ

 

オススメの書籍

「Amazon」

みんなのIchigoJam入門 BASICで楽しむゲーム作りと電子工作

 
こどもパソコンIchigoJam はじめてのでんし工作

 

ランキング

 
↓ランキング参加してます!よろしければ、クリックで応援して下さいっ!

にほんブログ村

 
↓こちらもお願いしますっ!

人気ブログランキングへ
 

こちらの記事もオススメ!(>∀<)ノ☆
 
楽天市場のお買い物でもらえるポイント(ポイントアップ含む)と同時に、さらなる上乗せポイントを確実にゲットできる方法(※現金への換金も可)
 
【エントリー忘れで損してるかも!?】楽天市場お買い物マラソン&楽天市場スーパーセールのお得なポイントアップキャンペーン、クーポン、SPUなど、おすすめエントリー11選一覧まとめ
 
僕が「AFFINGER5」を激推しする「3つの理由」~WordPressブログ収益化への近道のために~
 
たぶん新型コロナウイルスに感染したであろう僕が完治するまでの症状を記録した闘病日記
 
Androidスマホで楽天モバイルの申し込みができない時の解決方法
 
【7/1までに申し込み完了で1回線目は1GBまで無料!(10月末まで)】急げ!楽天モバイルが最大25,000ポイント還元キャンペーン実施中!【祝300万回線達成】
 
『2022年更新版』Windows11も可! Movie Maker「ムービーメーカー」をダウンロードする方法
 
嫁の遺伝子検査結果をコソッと紹介(笑)GeneLife(ジーンライフ)の肥満遺伝子検査DIET(ダイエット)を試してみた結果。。。
 
【2022年版】(6/17更新)メルカリ匿名配送「らくらくメルカリ便」「ゆうゆうメルカリ便」の使い方、送料・サイズ・重量一覧&出品手数料について
 
 

こちらの記事もよく読まれています。↓(※広告含む)

 

 

最後までお読みいただいて、ありがとうございます。

もしこの記事を気に入っていただけたなら、SNSで共有していただけると、とても嬉しいです!どうぞ、よろしくお願いいたします!m(_ _)m

▼「LINEいいね」ボタンを押して、この記事をタイムラインでシェアして頂けると、非常に喜びます!(∩´∀`)∩
 

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

Twitterで『みなラボ』をフォローしよう!

▼「Feedly」、「RSS」、「Push7」での購読はこちらから設定して頂けます!
 
follow us in feedly
 
 
▼「みなラボ公式LINE」の友だち追加はこちらからお願いいたします!
新規記事更新時に「お知らせ」させて頂きます!
 

-Ichigojam
-, ,

© 2024 みなラボ