2016-07-25 13 views
1

私は2つの整数を分割し、その結果を文字列に変換したいと考えています。私は、分母の代わりに、分割の結果を文字列に変換しようとして括弧に区切りを入れて、これを行っています。このようなエラーはないようですが、これが正しい構文であることを再確認したいと思います。括弧を使用して文字列に変換したい情報をカプセル化できますか? (ルビー)

注:@numerと@denomは両方とも整数です。

def redfrac 
    gcd = @numer.gcd(@denom) 

    if @denom != 0 
    rednumer = (@numer/gcd).to_s 
    reddenom = (@denom/gcd).to_s 

    if reddenom == "1" 
     puts rednumer 
    else 
     puts rednumer + "/" + reddenom 
    end 
    else 
    puts "Cannot divide by 0" 
    end 
end 

答えて

0

この構文は正当なものです。

しかし、あなたは、文字列の補間を使用することができ、この正確なタスクのための:

def redfrac 
    gcd = @numer.gcd(@denom) 

    if @denom != 0 
    rednumer = @numer/gcd 
    reddenom = @denom/gcd 

    if reddenom == 1 
     puts "#{rednumer}" 
    else 
     puts "#{rednumer}/#{reddenom}" 
    end 
    else 
    puts "Cannot divide by 0" 
    end 
end 
1
> (1.0/4.0).to_s 
=> "0.25" 
関連する問題