paiza(パイザ)Cランク練習問題|アルファベット探しのRubyサンプルコードと解説

paiza(パイザ)Cランク相当の練習問題の解説とサンプルコードの|アルファベット探しについてRubyサンプルコードと解説を記載します。
記載したサンプルコードは動作しましたが、Paizaに公式サンプルコードの記載はないので、他にも記載方法はあると思われます
問題の要件と概要は以下から
ジャンプできる目次
Cランク問題のアルファベット探しの入出力値
以下公式抜粋
問題概要
1行目の英大文字 X から、2行目の英大文字 Y の範囲に3行目のアルファベット C が含まれていれば"true", そうでなければ"false"と出力してください。 X が Y よりもアルファベット順で後ろになる場合(X = 'G', Y = 'F'のときなど)も"false"と出力してください。
入力値
入力は以下のフォーマットで与えられます。 X Y C 入力値最終行の末尾に改行が1つ入ります。
期待する出力
出力は、 "true" または "false" のどちらかです。
入出力例(公式から抜粋)
入力例1 A D C 出力例1 true 入力例2 D D D 出力例2 true
問題をプログラム化する際の考え方
入力値で以下のように記載されています。
A D C
ここで分かる事は
1:一から三行目まで全ての要素が英大文字で入力される
2:一行に1つの英大文字が入力され、それが三行分入力される
次に出力例を見ると
出力例1 true
アルファベットA~Dの中にCは含まれている為、今回は true と出力されたという事になる (A, B, C, Dの範囲内にCが含まれている為)
プログラム化する際にRuby的な処理を考える
1:最初の英大文字の取得
2:範囲の最後の英大文字の取得
3:含まれているか確認するための指定された英大文字の取得
4:条件範囲内に指定された英大文字が含まれている場合、”true” と出力
5:それ以外なら”false” と出力
paizaCランク問|アルファベット探しのRubyサンプルコード
プログラム化する際に考えた事をRubyに当てはめます。
start = gets.chomp.upcase last = gets.chomp.upcase find = gets.chomp.upcase if (start..last).include?(find) puts "true" else puts "false" end
一行目の英大文字をstartという変数名にし、取得
二行目の英大文字をlastという変数名にし、取得
三行目の英大文字をfindという変数名にし、取得
次に条件式を用いて、(start..last)の範囲の時、指定した要素が含まれているかをinclude?メソッドを用いて、調べます。
Rubyは繰り返し処理でアルファベットを(A..D)ときさいするとA~Dまでカウント処理を行うという便利な動作がされます
include?メソッドは、引数で指定した要素が、配列中に含まれているか判定するメソッドです。
関連問題
paizaのスキルチェックの難易度|各ランクの特徴・ランクアップのコツを現役エンジニアが解説
paiza(パイザ)Bランク練習問題|日別訪問者数の最大平均区間のRubyサンプルコードと解説
paiza(パイザ)Bランク練習問題|神経衰弱のRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|5以上の整数の合計のRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|検索履歴のRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|宝くじのRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|野球の審判のRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|単語のカウントのRubyサンプルコードと解説
paiza(パイザ)Cランク練習問題|【競技7】奇数大好き山田さんのRubyサンプルコードと解説
Rubyで以下のような練習問題を用意しているので、回答できなかった方はまずは以下練習問題を試してみてください
Rubyの練習問題:配列編|初心者・独学者向け入門コンテンツ
Rubyの練習問題:文字列編|初心者・独学者向け入門コンテンツ
Rubyの練習問題:ハッシュ編|初心者・独学者向け入門コンテンツ
Rubyの練習問題:繰り返し処理編|初心者・独学者向け入門コンテンツ
Rubyの練習問題:ファイル操作編|初心者・独学者向け入門コンテンツ
paiza(パイザ)に慣れるとAtCoderアットコーダーもお勧めです
その他関連記事
未経験からエンジニアに転職した人間が考える、今からエンジニアに就職する方法
プログラミングポートフォリオとは|未経験からエンジニアに就職した人間が解説
職歴を作るためにSESに就職して、Web系エンジニアへ転職は可能か