1 つの文字列を出力 (paizaランク D 相当)
自分の解答
puts "paiza"
末尾に改行を入れなければならないので、print
ではなくputs
を使う。
ChatGPTの解答
もちろんです。質問の内容が不足しているようですが、とりあえず "paiza" という文字列を1行で出力するRubyのコードを以下に示します。
puts "paiza"
このコードを実行すると、"paiza"という文字列が1行で出力されます。
2 つの文字列を出力 (paizaランク D 相当)
自分の解答
puts "paiza learning"
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
puts "paiza learning"
このコードを実行すると、"paiza learning"という文字列が1行で出力されます。
1 行の出力 (paizaランク D 相当)
自分の解答
puts 813
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
puts 813
このコードを実行すると、整数813が1行で出力され、末尾に改行が入ります。
3 行の出力 (paizaランク D 相当)
自分の解答
puts 8
puts 1
puts 3
このあたりからすでにセンスを問われている気がするが、やはり一番の模範解答はこれだと思う。
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
puts 8
puts 1
puts 3
このコードを実行すると、それぞれの数値が3行で出力され、末尾に改行が入ります。
2 つの数値を出力 (paizaランク D 相当)
自分の解答
puts "#{1} #{1}"
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
puts "1 1"
このコードを実行すると、"1 1"という文字列が1行で出力され、末尾に改行が入ります。
感想
問題文には「数値」とあるので式展開を使って書いたが、paizaとしてはどちらでも良いみたい。
足し算 (paizaランク D 相当)
自分の解答
puts 1231 + 5178
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
puts 1231 + 5178
このコードを実行すると、1,231と5,178の和が計算され、その結果が1行で出力されます。
割り算 (paizaランク D 相当)
自分の解答
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 相当)
自分の解答
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 相当)
自分の解答
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 相当)
自分の解答
s = gets
puts s
ChatGPTの解答
以下は、指定された条件に従ったRubyのコードです。
s = gets.chomp
puts s
このコードを実行すると、標準入力から与えられた文字列をそのまま出力し、末尾に改行が入ります。
学び・感想
ここまで超超超基礎的な問題集を解いてきましたが、すべてをQiitaに投稿するのは少し負担が大きいため、今後は一部のみ投稿することにします。