アクセスカウンター アクセスカウンター アクセスカウンター
 since August 19, 2005 代入と式の違いについて with  ことのはの散策  ことのはWeblog  情報学の散策と思索Weblog

情報学の散策と思索

 

    代入と式の違いについて

                                                                                2012 年11月29日

伊藤 潔

                                 
 
式(expression)と代入(assignment) でも触れましたが,assign 「代入する」という概念はとても重要なものです.

 y = x + 3と書いたものついては,プログラムでは,代入(assignment)文と論理式の二通りの使われ方があります.

 例えば,
    read x 
    y = x + 3 
    write y 

というプログラムは,xにデータを読んで,x + 3という算術演算を行い,その結果をyに入れる,代入するというものです. 
 
 一方,
    read x, y 
    if y = x + 3 then ………else ……… 

では,読み込んだx, yの値で,y と x + 3を比較します.その結果,等しければ then以降を実行し,さもなければ,else以降を実行するものです. 

 y = x + 3の読み方は,The variable, y, becomes the value of the arithmetic expression, x + 3. または,
The value of the arithmetic expression, x + 3, is assigned to the variable, y.です.


 if y = x + 3の読み方は,if the arithmetic expression, x is equal to the arithmetic expression, y+1, then です. 

 代入文は,(左辺) = 右辺)の形をしています.但し,左辺は,変数か配列要素です.論理式のように,左辺と右辺が等しいということではなく,右辺の計算結果を左辺に入れるということです.

  n個のデータの和を求める時に次のプログラムの書き方が常套手段です.プログラミングの初心者は必ず理解する必要があります.

             sum = 0
            for i = 1 to n
                read x
                sum = sum + x
            next
            write y

 このプログラムでは,和を求める変数 sum をゼロにクリアしておき,ループを回りながら,毎回,x にデータを読み込んでその x を sum に足し込みます.

 ここで,式は,i = 1 です.機能的に i = n という式も判定に使っています.

 代入文は, sum = 0 と sum = sum + x です. sum = 0 は,右辺のゼロを sum を代入する,ゼロにクリアする,ことです.sum = sum + x の方は,"New" sum becomes the "old" sum plus x. と読めば,わかります.新しい sum は,(一回前の)古い sum に x を足したものです.