github.com/giovannyortegon/go@v0.0.0-20220115155912-8890063f5bdd/Profesional/2-Reto/Reto1.go (about) 1 package main 2 3 import "fmt" 4 5 // lista de tarea 6 type TaskList struct { 7 tasks[] * Task 8 } 9 10 func (tl * TaskList) appendTask (t * Task) { 11 tl.tasks = append(tl.tasks, t) 12 } 13 14 func (tl * TaskList) removeTask (index int) { 15 tl.tasks = append(tl.tasks[:index], tl.tasks[index + 1:]...) 16 } 17 18 type Task struct { 19 name string 20 desc string 21 completed bool 22 } 23 24 func (t * Task) toPrint() { 25 fmt.Printf("Nombre: %s\nDescription: %s\nConectado: %t\n", 26 t.name, t.desc, t.completed) 27 } 28 29 func main() { 30 t1 := Task {"Curso Go","APrendizaje Go desde Principante a Master", false} 31 t1.toPrint() 32 33 t2 := Task { 34 name: "Curso Python", 35 desc: "Desarrollo de Scripts for Cybersecurity", 36 completed: false, 37 } 38 t2.toPrint() 39 40 lista := TaskList{} 41 lista.appendTask(&t1) 42 lista.appendTask(&t2) 43 44 lista.removeTask(1) 45 46 for idx, task := range lista.tasks { 47 fmt.Println(idx, task.name) 48 } 49 50 }