Menu
Coddy logo textTech

Recapitulação - Movendo o Ponto

Parte da seção Object Oriented Programming do Journey de Lua da Coddy — lição 5 de 70.

challenge icon

Desafio

Fácil

Crie uma tabela chamada point com dois campos:

  • x - a coordenada x
  • y - a coordenada y

Adicione um método :move(dx, dy) usando a sintaxe de dois pontos que adiciona dx a self.x e dy a self.y.

Você receberá quatro entradas:

  1. Coordenada x inicial
  2. Coordenada y inicial
  3. Delta x (quantidade para mover horizontalmente)
  4. Delta y (quantidade para mover verticalmente)

Após criar o ponto com as coordenadas iniciais e chamar :move() com os valores de delta, imprima a posição final neste formato exato:

[x], [y]

Por exemplo, se a posição inicial for (3, 5) e você mover por (2, -1), a saída deve ser:

5, 4

Experimente você mesmo

-- Ler entradas
local initial_x = tonumber(io.read())
local initial_y = tonumber(io.read())
local dx = tonumber(io.read())
local dy = tonumber(io.read())

-- TODO: Escreva seu código abaixo
-- 1. Crie uma tabela chamada 'point' com os campos x e y (usando as coordenadas iniciais)
-- 2. Adicione um método :move(dx, dy) usando a sintaxe de dois pontos que modifica self.x e self.y


-- Chamar o método move e imprimir o resultado
point:move(dx, dy)
print(point.x .. ", " .. point.y)

Todas as lições de Object Oriented Programming