Adicionando um Contato
Parte da seção Logic & Flow do Journey de Lua da Coddy — lição 43 de 54.
Desafio
FácilImplemente o recurso de adição de contatos para seu aplicativo de lista de contatos. Quando o usuário digitar add, o programa deve solicitar os detalhes do contato e armazená-los na lista de contatos.
Com base no loop principal anterior, adicione a funcionalidade para lidar com o comando add. Quando este comando for inserido, solicite ao usuário um nome e um número de telefone, crie uma tabela de contato com esses detalhes e adicione-a à lista contacts usando table.insert().
Requisitos:
- Mantenha todo o código do desafio anterior (configuração, exibição do menu e loop principal)
- Quando o usuário digitar
add, imprima:Enter name: - Leia o nome usando
io.read() - Imprima:
Enter phone number: - Leia o número de telefone usando
io.read() - Crie uma tabela no estilo dicionário com as chaves
nameephone - Insira esta tabela de contato na lista
contactsusandotable.insert() - Imprima:
Contact added successfully! - O comando
quitdeve continuar funcionando como antes - Outros comandos ainda devem imprimir
Command not yet implemented
Exemplo de interação:
Welcome to Contact List Manager!
Available Commands:
add - Add a new contact
list - Display all contacts
search - Search for a contact
delete - Delete a contact
quit - Exit the program
Enter command:
add
Enter name:
Alice
Enter phone number:
555-1234
Contact added successfully!
Enter command:
add
Enter name:
Bob
Enter phone number:
555-5678
Contact added successfully!
Enter command:
list
Command not yet implemented
Enter command:
quit
Goodbye!Experimente você mesmo
-- Initialize the contacts table
local contacts = {}
-- Display welcome message and menu
print("Welcome to Contact List Manager!")
print()
print("Available Commands:")
print("add - Add a new contact")
print("list - Display all contacts")
print("search - Search for a contact")
print("delete - Delete a contact")
print("quit - Exit the program")
print()
-- Main program loop
while true do
print("Enter command:")
local command = io.read()
if command == "quit" then
print("Goodbye!")
break
else
print("Command not yet implemented")
end
print()
endTodas as lições de Logic & Flow
1Iteração Avançada de Tabelas
Iterando com pairs()Iterando com ipairs()pairs() vs. ipairs()Revisão - Ficha de Personagem2Mais Funções da Biblioteca Table
table.concat()Construção de tabelas e unpack()table.sort()Ordenação personalizada com funçõesRecapitulação - Placar de recordes5Projeto: Engine de Aventura de Texto
Configuração do Projeto: A SalaConectando as Salas8Projeto: Lista de Contatos
Configuração do ProjetoO Loop Principal