IchigoLatte でプログラミング(0)〜 LED をてんめつさせよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それでは LED をあやつってみよう。

2. |lash>echo>.

12. |lash>ms.
いっしゅんだから⾒のがした⼈はもう⼀度。（[↑]が便利）

13. |lash>vi.
早すぎるのでなおそう。
かき⾜したら[ESC]。

3. |lash>vi.
プログラムをかく画⾯に、今は真っ⿊。（.の前のスペースに注意）

4. |led(1);

この 1 ⾏をかいたら[ESC]で戻ろう。（⼤⽂字⼩⽂字に注意）

5. |lash>ms.
プログラムをスタート、LED ついたかな？
found.〜" が出たりコンピュータが突然リセットしたらどこか間違い、”vi .” に戻ってなおそう

15. |lash>ms.
今度はしっかりついてきえて 1 秒。
"1000" は "1,000 ミリ秒" の意味、好きな⻑さで光らせてみよう。

16. |lash>vi.
では最後に 無限てんめつ をやってみよう。

17. |while(1){led(1);sleep(1000);
led(0);sleep(1000);}
この 4 ⾏、かけたら[ESC]。

6. |lash>vi.
では次、もう⼀度かく画⾯に。

7. |led(0);.
スタート、ついてきえるのが⾒えたかな？

14. |led(1);sleep(1000);led(0);まずはプログラムを真っさらに。

(*)"!not11. |lash>ms

18. |lash>ms(*)反転部分をかき換えよう

かき変えて[ESC]。

.
無限てんめつ のできあがり。（[ESC]で⽌まるよ）
好きな てんめつリズム に改造してみよう。

8. |lash>ms.
プログラムをスタート、今度は LED がきえたかな？

9. |lash>vi.
では次、もう⼀度かく画⾯に。

10. |led(1);led(0);

今度は つけてけす やつ、かき⾜したら[ESC]。
プリント「 http://ichigolatte.shizentai.jp/IchigoLatte-first.pdf 」も参考にしよう！

Project by PCN×前⼩

IchigoLatte でプログラミング(1)〜無限に⽂字を出そう〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それでは画⾯をあやつってみよう。

2. |lash>echo>.

まずはプログラムを真っさらに。

12. |while(1){log(“*”);}
かけたら[ESC]。

13. |lash>ms.
プログラムをスタートすると？

14. |**********************************************************************...
無限 “*” のできあがり！（[ESC]で⽌まるよ）

3. |lash>vi.
プログラムをかく画⾯に。

4. |log(“*”);

これをかいたら[ESC]で戻ろう。

5. |lash>ms.
プログラムをスタート。

6. |*lash>

画⾯に“*”が出たかな？
7. |*lash>vi.
プログラムをかく画⾯に。

8. |log(“*”);log(“*”);

かき足して[ESC]で戻ろう。

9. |lash>ms.
プログラムをスタート。

10. |**lash>[Alt]+[E]で å、[Alt]+[P]で ð など、[Alt]+[なにか]で絵⽂字もでる
よ、好きな⽂字に改造してみよう。

こんどは 2 つでたかな？好きな個数を出してみよう。
NEW

11. |lash>vi.
では無限に出してみよう。
Project by PCN×前⼩プログラムを真っさらにlash>echo>.

log

画⾯に出す

プログラムをかく画⾯

lash>vi.

while(1)

無限にくり返すプログラムをスタート

lash>ms.

IchigoLatte でプログラミング(2)〜 計算をしよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それでは記憶をあやつってみよう。

2. |var“vi

hiru=12;.” でこれをかいて ”ms.” でスタート。

3. |lash>

おや？なにも起きない？
じつは起きてるよ。”var”は「記憶場所を準備せよ」、”hiru”は「記憶場所につける名前は hiru」、”=12”は「12 を記憶して」、つまり「hiru という記憶場所を作って 12 とメモっておいて」という意味。
記憶をしただけだからスタートしても⾒た⽬にはなにも起きない。
4. |varhiru=12;log(hiru);
では記憶の中⾝を確認してみよう。”vi .” でこれをかき⾜す。”log” は「画⾯に出す」というコマンド。

8. |varhiru=12;log(hiru);log(“,”);hiru=11;log(hiru);log(“,”);
12 と 11 がひっついて⾒にくいから間に “,” が出るように。

