-
【Ruby入門】Structを使ってみよう(Hashよりいい時もあります)
Hashを使ったコード まず最初に、Hashを使ってデータを入れるプログラミングを書きます。 ここでは、簡易に書くために配列にデータを持っていますが、実際のプログラムではDBかもしれないし、csvファイルかもしれません。 日付、一日の最低気 ...
-
【Ruby入門】ブロック(yield)を使う理由
1から5までを表示させる 1から5までを表示させる処理は、普通にeachを回しながら表示させる方法でもできるし、blockを使ったやり方でもできます。 1から5までループする処理を共通化させる 次に、以下の2つの処理について考えてみます。 ...
-
Rubyで作るビットコインとブロックチェーン_1【概念の説明】
従来型の金融取引 従来の金融システムでは、AさんからBさんに送金をする場合には銀行と通す必要がありました。 AさんがBさんに送金をする場合は、必ず間に銀行が入っています。 そして、個人を判別するための鍵は、全て銀行が管理しています。 Aさん ...
-
【Ruby入門】Rubyでポイントシステムを構築してみよう
ポイントシステムの要件 まずは、ポイントシステムの要件を紹介します。 ユーザーはポイントを持つ ポイントには期限がある ポイント履歴を見たい ポイントを取得する方法は複数ある(クジ引き、補償) ポイントを消費する方法は複数ある(買い物、特別 ...
-
【Ruby入門】クジを引くロジック【抽選ロジック】
クジ引き 重み付けされた配列を元に、出現回数が異なることが確認できるはずです。 all_user_point_hashのvalueの値を変更して、出現回数の変化を確認してみて下さい。 また、より小さい確率でコントロールしたい場合は、MAX_ ...
-
Ruby言語を学んで半人前になるまでの過程
はじめに プログラミングを始めた人の多くは、「難しい」「わからない」と言って諦めてしまいます。 それを見たり聞いたりしている私は、いつも寂しく感じます。 なぜならば、プログラミングを学み始めて挫折した人の多くは、適切な方法に沿って勉強してい ...
-
【Ruby入門】繰り返し処理
times 「times」は指定した回数だけ、繰り返し処理が行われます。 upto, downto uptoは、指定した数字から最後の数字まで、1づつプラスしながら、繰り返し処理を行います。 downtoは、指定した数字から最後の数字まで、 ...
-
【Ruby入門】値渡しと参照渡しの違い
値渡しと参照渡し メソッドに数字を渡した場合の動作が、値渡しです。 メソッドの中では値が変わっていますが、メソッドの外で値を見ても、元のままであることがわかります。 一方で、メソッドに配列を渡した場合の動作が、参照渡しです。 メソッドの中で ...
-
【Ruby入門】文字列で使えるメソッド
文字列とは何か? Rubyの文字列とは、「ダブルクォーテーション」もしくは「シングルコーテーション」で囲まれた値です。 また文字列のクラスは、Stringクラスです。 文字列の連結 文字列を連結するには、「+」「<<」「conc ...
-
【Ruby入門】外部コマンドを実行する方法
外部コマンドの実行方法 systemの場合は、コマンドの実行結果を受け取ることができません。 「バッククォート」と「%x[date]」の場合は、コマンドの実行結果を受け取ることができます。 「IO.popen」でも、コマンドの実行結果を受け ...
-
【Ruby入門】コマンドライン引数の使い方
コマンドライン引数とは何か? コマンドライン引数とは、コマンドラインから入力する引数のことです。 具体的には、ターミナル上で以下のように実行します。 ruby hello.rb "Yamada" "Tarou" コマンドライン引数の使い方 ...
-
【Ruby入門】Module(モジュール)の使い方
Moduleとは何か? Moduleには、主に2つの機能があります。 これらについて、順番に見ていきたいと思います。 名前空間を提供する クラスに組み込んで多重継承を実現する Moduleの使い方 名前空間を提供する Moduleを使うこと ...