전체 연락처 목록 보기
Coddy Lua 여정의 Logic & Flow 섹션에 포함된 레슨 — 54개 중 44번째.
챌린지
쉬움연락처 관리 애플리케이션을 위한 목록 표시 기능을 구현하세요. 사용자가 list를 입력하면, 프로그램은 저장된 모든 연락처를 형식에 맞춰 표시해야 합니다.
이전 챌린지를 바탕으로 list 명령을 처리하는 기능을 추가하세요. ipairs()를 사용하여 contacts 테이블을 반복하고 각 연락처의 정보를 표시합니다. 목록이 비어 있는 경우, 사용자에게 적절히 알립니다.
요구 사항:
- 이전 챌린지의 모든 코드(설정, 메뉴 표시, 메인 루프 및 추가 기능)를 유지합니다.
- 사용자가
list를 입력하면contacts테이블이 비어 있는지 확인합니다. - 비어 있는 경우,
No contacts found.를 출력합니다. - 비어 있지 않은 경우,
Contact List:를 출력합니다. ipairs()를 사용하여contacts테이블을 반복합니다.- 각 연락처에 대해
[index]. [name] - [phone]형식으로 출력합니다. add및quit명령은 이전과 동일하게 작동해야 합니다.- 다른 명령들은 여전히
Command not yet implemented를 출력해야 합니다.
상호작용 예시:
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:
list
No contacts found.
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
Contact List:
1. Alice - 555-1234
2. Bob - 555-5678
Enter command:
quit
Goodbye!직접 해보기
-- Initialize contacts list
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 loop
while true do
print("Enter command:")
local command = io.read()
if command == "add" then
print("Enter name:")
local name = io.read()
print("Enter phone number:")
local phone = io.read()
local contact = {name = name, phone = phone}
table.insert(contacts, contact)
print("Contact added successfully!")
print()
elseif command == "quit" then
print("Goodbye!")
break
else
print("Command not yet implemented")
print()
end
end