give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

挑戦者求む!Rubyで点字メーカープログラムを作ってみよう 〜Qiita Advent Calendar 2021〜

お知らせ

QiitaのAdvent Calendar 2021の特別企画として、「Rubyプログラミング問題にチャレンジ! -改訂版・チェリー本発売記念-」というアドベントカレンダーをオープンしています。

qiita.com

これは僕が出したRubyプログラミングの「お題」をみなさんに解いてもらい、そのコード解説を記事として書いてもらおう、という企画です。
LGTMが一番多かった人1名と、僕が「このコードは良い!」と思った人1名に、それぞれプレゼントが渡されます🎁

「プロを目指す人のためのRuby入門(通称チェリー本)」の知識があれば十分解ける問題なので、初心者の方も上級者の方もぜひチャレンジしてみてください💪

お題は「点字メーカープログラム」です

僕から出したRubyプログラミング問題はズバリ、「点字メーカープログラム」です!

このプログラムでは以下のように、ひらがなをローマ字で入力すると、それに対応する点字が"o"と"-"で出力されます。

f:id:JunichiIto:20211104084925p:plain

「点字の仕組みなんて知らないよ!」という人でも大丈夫です。以下のサイトを読めば「へ〜、こんな仕組みになってるのね」というのがわかるはずです。

全視情協:点字とは - 点字のしくみ

f:id:JunichiIto:20211104085201p:plain

点字の仕組みはある程度法則が決まっているので、結構プログラミング向きなんじゃないかなーと思って、この問題を作ってみました。

参加方法は動画で詳しく解説してます

「やってみようかな」と思った人は、参加方法を解説したYouTube動画があるのでこちらをチェックしてください👇


www.youtube.com

参考情報:僕は1時間半ぐらいでできました

僕は点字の仕様を理解して、プログラムの実装方針を考えて、実際にコードを書いて完成させるまでにかかった時間は1時間半ぐらいでした。
プログラミング初心者の人はもうちょっと時間がかかるかもしれませんが、チャレンジする人は参考にしてみてください(もちろん、完成までにかかった時間はコードの評価に関係ありません)。

まとめ:チャレンジできるのは先着25名。早めの参加登録を!

というわけで、このエントリではQiita Advent Calendar 2021で開催中の「Rubyプログラミング問題にチャレンジ! -改訂版・チェリー本発売記念-」というアドベントカレンダーを紹介してみました。

参加枠は最大25名でそれ以上増えないので、興味がある人は早めに参加登録することをオススメします。
みなさんからカッコいいコードがたくさん届くのを楽しみにしています〜😄

qiita.com

挑戦者の強い味方は「改訂版・プロを目指す人のためのRuby入門」!?

アドベントカレンダーのタイトルにもチラッと書いていますが、拙著「プロを目指す人のためのRuby入門」の改訂版が2021年12月2日に発売されます。

ズバリそのものの回答が載っているわけではありませんが、今回の「点字メーカープログラム」は本書の例題と同じようなノリで作っているので、プログラムを作っていく流れなどは参考になるんじゃないかな〜と思います。

また、問題の難易度も本書の内容をフル活用すれば十分対応可能なレベルにしてあるので、Ruby歴が浅い人は本書が心強い味方になってくれるはずです。

改訂版の内容については以下のエントリに書いているので、こちらもぜひご覧ください💁‍♂️

blog.jnito.com