9. |12,11,lash>これなら⾒やすい。
10. |varhiru=12;log(hiru);log(“,”);hiru=11;log(hiru);log(“,”);var asa=6;log(hiru-asa);log(“,”);
記憶場所はいくつも作れるよ。こんどは “asa” を作って 6 を⼊れてみた。記憶場所どうしで計算もできるから、”hiru-asa”で引き算して朝から昼まで何時間あるか計算もしてみたよ。

11. |12,11,5,lash>

5 時間だね！
⾜し算は”+”、引き算は”-“、かけ算は”*”、割り算は”/”、余り算は”%”、いろんな記憶を作って計算させてみよう。

5. |12lash>

プログラムをスタート、12 が出た、ちゃんと記憶してる。
6. |varhiru=12;log(hiru);
hiru=11;log(hiru);
記憶を書き変えることもできるよ、”hiru=11;”は「やっぱり記
憶場所 hiru は 11 ね」という意味。

7. |1211lash>

こんな感じで 12 と 11 がでたかな？
最初は 12 を⼊れてそれを画⾯に出したけど、途中で 11 に書き換えてそれも画⾯に出したから “1211” 。
Project by PCN×前⼩

NEW
var

記憶場所を準備プログラムを真っさらにlash>echo>.

プログラムをかく画⾯

lash>vi.

プログラムをスタート

lash>ms.

IchigoLatte でプログラミング(3)〜 かずを数えよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それではかずを数えてみよう。

2. |varc=0;log(c);log(“,”);vi でこれをかいて ms でスタート。

3. |0,lash>

そう、0 だね。”c”は記憶場所につける名前、今回はカウント(count)のʻcʼ を名前にしてみたよ。
4. |varc=0;log(c);log(“,”);
c=c+1;
log(c);log(“,”);
さぁ、こんなことをやってみる。

5. |0,1,lash>

0 が 1 になった。そう、”c=c+1”は「c に 1 ⾜したものを c に記憶する」の意味。
6. |varc=0;log(c);log(“,”);
c=c+1;
log(c);log(“,”);
c=c+1;
log(c);log(“,”);では調⼦にのってこうしてみよう。

8. |varc=0;
while(1){log(c);log(“,”);
c=c+1;}
無限のわざはこう、おぼえてたかな？

9. |0,1,2,3,4,5,6,7,8,9,10,11,12,13,

14,15,16,17,18,19,20,21,22,23,24,25,26,...
無限にかずを数えれた！（[ESC]で⽌まるよ）
でも今回は 100 まで数えたい。

10. |varc=0;
while(c<101){log(c);log(“,”);
c=c+1;}
そんな時はこう。”while(1)”は「無限にくり返せ」の意味だけ
ど、”while(c<101)”は「c が 101 より⼩さい時はくり返せ」の意味。
(*)”while(0)”は「絶対にくり返すな」の意味

11. |0,1,2,3,4,5,6,7,8,9,10,11,12,13,

14,15,16,17,18,19,20,21,22,...,99,100,lash>
はい、ぴったり 100！
“c=c+2”なんてこともできるし、カウントダウン”c=c-1”もできちゃう、試してみよう！

7. |0,1,2,lash>

そうだね、また 1 増えて 2。このまま 3,4,5,…と 100 までかぞえていく
プログラム、つくれるかな？
… ちょっと⼤変だね、じゃぁ無限のわざを使ってみよう。
Project by PCN×前⼩

NEW
c=c+1

c を 1 ふやす

プログラムを真っさらにlash>echo>.

プログラムをかく画⾯

lash>vi.

プログラムをスタート

lash>ms.

IchigoLatte でプログラミング(4)〜 カウント装置を作ろう 〜
1. |IchigoLatte

1.1.7 by na-s.jp

lash>
それではボタンをしらべてみよう。

2. |log(btn() );
今回のプログラムはこれ、かけたらスタートしてみよう。

3. |0lash>“0”が出る。

プログラムをスタート。⾒た⽬には何も起きないけど基板上のボタンを押すと LED が光る！“led(1)”はつける”led(0)”は消すだから”led( btn() )”はボタンしだい！
9. |varc=0;
while( btn()==0 ){log(c);log(“,”);
c=c+1;}
こんどは「カウント装置」。”while( btn()==0 )”は「btn()が 0 の時はくり返せ」の意味。こんな⾵に”btn()”はいろん
な場⾯でつかえるよ。

