Einen Kontakt hinzufügen
Teil des Abschnitts Logic & Flow der Lua-Journey von Coddy — Lektion 43 von 54.
Aufgabe
EinfachImplementieren Sie die Funktion zum Hinzufügen von Kontakten für Ihre Kontaktlisten-Anwendung. Wenn der Benutzer add eingibt, sollte das Programm nach Kontaktdaten fragen und diese in der Liste contacts speichern.
Aufbauend auf der vorherigen Hauptschleife fügen Sie die Funktionalität zur Verarbeitung des Befehls add hinzu. Wenn dieser Befehl eingegeben wird, fordern Sie den Benutzer zur Eingabe eines Namens und einer Telefonnummer auf, erstellen Sie eine Kontakttabelle mit diesen Details und fügen Sie diese mit table.insert() zur Liste contacts hinzu.
Anforderungen:
- Behalten Sie den gesamten Code aus der vorherigen Herausforderung bei (Setup, Menüanzeige und Hauptschleife)
- Wenn der Benutzer
addeingibt, geben Sie Folgendes aus:Enter name: - Lesen Sie den Namen mit
io.read()ein - Geben Sie Folgendes aus:
Enter phone number: - Lesen Sie die Telefonnummer mit
io.read()ein - Erstellen Sie eine Tabelle im Dictionary-Stil mit den Schlüsseln
nameundphone - Fügen Sie diese Kontakttabelle mit
table.insert()in die Listecontactsein - Geben Sie Folgendes aus:
Contact added successfully! - Der Befehl
quitsollte weiterhin wie zuvor funktionieren - Andere Befehle sollten weiterhin
Command not yet implementedausgeben
Beispielinteraktion:
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!Probier es selbst
-- 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()
endAlle Lektionen in Logic & Flow
1Fortgeschrittene Table-Iteration
Iterieren mit pairs()Iterieren mit ipairs()pairs() vs. ipairs()Zusammenfassung – Charakterbogen4Einführung in Metatables
Was ist eine Metatable?setmetatable & getmetatableDie __index-MetamethodeDie __newindex-MetamethodeDie __tostring-MetamethodeArithmetische Metamethoden Teil 1Arithmetische Metamethoden Teil 2Zusammenfassung – Schreibgeschützte Tabellen7Fortgeschrittene String-Manipulation
string.gsub() für ErsetzungenEinführung in String-Patternsstring.find()string.match()Iterieren mit string.gmatch()Rückblick – Log-File-Parser2Weitere Funktionen der Table-Bibliothek
table.concat()Tabellenerstellung & unpack()table.sort()Benutzerdefiniertes Sortieren mit FunktionenRückblick – Highscore-Tabelle5Projekt: Text-Adventure-Engine
Projekt-Setup: Der RaumRäume verknüpfen8Projekt: Kontaktliste
Projekt-SetupDie Hauptschleife