2
0

【Ruby】問題集解答 Part6(paizaラーニング)

Posted at

1 つの文字列を出力 (paizaランク D 相当)

自分の解答

practice_01.rb
puts "paiza"

末尾に改行を入れなければならないので、printではなくputsを使う。

ChatGPTの解答

もちろんです。質問の内容が不足しているようですが、とりあえず "paiza" という文字列を1行で出力するRubyのコードを以下に示します。

puts "paiza"

このコードを実行すると、"paiza"という文字列が1行で出力されます。

2 つの文字列を出力 (paizaランク D 相当)

自分の解答

practice_02.rb
puts "paiza learning"

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

puts "paiza learning"

このコードを実行すると、"paiza learning"という文字列が1行で出力されます。

1 行の出力 (paizaランク D 相当)

自分の解答

practice_03.rb
puts 813

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

puts 813

このコードを実行すると、整数813が1行で出力され、末尾に改行が入ります。

3 行の出力 (paizaランク D 相当)

自分の解答

practice_04.rb
puts 8
puts 1
puts 3

このあたりからすでにセンスを問われている気がするが、やはり一番の模範解答はこれだと思う。

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

puts 8
puts 1
puts 3

このコードを実行すると、それぞれの数値が3行で出力され、末尾に改行が入ります。

2 つの数値を出力 (paizaランク D 相当)

自分の解答

practice.rb
puts "#{1} #{1}"

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

puts "1 1"

このコードを実行すると、"1 1"という文字列が1行で出力され、末尾に改行が入ります。

感想

問題文には「数値」とあるので式展開を使って書いたが、paizaとしてはどちらでも良いみたい。

足し算 (paizaランク D 相当)

自分の解答

practice.rb
puts 1231 + 5178

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

puts 1231 + 5178

このコードを実行すると、1,231と5,178の和が計算され、その結果が1行で出力されます。

割り算 (paizaランク D 相当)

自分の解答

practice.rb
A = 437326
B = 9085

puts "#{A / B} #{A % B}"

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

A = 437326
B = 9085

X = A / B
Y = A % B

puts "#{X} #{Y}"

このコードを実行すると、AをBで割った商をX、AをBで割った余りをYとして、それらが半角スペース区切りで1行で出力されます。

学び・感想

自分の解答の方がより少ないコードで書けてはいるが、ChatGPTのコードの方が可読性が高い気がする。
ちょっとしたことにもこだわる姿勢は重要かもしれないが(現時点では気づいていないが、実は重要であるかもしれないため)、今はこのようなことにはあまり時間を使わないこととする。

累乗 (paizaランク D 相当)

自分の解答

practice.rb
A = 202
B = 134
C = 107

N = ((A + B) * C) ** 2

puts N

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

A = 202
B = 134
C = 107

N = ((A + B) * C) ** 2

puts N

このコードを実行すると、指定された計算式の結果であるNが1行で出力され、末尾に改行が入ります。

学び・感想

べき乗は**で計算できる。

代入演算 1 (paizaランク D 相当)

自分の解答

practice.rb
N = 0

N += 3286
N *= 4736
N %= 12312

puts N

ChatGPTの解答

以下は、指定されたアルゴリズムに基づいたRubyのコードです。

N = 0
N += 3286
N *= 4736
N %= 12312

puts N

このコードを実行すると、指定されたアルゴリズムに基づいた計算結果であるNが1行で出力され、末尾に改行が入ります。

1 行の入力 (paizaランク D 相当)

自分の解答

practice.rb
s = gets

puts s

ChatGPTの解答

以下は、指定された条件に従ったRubyのコードです。

s = gets.chomp
puts s

このコードを実行すると、標準入力から与えられた文字列をそのまま出力し、末尾に改行が入ります。

学び・感想

ここまで超超超基礎的な問題集を解いてきましたが、すべてをQiitaに投稿するのは少し負担が大きいため、今後は一部のみ投稿することにします。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0