10. |lash>ms

4. |While(1){log( btn() );}無限に出してみよう。

5. |00000000000000000000000000000000

00000000000000000000000000000000
0000000000...
スタートすると無限に”0”が、そこで基板上のボタンを押すと？

6. |00011111111111111111111111111111

11111111111111111111111111111111
1111111111...
こんどは”1”が⼤量に。（[ESC]で⽌まるよ）“btn()”はボタンを調べるコマンド、0 か 1 を返してもらえるよ。

.
スタートすると数字がどんどんカウントアップ、基板上のボタンを押すと⽌まるよ。ぴったり 1,000 で⽌めることできるかな？

11. |60,1061,1062,1063,1064,lash>stdin/out: uart, uart
ボタンで⽌めた時に「stdin/out: uart, uart」
みたいなの出てきたら uart モード(*1)になった印、あわてずもう 1 回ボ
タンを押そう、元に戻るよ。
ぴったり⽌めるのが難しすぎる？じゃぁもっと簡単になるように改造してみてね！
(*1)uart モード: 他のコンピュータと通信するモード

7. |While(1){led( btn() );}“btn()”で 0 か 1 がもらえるなら、こんな具合に”led()”に渡してやるとどうなる？

8. |lash>ms

.

NEW
btn

Project by PCN×前⼩

基板のボタンをしらべる

プログラムを真っさらにlash>echo>.

プログラムをかく画⾯

lash>vi.

プログラムをスタート

lash>ms.

IchigoLatte でプログラミング(5)〜 弾をとばそう 〜
1. |IchigoLatte

1.1.7 by na-s.jp

lash>
それでは弾を⾶ばしてみよう。

2. |lc(3,10);log(“*”);

これをスタート。画⾯の左から 3、上から 10 の場所に “*” が出たかな？（座標は 0 からはじまっているよ）
0

よこ

0

IchigoLattelash>vilash>ms .

31

1.1.7D by na-s.jp

たて*lash>

23“lc(○,△)”は「場所」のコマンド。○が「よこ」△が「たて」。
3. |cls();lc(3,10);log(“*”);
画⾯がごちゃごちゃしているから、きれいにしよう。今度はこの 2 ⾏。
かき⾜した ”cls” は「画⾯をきれいに」というコマンド。スタート
するときれいになってから”*”がでるね。
さて、この弾”*”を右に⾶ばそう。「よこ」の 3 を 4,5,6… と増やしながら描いていけば⾶ぶんじゃないかな？

4. |cls();lc(3,10);log(“*”);
lc(4,10);log(“*”);lc(5,10);log(“*”);Project by PCN×前⼩というわけでかき⾜して 4 ⾏に。スタートすると 3 つでた、けど速すぎて⾶んだようには⾒えない。
5. |cls();lc(3,10);log(“*”);sleep(500);
lc(4,10);log(“*”);sleep(500);
lc(5,10);log(“*”);sleep(500);
よし、これで 3 マスは⾶んだふうに⾒えた。あとは「よこ」を 6,7,8,…
とカウントアップしながらくり返せばいいね。

6. |cls();

var x=3;lc(x,10);log(“*”);sleep(500);
x=x+1;
lc(x,10);log(“*”);sleep(500);
x=x+1;
lc(x,10);log(“*”);sleep(500);
x=x+1;
まず、「よこ」を “x” しちゃおう。

7. |cls();

var x=3;
while(1){lc(x,10);log(“*”);sleep(500);
x=x+1;}
そしたら無限のわざで、おっそ〜〜〜ぃビームのできあがり ^_^ b 。

8. |varx=3;
while(1){cls();
lc(x,10);log(“*”);sleep(500);
x=x+1;}
こんな感じに、くり返すたびに cls すれば弾っぽくなるね。
速度を変えたり、弾を好きな絵⽂字にしてみよう！

NEW

プログラムを真っさらにlash>echo>.

cls

画⾯をきれいにプログラムをかく画⾯

lash>vi

.

sleep

待つ

プログラムをスタート

lash>ms.

