diff options
author | LaĆs Lima <laislima98@hotmail.com> | 2022-12-28 19:55:18 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-28 19:55:18 -0300 |
commit | ef213556a3c33adc38ef13be91fa532b4188e9ae (patch) | |
tree | 6a366d371fe83eddfa8b1cf9a43bf1a6c1324fcc /exercises/anonymous-functions | |
parent | a5938c32e9459b2627fcbbc9a7792ef90264978e (diff) |
Add exercises for anonymous functions
Diffstat (limited to 'exercises/anonymous-functions')
3 files changed, 65 insertions, 0 deletions
diff --git a/exercises/anonymous-functions/anonymous-functions1/main.go b/exercises/anonymous-functions/anonymous-functions1/main.go new file mode 100644 index 0000000..20a90cf --- /dev/null +++ b/exercises/anonymous-functions/anonymous-functions1/main.go @@ -0,0 +1,15 @@ +// anonymous functions1 +// Make me compile! + +// I AM NOT DONE +package main + +import "fmt" + +func main() { + + func(name string) { + fmt.Printf("Hello %s", name) + }() + +} diff --git a/exercises/anonymous-functions/anonymous-functions2/main.go b/exercises/anonymous-functions/anonymous-functions2/main.go new file mode 100644 index 0000000..0c899a1 --- /dev/null +++ b/exercises/anonymous-functions/anonymous-functions2/main.go @@ -0,0 +1,15 @@ +// anonymous functions2 +// Make me compile! + +// I AM NOT DONE +package main + +import "fmt" + +func main() { + var sayBye func(name string) + + sayBye = func() { + fmt.Printf("Bye %s", n) + } +} diff --git a/exercises/anonymous-functions/anonymous-functions3/main.go b/exercises/anonymous-functions/anonymous-functions3/main.go new file mode 100644 index 0000000..d49c752 --- /dev/null +++ b/exercises/anonymous-functions/anonymous-functions3/main.go @@ -0,0 +1,35 @@ +// anonymous functions3 +// Make me compile! + +// I AM NOT DONE +package main + +import "fmt" + +func updateStatus() func() string { + var index int + orderStatus := map[int]string{ + 1: "TO DO", + 2: "DOING", + 3: "DONE", + } + + return func() string { + index++ + return "What should I return?" + } +} + +func main() { + anonymous_func := updateStatus() + var status string + + status = anonymous_func() + status = anonymous_func() + + if status == "DONE" { + fmt.Println("Good Job!") + } else { + panic("To complete the challenge the status must be DONE") + } +} |