package main import "fmt" type Employee struct { Id int FirstName string LastName string } type Developer struct { Individual Employee HourlyRate int WorkWeek [7]int } type Weekday int const ( Sunday Weekday = iota Monday Tuesday Wednesday Thursday Friday Saturday ) func main() { d := Developer{Individual: Employee{Id: 1, FirstName: "Tony", LastName: "Stark"}, HourlyRate: 10} d.LogHours(Monday, 8) d.LogHours(Tuesday, 10) fmt.Println("Hours worked on monday:", d.WorkWeek[Monday]) fmt.Println("Hours worked on tuesday:", d.WorkWeek[Tuesday]) fmt.Printf("Hours worked this week: %d\n", d.HoursWorked()) } func (d *Developer) LogHours(day Weekday, hours int) { d.WorkWeek[day] = hours } func (d *Developer) HoursWorked() int { total := 0 for _, v := range d.WorkWeek { total += v } return total }