IchigoLatte でプログラミング(6)〜 英単語帳をつくろう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それではキーボードをつかってみよう。

7. |Hi!

スタートしたらキーを押そう、[スペース]の時だけあいさつしてくれるよ。“if(inkey()==32)” は「もし キー番号 が 32 なら」の意味。[↑]キーを押したらあいさつするように改造できるかな？
8. |While(1){var k=inkey();if(k==97) log(“Apple,”);if(k==98) log(“Bubble,”);if(k==99) log(“Cable,”);2. |While(1){log( inkey() );}今回のプログラムはこれ、かけたらスタートしてみよう。

3. |00000000000000000000000000000000

00000000000000000000000000000000
0000000000...
キーボードを押してない時は “0” がいっぱい、なにかキーボードを押すと数字が出るけど速すぎて流れちゃう。こういう時は、}お次は英単語帳のできあがり。スタートしたら[a]や[b]や[c]のキーを押してみよう。”k=inkey()” は「キーボードからのキー番号を kという記憶場所にメモ」という意味。”if(k==97)” は「もし kにメモしたキー番号 が 97 なら」の意味。”97” は [a]キー だよ。

a
b
c
d
e
f

4. |While(1){log( inkey() );sleep(1000);}“sleep”だね。

5. |03200000...

スタートすると今度はゆっくり、いろんなキーを押してみよう。
[←]

[→]

[↑]

[↓]

[スペース]

28

29

30

31

32

g
h
i
j
k
l

97
98
99
100
101
102

103
104
105
106
107
108

m
n
o
p
q
r

109
110
111
112
113
114

s
t
u
v
w
x

115
116
117
118
119
120

y
z
A
B
C
:

121
122
65
66
67
:

⼩⽂字の[a]から[z]までの番号はこんな感じ。⼤⽂字の[A]は 65 からはじまってるよ。このキー番号表は「ASCII(アスキー)コード表」といって世界共通の番号表だよ！
好きなアルファベットの単語も加えてみよう！

出てくる数字は「キー番号」。このキー番号をみれば何が押されたかわ
かるってしかけ。1 回押したら 1 回だけ取れて、2 回押したら 2 回とれるね。
6. |While(1){if(inkey()==32) log(“Hi!”);}
はい、あいさつ装置のできあがり。
Project by PCN×前⼩プログラムを真っさらにlash>echo>.

inkey

キー番号をゲット

プログラムをかく画⾯

lash>vi.

if

もしプログラムをスタート

lash>ms.

NEW

IchigoLatte でプログラミング(7)〜 画⾯の中を散歩しよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それでは主⼈公を表⽰してみよう。

2. |cls();lc(16,12);log(“@”);スタートすると画⾯の真ん中らへんに主⼈公がでるね。画⾯は よこ 0〜
31、たて 0〜23 なので、(16, 12)はだいたい真ん中。

3. |while(1){cls();
lc(16,12);log(“@”);}
散歩しているように⾒せるのに パラパラマンガ のわざを使おう。こんな⾵に「消し(cls)て描く(lc, log)」を無限にくり返しておくと超⾼速に主⼈公が同じ場所に描かれるよ、スタートしてみよう。あとは「よこ」に動くために「16」を 17,18,19,… と変えていけばアニメーシ
ョンしていくかも！？
4. |varx=16;
while(1){cls();
lc(x,12);log(“@”);}
さぁ、「よこ」に動くために「16」を “x” にメモ、”lc” に “X” を指定したよ。これをスタートしても⾒た⽬はさっきと同じだけど、“x” の数を変更できれば よこ⽅向 にうごける、って計画。
x=16;
while(1){cls();
lc(x,12);log(“@”);
if(inkey()==29) x=x+1;}

さぁ、「消す」「描く」を無限にくり返している間に、キー番号をチェ
ックしておこう。”if(inkey()==29)”、つまり「もし キー番号 が 29」だったら “x=x+1”、つまり「x を 1 つ増やす」。”29” は [→]キー だよ、散歩できたかな？
6. |varx=16;
while(1){cls();
lc(x,12);log(“@”);var k=inkey();if(k==28) x=x-1;
if(k==29) x=x+1;}[←]キー は ”28”、左に⾏くには “x” を 1 つ減らすよ。”inkey” は「キーボードを 1 回押したら 1 回だけ取れる」のをおぼえてるかな？だから “inkey” で取るのは 1 回だけにしてそれを “k” にメモして、”k” が “28” か “29” かを調べることにしたよ。

