情報科学概論(再履修)
Rクラス 小テスト 2004.12.10

Back

以下の設問の解答は所定の解答用紙に記入 して添付書類として提出して下さい.その際に,ファイル名 を必ず自分にあったものに変更することと学生番号と氏名を記入すること を忘れないようにして下さい.


(x, y, z)直交座標空間において,原点からの距離が4.8以 上5.0以下であるx, y, zが整数の組合せをすべて列挙する スクリプトを作成せよ.結果の表示は座標とそれに対応する距離を同じ行に並べ,最後に座標点の個数を明示することとし,容易に理解できるような 表現であれば形式は自由とする.


解答例

include Math

num = 0

for x in -5..5
  for y in -5..5
    for z in -5..5
      r2 = x*x + y*y + z*z
      if r2 >= 4.8*4.8 && r2 <= 5*5
	printf "(%2d, %2d, %2d)", x, y, z
	printf "   distance r = %2.2f\n", sqrt(r2)
	num += 1
      end
    end
  end
end

printf "Number of coordinates: %d\n", num


Back