step7:変数を使ってみよう
								そろそろスクリプトが長くなってきましたよね。こうなると、複雑で読 みにくくなってくることがあります。そんな時に便利なのがコメントで す。コメントとは、スクリプトの中に注釈として好きな文字を入れてお くこと。でも、それが命令と勘違いされては困るのでコメントの書き方 にもルールがあります。たとえば、
									
									; この行はコメントでーす
										mes "メッセージ"; この部分はコメントでーす 
									
									のように使います。つまり
								
								
								
									「;(セミコロン)」の後はコメントになり、無視される。
								 
								
								ということです。「;」の後には命令を書こうが、文章を書こうがスク リプトの実行には何の影響もありません。ですから、
									
									exec "notepad" ; メモ帳を起動
									
									のように気軽に注釈をつけておくことが可能です。こうすれば、後でス クリプトを見直した時にも、どの行で何が行なわれているかが解りやす くなるので、おすすめですよ。
									
									さて、それでは本題の「変数を使ってみよう」に入りましょう。 そもそも変数って何なんだー、って思うでしょう。いままでは、たとえ ばカレントポジションを変更したければ、
									
									pos 150,80 ; カレントポジションを(150,80)に変更
									
									のように数値を指定していました。これを変数というもので置きかえる ことができます。すると、
									
									x=150 ; 変数xに150を代入
										y=80 ; 変数yに80を代入
										pos x,y ; カレントポジションを(x,y)に変更 
									
									こうなります。これでも、カレントポジションは(150,80)に変更されま す。ええーーー?? どうしてーー??
									
									変数はよく、「いれもの」にたとえられます。数値を記憶しておく、「 いれもの」です。「いれもの」には名前をつけておきます。たとえば、
									
									「x という名前のいれもの」
									
									「いれもの」には当然、中に何かを入れることができます。
									
									「xといういれものに100という数字を入れる」
									
									といった感じで、中に数字を入れておくことができます。この「いれもの」が、すなわち変数。だから、上の言葉は、
									
									「xという変数に100という数字を入れる」
									
									ということだと思ってください。これをスクリプトで書くと、
									
									x=100
									
									になります。このように変数(いれもの)に数字を入れることを「代入」 と呼びます。代入を行なうと、変数に数字が記憶され、それ以降はその 変数を数字のかわりとして使うことができるようになります。
								
								
								
									「代入」とは、変数に数値を覚えさせること
										「代入」は、「変数名」+「=(イコール)」+「数値」で行なう
								 
								
								というのをよく覚えておいてください。
								
									
										| 
											 hensu 
										 | 
										
											 = 
										 | 
										
											 1234 
										 | 
									
									
										| 
											 | 
										 | 
										 | 
										
											 | 
										 | 
									
									
										| 
											 変数名 
										 | 
										
											
										 | 
										
											 代入する数値 
										 | 
									
								
								
								代入だけは、他の命令と違って書き方が特殊ですが、算数の式と似てい るのでわかってしまえば簡単です。 変数名は、英文字(20文字以内)の名前をつけたもので、 覚えさせられる数値は、「123」のような整数値か、「1.5」のような小数値になります。
									
									変数名には、さらにルールがあります。命令と同じ単語は使ってはいけ ません。命令か変数かわからなくなっちゃいますからね。あと、前に説明したラベルと同じ名前を使ってもいけません。
									
									変数は好きな時に代入することができ、スクリプトの中で何度でも変更 することができます。1つの変数が覚えているのは1つの数値だけです から、最後に代入した数値が常に記憶されてることになります。 たとえば、
									
									hen=150
											cls 1
											hen=50
									
									のようなスクリプトは、1行目で変数henに150という数値を代入しまし たが、3行目には変数henは50に変更されています。この時点ですでに前 に代入した150は消えてなくなってしまいます。
									
									でもここで言っているだけでは、やっぱりいまひとつ解りませんよね。 そこで、変数の記憶している数値を実際に確かめてみましょう。 前に出てきた「mes」命令でそれができます。「mes」命令は、
									
									mes "文字列"+変数名
									
									で文字列の後に変数の内容を表示できるのです。「+(プラス)」の記号 を使うことで文字列と変数名をどんどんつなげることもできます。 これを使った、次のようなスクリプトを入力してみましょう。
									
									hen=150
										mes "現在の変数henの数値は、"+hen+"です。"
											hen=50
										mes "現在の変数henの数値は、"+hen+"です。"
											stop
									
									このスクリプトを実行してみると…。
									
									現在の変数henの数値は、150です。
										現在の変数henの数値は、50です。
									
									というように表示されます。 つまり、2行目の時点では変数henは150という数値を記憶していました が、3行目に新しく代入があったので、4行目では変数henは50という数 値になっていたのです。
									
									さあ、ここまでわかったところで、もともとの例になっていたスクリプ トに戻ってみましょう。
									
									x=150
											y=80
											pos x,y 
									
									というスクリプトは結局、
									
									pos 150,80
									
									と指定しているのと同じことなのです。 数字の代わりに、名前を使ってるだけなんじゃないかー。と思うかもし れません。いやいやしかし、これは実はとても応用のきく便利なものな のです。そのカギを握るもの。それが数式です。
									
									いままでパラメータとして数値を入れる場所には、100とか20とかいう 数を直接書いていました。そしてさらに、それ以外に変数を書いてもい いということも覚えましたね。でもでもしかし、いやいや実は、 数式を書いてもよかったのです。 えーーー?? 今度は数式?? また別な要素が?? と思うのは間違いで、数字と変数を計算式とおり混ぜて書くことができ るということなのです。それが数式。つまり、
								
								
								
								
									数式とは、数値と変数、またはそれらを計算式でつなげて書くこと
								 
								なのです。計算式とは、つまり
									1+1
									とか、
									125+200-32 
									とか。いわゆる、算数の式です。だから、
									pos 150,100
									じゃなくて、
									pos 100+50,50*2 
									でもいいのです。これも「150,100」と同じことになります。 いやいやちょっと「50*2」って何?? と思うでしょう。HSPでは、計算 で使う記号が次のようになっているのです。
								
								
								
								
									「+」は足し算
										「-」は引き算
										「*」は掛け算(×)
										「/」は割り算(÷)
								 
								キーボードには「×」「÷」といった記号がないので、かわりに別の記 号を使っています。だから、「50*2」は50掛ける2のこと。これに変数 をまぜることができるわけですから、
									
									x=30
											y=100
											pos x,y
										mes "1.ばんめ"
											pos x,y+50
										mes "2.ばんめ" 
									
									のように、使用できます。この例だと、(30,100)と(30,150)にメッセー ジが表示されます。しかもこの場合、「もうちょっと全体を上にずらし たい…」という時に、2行目のy=100を、y=80などに変更するだけで、2 つのメッセージの場所をいっきに変更することができるというわけ。 この例だとメッセージが2つだけだから楽だけど、これが10行くらいあ るメッセージだとしたら、いちいち「pos」命令の数値を変更していく 苦労と比べるとすごく便利になりますよね。
									
									数式はさらに、変数の代入でも使うことができます。
									
									x=5
											y=10
											z=x*8/y 
									
									のように使ってみたり、
									
									hen=0
											hen=hen+1 
									
									のように使います。上の例では、1行目で変数henは0が代入されていま す。でも2行目でどうなっちゃうんでしょう?? 2行目で変数henに代入される前の時点での変数henは、0です。それに1 を足したものを、ふたたび変数henに代入するわけですから、変数henは 1になります…と、そんな複雑に考えなくても、
								
								
								
								
									hen=hen+1 は、変数henの内容に1を足す
									
								 
								というように覚えておくだけでOKです。このように、もとの変数の値を 計算によって変化させる…というパターンはよく使うことが多いので、 決まり文句だと思って覚えてしまってもいいでしょう。 さあ、だいたいの変数の使い方、理解できましたか?? この次のパートでは、さらにその応用を説明していきましょうね。