7. |varx=16;
var y=12;
while(1){cls();
lc(x,y);log(“@”);var k=inkey();if(k==28) x=x-1;
if(k==29) x=x+1;
if(k==30) y=y-1;
if(k==31) y=y+1;}
さぁ たて にも動こう、「12」を ”y” にしたよ。これで 散歩する主⼈公のできあがり！
主⼈公は絵⽂字に変更しほうだい！

5. |var

Project by PCN×前⼩

NEW
x=x-1

x を 1 へらす

プログラムを真っさらにlash>echo>.

プログラムをかく画⾯

lash>vi.

プログラムをスタート

lash>ms.

IchigoLatte でプログラミング(8)〜 地球を散歩しよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp

さっきの逆、左に消える時に右から出るにはこの 1 ⾏だね、スタートしてみよう。右に進めば左から現れ、左に進めば右から、まるで丸い地球を散歩してるみたい！
5. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜//Tikyuif(31<x) x=0;
if(x<0) x=31;
if(23<y) y=0;
if(y<0) y=23;

lash>
それでは地球を散歩してみよう。

2. |varx=16;
var y=12;
while(1){cls();
lc(x,y);log(“@”);var k=inkey();if(k==28) x=x-1;
if(k==29) x=x+1;
if(k==30) y=y-1;
if(k==31) y=y+1;}
これは前回のプログラム。スタートして画⾯外に散歩するといなくなっちゃうの、ちょっとさみしい。

3. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

if(k==30) y=y-1;
if(k==31) y=y+1;//Tikyuif(31<x) x=0;}(*)”〜〜〜〜 … 〜”は「プログラムの途中部分」の意味だよ

画⾯の よこ は 0〜31、だから「もし x が 31 より⼤きく」なったら“x=0” にしてしまおう。プログラムの下の⽅にこの 2 ⾏を追加、スタートして右はじをはみ出ると、なんと左から登場！”//Tikyu” は「コメント」といって、プログラムを⾒やすくするためだけのもの。
4. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜//Tikyuif(31<x) x=0;
if(x<0) x=31;}

Project by PCN×前⼩}
さぁ、”y” もくわえて上と下もつながるようにしてみたよ！“if” 4 ⾏のおかげで、画⾯の中どこへ⾏ってもはみ出ることがなくなったね！
(*)上に⾏くと下からでてくるなんて、地球 というよりは ドーナツ だね！

6. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜//Tikyu
x=x%32;
y=y%24;}
じつは ”if” を 4 つ使わなくても、これで右から左、下から上につながるよ！”%” は「割り算のあまり」の意味、31÷32 のあまりは 31、32
÷32 のあまりは 0 でしょ？だから右と左がつながるんだ！
7. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜//Tikyux=(x+32)%32;
y=(y+24)%24;}
左から右、上から下の場合は割り算がマイナスになるからうまくいかな
い。だからこうやってマイナスにならないようにしてやるといいね！
同じことをやるにもやり⽅はいくつもあるよ！どれが正解とかでなく、⾃分で思いついた⽅法がとってもかっこいいよ！
プログラムを真っさらにlash>echo>.

//***

コメント

プログラムをかく画⾯

lash>vi.

x=x%32x を 32 で割った余り

プログラムをスタート

lash>ms.

NEW

IchigoLatte でプログラミング(9)〜 ドラゴンキューブをゲットしよう 〜
1. |IchigoLatte

1.1.7 by na-s.jp
lash>
それではドラゴンキューブをだしてみよう。

2. |varx=16;
var y=12;
while(1){cls();
lc(x,y);log(“@”);var k=inkey();if(k==28) x=x-1;
if(k==29) x=x+1;
if(k==30) y=y-1;
if(k==31) y=y+1;//Tikyux=(x+32)%32;
y=(y+24)%24;}
これは前回のプログラム。

3. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

cls();
lc(6,9);log(“1”);lc(x,y);log(“@”);〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
この 1 ⾏をついか、イーシンキューがあらわれるよ。
4. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

