add: struct exercises and quiz
This commit is contained in:
39
24-structs/exercises/01-warmup/main.go
Normal file
39
24-structs/exercises/01-warmup/main.go
Normal file
@@ -0,0 +1,39 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// EXERCISE: Warm Up
|
||||
//
|
||||
// Starting with this exercise, you'll build a command-line
|
||||
// game store.
|
||||
//
|
||||
// 1. Declare the following structs:
|
||||
//
|
||||
// + item: id (int), name (string), price (int)
|
||||
//
|
||||
// + game: embed the item, genre (string)
|
||||
//
|
||||
//
|
||||
// 2. Create a game slice using the following data:
|
||||
//
|
||||
// id name price genre
|
||||
//
|
||||
// 1 god of war 50 action adventure
|
||||
// 2 x-com 2 30 strategy
|
||||
// 3 minecraft 20 sandbox
|
||||
//
|
||||
//
|
||||
// 3. Print all the games.
|
||||
//
|
||||
// EXPECTED OUTPUT
|
||||
// Please run the solution to see the output.
|
||||
// ---------------------------------------------------------
|
||||
|
||||
func main() {
|
||||
}
|
39
24-structs/exercises/01-warmup/solution/main.go
Normal file
39
24-structs/exercises/01-warmup/solution/main.go
Normal file
@@ -0,0 +1,39 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
type item struct {
|
||||
id int
|
||||
name string
|
||||
price int
|
||||
}
|
||||
|
||||
type game struct {
|
||||
item
|
||||
genre string
|
||||
}
|
||||
|
||||
games := []game{
|
||||
{
|
||||
item: item{id: 1, name: "god of war", price: 50},
|
||||
genre: "action adventure",
|
||||
},
|
||||
{item: item{id: 2, name: "x-com 2", price: 40}, genre: "strategy"},
|
||||
{item: item{id: 3, name: "minecraft", price: 20}, genre: "sandbox"},
|
||||
}
|
||||
|
||||
fmt.Printf("Inanc's game store has %d games.\n\n", len(games))
|
||||
|
||||
for _, g := range games {
|
||||
fmt.Printf("#%d: %-15q %-20s $%d\n",
|
||||
g.id, g.name, "("+g.genre+")", g.price)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user