From cf4133638b5ff8915bceb1730391cb38e4b628b9 Mon Sep 17 00:00:00 2001 From: Martin Schmollinger <martin.schmollinger@reutlingen-university.de> Date: Fri, 7 Apr 2023 18:41:30 +0200 Subject: [PATCH] Solution to exercise of unit 03-05 --- exercise_0305/go.mod | 3 +++ exercise_0305/main.go | 44 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 exercise_0305/go.mod create mode 100644 exercise_0305/main.go diff --git a/exercise_0305/go.mod b/exercise_0305/go.mod new file mode 100644 index 0000000..aa6483b --- /dev/null +++ b/exercise_0305/go.mod @@ -0,0 +1,3 @@ +module gitlab.reutlingen-university.de/go-exercises/go-starter/exercise_0305 + +go 1.20 diff --git a/exercise_0305/main.go b/exercise_0305/main.go new file mode 100644 index 0000000..c15c0c9 --- /dev/null +++ b/exercise_0305/main.go @@ -0,0 +1,44 @@ +package main + +import "fmt" + +type PhoneBook struct { + entries map[int]string +} + +func (pb *PhoneBook) AddNumbers(person string, numbers ...int) { + for _, number := range numbers { + pb.entries[number] = person + } +} + +func CreateEmptyPhoneBook() PhoneBook { + emptyPB := PhoneBook{ + entries: make(map[int]string), + } + return emptyPB +} + +func (pb *PhoneBook) PrintPhoneBook() { + for number, person := range pb.entries { + fmt.Printf("%s: %d\n", person, number) + } +} + +func main() { + + pb := PhoneBook{ + entries: map[int]string{ + 4711: "Marcus", + 4712: "Martin", + }, + } + + pb.AddNumbers("Dominik", 4713, 4714) + pb.PrintPhoneBook() + + pb2 := CreateEmptyPhoneBook() + pb2.AddNumbers("Karlo", 1, 2, 3, 4, 5) + pb2.PrintPhoneBook() + +} -- GitLab