var y=12;
var dx=rnd(32),dy=rnd(24);while(1){〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
lc(dx,dy);log(“1”);〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
ドラゴンキューブはどこにあらわれるかわからない、神のキューブ。こうすればスタートするごとにランダムな場所にあらわれるよ。
Project by PCN×前⼩

5. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

lc(x,y);log(“@”);if((x==dx)*(y==dy)) break;var k=inkey();〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
主⼈公がドラゴンキューブにふれる時、x と dx が同じ、かつ、yと dy が同じ、になるよね？ ”(x==dx)*(y==dy)”の ”*” は「かつ」(*1)という意味。 ”break” は「直ちに“while” をやめ」の意味。スタートしてドラゴンキューブにふれると “while” をぬけて、プログラムが終了するね。
(*1)「または」は “+”

6. |varx=16;
var y=12;
while(1){var dx=rnd(32),dy=rnd(24);while(1){cls();
lc(dx,dy);log(“1”);〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
y=(y+24)%24;}}“break” で “while” をぬけたら、次のアルシンキューを出すためにまた “rnd” のところに⾏きたい。だから外側をもう 1 個“while” でくるんだよ(*2)。スタートしてドラゴンキューブをゲッ
トしてみよう、次のキューブがあらわれるね！
(*2)くるまれた内側の⾏には先頭にスペースを 1 個ずつたして⾒やすくしたよん？イーシンキュー “1” の次がアルシンキュー “2” じゃないって？カ
ウント装置のわざ、おぼえてるでしょ！
NEW
rnd(32)32 より⼩さいランダムな数

if(~*~)

かつプログラムを真っさらにlash>echo>.

if(~+~)

またはプログラムをかく画⾯

lash>vi.

break

直ちに while をやめプログラムをスタート

lash>ms.

IchigoLatte でプログラミング(a)〜 シンリュウを呼びだそう 〜
1. |IchigoLatte

1.1.7 by na-s.jp

lash>
それではドラゴンキューブを 7 つ集めよう。

2. |varx=16;
var y=12;
var d=1;
while(1){var dx=rnd(32),dy=rnd(24);while(1){cls();
lc(dx,dy);log(d);lc(x,y);log(“@”);if((x==dx)*(y==dy)) break;var k=inkey();if(k==28) x=x-1;
if(k==29) x=x+1;
if(k==30) y=y-1;
if(k==31) y=y+1;//Tikyux=(x+32)%32;
y=(y+24)%24;}
d=d+1;}
前回のプログラムに 3 箇所ついか、「カウント装置」のわざだね。スタートすると、イーシンキュー “1”、アルシンキュー “2”、サンシンキュー “3”、… と無限にゲットできるね！

3. |varx=16;
var y=12;
var d=1;
while(d<8){
var dx=rnd(32),dy=rnd(24);while(1){〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

Project by PCN×前⼩無限じゃだめ、ドラゴンキューブは全部で 7 つなんだ。だから“while(d<8)”。さぁ、これで 7 つゲットしたらプログラムが終了するようになったね！
4. |〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

y=(y+24)%24;}
d=d+1;}//Sinryu!!!
cls();lc(10,10);log(“È¶Þ²ÊÅÝÀÞ?”);lc(10,11);log(“ì========-”);
さぁ、最後に 神の⿓「シンリュウ」 の登場だ、7 つ集めてみよう！
5. |varx=16;
var y=12;
var d=1;
var t=tick();
while(d<8){〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜//Sinryu!!!
cls();
if(tick()-t < 20000){lc(10,10);log(“È¶Þ²ÊÅÝÀÞ?”);lc(10,11);log(“ì========-”);}else{lc(10,11);log(“...”);}
いつもシンリュウがでるから、素早くあつめた時だけ出るようにしよう。”tick” はストップウォッチ、コンピュータの裏⽅でいつも動いているよ。スタートした時に t にメモっておいて、シンリュウがでる
時の “tick” と引き算しよう。20,000 ミリ秒より早かった時だけシンリュウがでるよ、”else” は「そうじゃなかったら」の意味。
ドラゴンキューブ、完成かな？
プログラムを真っさらにlash>echo>.

tick

ストップウォッチ

プログラムをかく画⾯

lash>vi.

else

if じゃなかったらプログラムをスタート

lash>ms.

NEW