Menu
Coddy logo textTech

Método de depósito

Parte de la sección Programación Orientada a Objetos del Journey de Lua de Coddy. Lección 20 de 70.

challenge icon

Desafío

Fácil

Ahora comenzamos el proyecto Banco Digital. ¡Es hora de añadir funcionalidad a tu nuevo sistema! Ahora que se pueden crear cuentas con un saldo inicial de 0, démosles la capacidad de recibir dinero mediante depósitos.

Basándote en tu clase Account existente, añadirás un método :deposit(amount) que aumenta el saldo de la cuenta en la cantidad especificada. Esta es una operación bancaria fundamental: el dinero entra y el saldo crece.

Tus dos archivos:

  • Account.lua: Amplía tu clase Account añadiendo un método :deposit(amount). Este método debe añadir la cantidad indicada a self.balance. Conserva todo lo de la lección anterior (la estructura de la clase y el constructor :new()).
  • main.lua: Requiere tu módulo Account, crea una cuenta, realiza algunos depósitos y muestra cómo cambia el saldo.

Recibirás tres entradas:

  1. Cantidad del primer depósito
  2. Cantidad del segundo depósito
  3. Cantidad del tercer depósito

En tu archivo principal, crea una sola cuenta y realiza los tres depósitos en orden. Después de cada depósito, imprime el saldo actual en una línea nueva.

Por ejemplo, si las entradas son 100, 50 y 25, la salida debería ser:

100
150
175

Observa cómo cada depósito se basa en el saldo anterior: la cuenta comienza en 0, después aumenta a 100 tras el primer depósito, a 150 tras el segundo y a 175 tras el tercero. ¡Tu método :deposit() hace posible esta acumulación!

Pruébalo tú mismo

-- Requiere el módulo Account
local Account = require('Account')

-- Lee las tres cantidades de depósito
local deposit1 = tonumber(io.read())
local deposit2 = tonumber(io.read())
local deposit3 = tonumber(io.read())

-- Crea una sola cuenta
local account = Account:new()

-- Realiza los tres depósitos e imprime el saldo después de cada uno
-- TODO: deposita deposit1 e imprime account.balance

-- TODO: deposita deposit2 e imprime account.balance

-- TODO: deposita deposit3 e imprime account.balance

Todas las lecciones de Programación Orientada a Objetos

Practica por tu cuenta: Compilador de Lua online