基礎プログラミング II 第 6 回 (目的に応じて使ってみよう) 「コマンドライン入力と method をあわせてみよう」 講義ノート目次

ARGV 配列を使うと、プログラムを起動したのち、 ユーザが入力した値に基いて計算をするようなプログラムを作ることができる。 1 から任意の自然数まで足し算をするプログラムの実行風景は

./def_sumup.rb 100

となる。この場合は 100 を入力した場合が示されている。 def_sumup.rb

#!/usr/koeki/bin/ruby
#coding: euc-jp

if ARGV[0] == nil
  STDERR.puts("指定した値までの自然数を順に加え、総和を求めます。")
  STDERR.puts("例: ./sumup.rb 100  --- 1 から 100 までの総和を求める。")
  exit(1)
end

sum = 0
goal = ARGV[0].to_i	# ARGV にしまわれているものは文字列なので
                        # 整数変換が必要
s0 = 1                  # 終了の数

goal.downto(s0) do |number|
  sum += number
end

printf("%d から %d までの自然数の総和は %d です\n", s0, goal, sum)