top



総投稿数 本 課題月間50本!
no_77

Ruby:◇繰り返し1:times ・・・ 【Ruby:7.0歩目】

 2008-06-24
第7.0歩
 ◇繰り返し1:times


 プログラムを行うにあたって「条件分岐」と2本柱ともいえる
制御構造のひとつである「繰り返し
 逆に言えば、基礎的な四則演算他の組み込み関数と
この「条件分岐」「繰り返し」構文をマスタしてしまえば
たいがいのプログラムは作れる?

 さて、Ruby。

繰り返す方法はいくつかある(他の言語でも同じ

 +++++++++++++++++++++
 ・timesメソッド
 +++++++++++++++++++++
  任意回数の場合は、この「timesメソッド」を利用するのが便利
 のようです。

 (例)
 例えば同じ処理を10回繰り返すのであれば
 10.times do
  (繰り返される処理)
 ens
 
 正直やっと新鮮な構文が現れてきたぞ。これはなかなか簡単に使え
そうだ。


 +++++++++++++++++++++
 ・do〜end(ブロック)
 +++++++++++++++++++++
  この「do〜end」の部分をRuby では「ブロック」と呼ぶ。
  ! またこれは
    「{ 〜 }」で書き直すことができる!
    これはいい。もっと簡潔になった。

 (例)
 例えば同じ処理を10回繰り返すのであれば
 10.times {
  (繰り返される処理)
 }

 わかりやすくていいなぁ。{ から } を
 10回繰り返す
  ・・・ そのまんま。

 じゃぁ、この中で繰り返し回数を取得したい場合は・・・?

 単純に
 変数を用意して
 cnt =0
 10.times {
  (繰り返される処理)
  cnt++
 }
 とか、するのかな と思ったらこれも簡単

10.times { |i|
puts i
}

 でいいのだと。 > 確認した。

例えば文字列と結びつけて表現したい場合
(文字列の中に 変数の値を入れ込む場合は
 #{変数} とする
 ※ $ でなく # なのだな)

 (例)前につくったじゃんけんロボ! が登場
10.times { |i|
r = rand(3) + 1 # 0 以上 3 未満の範囲の整数の乱数を発生
# その上で、+1 する
case r
when 1
puts "#{i + 1}回目:グー"
when 2
puts "#{i + 1}回目:チョキ"
when 3
puts "#{i + 1}回目:パー"
end
}
 > 了解。でも前に覚えたこといかさなきゃな。

これは「改行しない printメソッド」と組み合わせて
10.times { |i|
r = rand(3) + 1 # 0 以上 3 未満の範囲の整数の乱数を発生
# その上で、+1 する
print "#{i + 1}回目:"
case r
when 1
puts "グー"
when 2
puts "チョキ"
when 3
puts "パー"
end
}
と、書いた方がいいか。



FC2ブログランキングにほんブログ村 IT技術ブログ Webサイト構築へブログ王ランキング人気ブログランキング

commentsコメント
comment_post












管理者にだけ表示を許可する
commentトラックバック
トラックバックURL:
http://metaboy.blog23.fc2.com/tb.php/77-450125ba
ようこそ
Add to Google 創るmetaboy:RSSフィード
My Yahoo!に追加
最新記事のRSS | 問い合わせ

正当なCSSです! 正当なCSSです!

創るmetaboy - WEB創る、サイト創る、何創る - ページランク

 

創ったmetaboy

勉強勉強!!
実験的に構築している
創るブログ
 ( by Movable Type4 )

もうひとつの創るブログ
  ( by Wordpress )

 

カテゴリー

 

リンク集

 

ブロとも申請フォーム
月別アーカイブ
 

 

参加しています

スカウター : 創るmetaboy 
track feed


SEO対策:プログラミング
SEO対策:WEBサイト
SEO対策:ホームページ
SEO対策:
SEO対策:WEBサービス


Powered By イーココロ!

グリーンブログ ブログで止める温暖化

 

サイトマップ
サイトマップ(全ての記事)
を表示する

▼ほんと最新の10件:
Powered by RSSリスティング

 

Sponserd by

さくらのレンタルサーバ さくらのレンタルサーバ
大容量・高機能レンタルサーバー heteml 大容量・高機能レンタルサーバー heteml
XREA (ValueDomain)

 

ツール その2

 

更新しました!