2010年7月3日土曜日

i = i + 1;

こんにちは^^
昨夜はちょっと・・・インワールドで
スクリプトについてお話する機会がありましたw
スクリプトを扱う中で、よくある表現で、
i = i + 1;
" i "じゃなくてもなんでもいいんですけどね^^;
「i と i + 1 が等しいってどういうこと?」と投げかけられました(;´▽`A``
なるほど、そうゆう視点があったのか・・・と改めて感じてしまったのですが、
ゆわれてみれば、確かにそうですよね・・・
等しい訳がないw
まぁでも、これは捉え方というか記述の仕方っていうのか、
これは、方程式ではないんですよね^^
"i  に 1 を足したものを i に代入しなさい"
っていう意味になります
これだとなんとくスッキリしますよね^^
それ以上でもそれ以下の意味では・・・ないです^^
ちなみに、この" i "などは、変数と呼ばれていて、
好きな値を入れることができます(^ー^* )フフ♪
ただし、コンピュータはこの" i "がなんなのかわからないので
事前に" i  "が何なのか教えておかないといけませんw
" i "が整数なのか小数なのか・・・それともベクトルなのか・・・
たいていプログラムの先頭に記述することになりますが、
このことを変数を宣言する、なんてゆったりしますw
もしも " i "で小数を扱いたいとなれば、
float i; 
と書きます
" ; " って必ず行末にありますが、
これは、そのままプログラムの行末を意味します。
これがないと、エラーになりますw
コンピュータはどこまでがプログラムの行末かがわからないので、
こうして指示している・・・のです(たぶんw)
さて、インワールドでスクリプトを作ると、↓ こんなのありますよねw
    touch_start(integer total_number)
    {
        llSay(0, "Touched.")
   }

↑もう、SLしてる人ならだれでもみたことがある、デフォのスクリプトの一部抜粋ですw
この中でtouch_startのカッコの中、integer total_numberについてですが、
total_numberとゆう名前の整数を使います とゆっています
(厳密には引数(だったかな?)と・・・いいます)
で、
これですね、
あえて、total_numberって使わなくても・・・いいんです^^
自分の解りやすい名称でOKです
ですので、
touch_start(integer num)
でも構いません
まぁ、あとで他の人が見る可能性があるときは、
元からの表現で書いたほうがいいのかもしれませんが・・・^^;
自分の解りやすいように書ければ、もっとスクリプトも
楽しく??なるかもですね>┼○ バタッ



2 件のコメント:

  1.  数学ってのは英数字を使って既にある法則を表すものなんだけど、
    プログラムの場合は一定ルールの元で英数字を使って法則を生み出す
    ものだからね。
     だからi=i+1は「左のiはi+1と等しい事とする」って法則を生み出
    してるわけやな。つまり「俺がルールだ!」って感じ。そうして自分
    の世界の法則を生み出して行く事が判って来ると面白くなるね。

    〜〜〜〜
    書いた直後なのにsayの行の";"抜けてるでw

    返信削除
  2. ERROR : Syntax error
    >┼○ バタッ

    返信削除