Menu
Coddy logo textTech

入金メソッド

CoddyのLuaジャーニー「オブジェクト指向プログラミング」セクションの一部。レッスン 20/70。

challenge icon

チャレンジ

簡単

これから Digital Bank プロジェクトを開始します。新しいシステムに機能を追加しましょう!account を開始残高 0 で作成できるようになったので、deposit によってお金を受け取れるようにしましょう。

既存の Account クラスを基に、指定した金額だけ account の残高を増やす :deposit(amount) メソッドを追加します。これは基本的な銀行操作です。お金が入り、残高が増えます!

使用する 2 つのファイル:

  • Account.lua:deposit(amount) メソッドを追加して Account クラスを拡張します。このメソッドでは、指定された金額を self.balance に加算します。前のレッスンの内容(クラス構造と :new() コンストラクター)はすべて保持してください。
  • main.lua:Account module を Require し、account を作成して、いくつかの deposit を実行し、balance がどのように変化するかを表示します。

3 つの入力を受け取ります:

  1. 1 回目の deposit amount
  2. 2 回目の deposit amount
  3. 3 回目の deposit amount

main ファイルで single account を作成し、3 回の deposit を順番に Perform してください。各 deposit の後に、現在の balance を新しい行に print します。

たとえば、入力が 1005025 の場合、出力は次のようになります:

100
150
175

各 deposit が前の balance を基にしていることに注目してください。account は 0 から始まり、1 回目の deposit の後に 100、2 回目の後に 150、3 回目の後に 175 へと増えます。:deposit() method によって、この蓄積が実現します!

自分で試してみよう

-- Accountモジュールを読み込む
local Account = require('Account')

-- 3つの入金額を読み取る
local deposit1 = tonumber(io.read())
local deposit2 = tonumber(io.read())
local deposit3 = tonumber(io.read())

-- 単一のアカウントを作成する
local account = Account:new()

-- 3回の入金を実行し、それぞれ後に残高を表示する
-- TODO: deposit1を入金してaccount.balanceを表示する

-- TODO: deposit2を入金してaccount.balanceを表示する

-- TODO: deposit3を入金してaccount.balanceを表示する

オブジェクト指向プログラミングのすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