RUBYの宿題教えてください。at TECH
RUBYの宿題教えてください。 - 暇つぶし2ch632:デフォルトの名無しさん
07/05/28 21:50:44
ファイル作るの面倒だったのでirbで無理矢理動かした。

>> $0 = 'FizzBuzz.rb'
>> 1.upto(?d){|i|puts""==(a=$0[i*i%3*4-11..-4--i**4%5])?i:a}

動作確認には十分。

633:デフォルトの名無しさん
07/05/28 22:09:33
普通に、"FizzBuzz"[i*i%3*4-8..-1--i**4%5] でよさそうなもんだが。

634:デフォルトの名無しさん
07/05/29 20:36:53
書き換えるのが面倒だったの

635:デフォルトの名無しさん
07/05/30 17:02:25
>>629-634
そういうことかww
やっときづいた

636:デフォルトの名無しさん
07/06/06 15:42:44
a = [1, 2, 0, 3, 4, 5]

配列の一番後ろを得たいときは、
 a.last
だよな?

後ろから2番目、3番目を得たいときは、どうするんだ?
 a[a.size - 2]
しかない?
 a.last(2)
は違うし・・・

637:デフォルトの名無しさん
07/06/06 15:49:18
irb> a = [1, 2, 3, 4, 5]
=> [1, 2, 3, 4, 5]
irb> a[-2]
=> 4


638:デフォルトの名無しさん
07/06/06 15:59:27
-1がlast
last一つ前は-2

639:デフォルトの名無しさん
07/06/06 16:03:16
>>637-638
インデックス、マイナスにできたのか。しらなかた

reverseしてから、アクセスとかやってた。
サンクスでう。


640:デフォルトの名無しさん
07/06/11 02:35:33
stringをarrayにする簡単な方法はないですか?
やりたいことは、arrayにして、sortしたいのですが・・・

s.to_aは行ごとだし・・・


641:デフォルトの名無しさん
07/06/11 02:38:56
srand
s = "hogemoge"
a = []; s.each_byte {|l| a << l.chr}
pp a.sort_by{ rand }.to_s

実際書いてみると、以外に短かかったw


642:デフォルトの名無しさん
07/06/11 03:43:29
s.split(//).each

643:デフォルトの名無しさん
07/06/11 07:53:28
確かに str.split(//e) が妥当だ(e は str の文字コード)
1文字ずつぶった切って配列にしてるんだなと読み下してもくれるし

644:デフォルトの名無しさん
07/06/11 16:10:21
s.scan(/./)
s.split(//)
同じ長さだったか。

645:デフォルトの名無しさん
07/07/08 19:59:06
パスカルの3角形を印字するプログラムを
作りたいのだが以下のプログラムで作るにはどうしたらいいのでしょうか?
教えてください。

print("Enter n: "); n = gets.chomp.to_i
if( n>30 || n<0 ) then
n = 10
end
a = Array.new( n )
a[0] = [1] # 要素が1 の長さ1の配列
# ここでパスカルの3角形を作る
# このとき、a[i]ごとに配列を作る
# そして、印字
for i in (0..a.length-1) do
for j in (0..a[i].length-1) do
print( " ", a[i][j] )
end
print( "\n" )
end

646:デフォルトの名無しさん
07/07/09 06:58:16
マルチ乙

647:デフォルトの名無しさん
07/07/09 08:18:09
そんな事よりカレーの話しようぜ

648:デフォルトの名無しさん
07/07/09 14:54:25
宿題スレ行け→マルチ乙
これはひどい

649:デフォルトの名無しさん
07/07/09 16:07:04
回答してはいけないという空気?

650:デフォルトの名無しさん
07/07/09 16:25:33
いや、いいんじゃない?
マルチと誤解されないためには、前スレに移動する由を書いとけばいい

651:デフォルトの名無しさん
07/07/09 16:39:33
それこそ「宿題スレのほうがいい」というアドバイスを受けたからこっち来たんだろ
移動した旨は移動時に既にあっちに書いてあるし、イジられる以上の非難を受ける謂れは無いと思われ

652:デフォルトの名無しさん
07/07/09 18:09:50
じゃ、とりあえず。いろいろ宿題の中身無視してるけ、どこんな感じで。

class Array
  def next_pascal
    next_pascal = Array.new

    next_pascal << self[0]

    self[0..-2].each_index do |i|
      next_pascal << self[i] + self[i + 1]
    end

    next_pascal << self[-1]
  end
end

p = [1]

10.times do
  puts p.join(' ')
  p = p.next_pascal
end


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch