# 条件式@ a=10 if a > 0 then y = 3 else y = -3 end # 条件式A n=3 x=1 y=2 if n==1 then z=x+y else z=x*y end # 条件式A' n=3 x=1 y=2 z= if n==1 then x+y else x*y end # 条件式B n = 3 if n % 2 == 0 and n % 3 == 0 then n += 2 else n *= 2 end print( " n= " ,n ) # 条件式C n = 3 if n % 2 == 0 and n % 3 == 0 then n += 2 else n *= 2 end print( " n= " ,n ) # 文字連結子@ i=3 print( "iは " + i.to_s + " です" ) print( "にわ" *4 + "とりがいる" ) # 文字連結子A x=3.1415 print( "x=" , x ) print( "x="+x.to_s ) # 文字連結子B x=3.1415 y=2 print( "x=" , x , " y=" , y ) x=3.1415 y=2 print( "x="+x.to_s+" y="+y.to_s ) # 文字連結子C x = "abc" y = "xyz" print( " x= " , x , " y= " , y ) x = "abc" y = "xyz" print( " x= " + x + " y= " + y ) # 文字連結子D x="3.1415" print( " x= " , x ) print( " x= " + x ) print( " x= " , x.to_f ) print( " x= " + x.to_f ) # Ruby の工夫 n=123; print( "n の値は #{n} です\n" ) n=123; print( "#{n} は #{if n%2==0 then "even" else "odd" end} です\n" ) n=123 print( "#{n} は #{if n%2==0 then "even" else "odd" end} です\n" ) n=123 msg="#{n} は #{if n%2==0 then "even" else "odd" end} です\n" print( msg ) # 改行@ x=2 print( "x=" , x ) print( "x=" , x , "\n" ) # 改行A x=2;y=3 print( "x=" , x , " y=" , y ) print( "x=" , x , "\n y=" , y ) # 改行B msg="\n" print( msg ) print( msg*5 ) # キーボードからの入力 line = gets.chop x = line.to_i print( x , "\n" ) x = line.to_f print( x , "\n" ) x = line.to_s print( x , "\n" ) # プログラム中で入力する # sample42.rb # coding: Windows-31J print( "一番目の数値を入力してください: " ) line = gets.chomp # gets は読み込んだ一行を値とします。 # chomp は最後の文字(改行文字)を取り除きます。 x1 = line.to_f print( "二番目の数値を入力してください: " ) line = gets.chomp x2 = line.to_f print( "#{x1} + #{x2} = #{ x1+x2 }" ) # キーボードからの入力@ line = gets.chomp x = line.to_i print( x , "\n" ) x = line.to_f print( x , "\n" ) x = line.to_s print( x , "\n" ) # キーボードからの入力A x = gets.chomp.to_i print( x , "\n" ) x = gets.chomp.to_f print( x , "\n" ) x = gets.chomp.to_s print( x , "\n" ) # キーボードからの入力E # coding: Windows-31J a = gets.chomp.to_i b = gets.chomp.to_i c = gets.chomp.to_i average = (a+b+c)/3.0 print( "平均は" , average , "です\n" ) # キーボードからの入力F # coding: Windows-31J a = gets.chomp b = gets.chomp if a == b then print( a , " と " , b , "は同じです" ) else print( a , " と " , b , "は違います" ) end # キーボードからの入力G # coding: Windows-31J print( "横の長さ?\n" ) x = gets.chomp.to_i printf( "縦の長さ?\n" ) y = gets.chomp.to_i s = x * y print( "面積は " , s ) # 出力フォーマット x=123 printf( "%d" , x ) printf( "%f" , x ) printf( "%x" , x ) printf( "%s" , x ) x=123 printf( "%5d" , x ) printf( "%-5d" , x ) x=3.1415 printf( "%5.2f" , x ) printf( "%-5.2f" , x ) x=Math::PI printf( "%5.2f" , x ) printf( "%10.2f" , x ) printf( "%10.5f" , x ) printf( "%-10.5f" , x ) printf( "%10.8f" , x )