2011-01-23

プログラミング初心者Rubyで解いてみた

初心者自分にはひねったコードは書けないので期待しないでね。

普通に解くと面白そうな問題だったので書いてみました

なれている人のコードショートハンドとかバリバリ使っててあまり読めないorz

#小さい順に数え上げて、既知の素数で割りきれないもを素数として表示。
#既知の素数配列に格納する。
puts '0からどこまでの範囲の素数を探しますか?終端の数を入力してください。'
last_num = gets.chomp.to_i

if last_num < 1
  puts '素数はありません'
elsif last_num < 2
  puts '素数は1だけです。'
else
  puts 1
  puts 2
  sosuu_hairetu = [2]#既知の素数を格納する配列
  ichi = 0#素数の入っている配列を参照する時に使う
  count = 3#これが素数である比較する対象
  while count <= last_num
    sosuu_hairetu.each do |waru|#それまでに分かっている素数比較する
      if count%waru == 0#割りきれたら他のに移る
        count = count+1
        retry
      end
    end
    puts count
    sosuu_hairetu[(ichi = ichi + 1)] = count
    count = count+1
  end
  puts last_num.to_s + 'までに素数は' + ( sosuu_hairetu.length + 1 ).to_s + '個ありました。'

それからしごとホスイ。

記事への反応 -
  • とある大規模インフラの基幹システムなんだけど、納品して以来、誰にも原因が分からない不具合が続いていたのでした。よく品質保証部を通ったなと不思議に思ってるんですがね。 現...

    • こういう話を聞くたびに「俺を採用しろ」と思うが、 まあ年齢的な制限には引っ掛かっているか。

    • あー 関数の中に static 変数名 って書くとグローバル変数になるって 知らないで 書いていてバグ出した人を知っている。 見つけたときにキレそうになった。 ポジションにもよる...

      • 関数の中に static って書くとグローバル変数になるプログラミング言語を知らないので ぜひその言語を教えてください ついでにグローバル変数の定義を述べてください

        • 失礼 スコープグローバルではないので、グローバル変数というのは、語弊があるな。寿命が恒久の意味 お詫びのコード template<typename T> T * getT(){  static T globalMem;  return &globalMem;...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん