vkorbes / aprendago

Curso completo em português da linguagem Go, de zero a ninja! 🇧🇷
http://aprendago.com
1k stars 179 forks source link

Exercício: Capítulo 9, Exercício 3 (Nível: 4) #29

Open vkorbes opened 3 years ago

vkorbes commented 3 years ago

Exercício: Capítulo 9, Exercício 3 (Nível: 4)

Link para o vídeo:

Use esta thread para compartilhar sua solução, discutir o exercício com os colegas e pedir ajuda caso tenha dificuldades!

diegoparra commented 3 years ago

O index começando do 0 confunde bastante, mas no final deu tudo certo xD, Acho que a dica aqui é sempre fazer (item - 1) = valor do index.

https://play.golang.org/p/pmQxMBXLzJ9

andersoncleyson commented 3 years ago

https://play.golang.org/p/jrV3kAUViSE

haystem commented 3 years ago

fiz com len para treinar mais sobre posicionamento :

package main

import("fmt")

func main(){
 array := []string{"Ana","Joana","Siraya","Carla","Vivian","Betina","Laritssa","Bianca","Muana","Juressica"} 

  fmt.Println(array[:3])
  fmt.Println(array[4:len(array)])
  fmt.Println(array[1:7])
  fmt.Println(array[2:len(array)-1])
  fmt.Println(array[len(array)-2])
  fmt.Println(len(array))
}
an4kein commented 3 years ago

https://play.golang.org/p/FpfRn0pa3fp

package main

import (
    "fmt"
)

func main() {
    slice := []int{}
    fmt.Printf("- Atribua 10 valores a ela: \n")
    slice = []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
    fmt.Println(slice)
    fmt.Println("- Do primeiro ao terceiro item do slice (incluindo o terceiro item!)")
    fmt.Println(slice[:3])
    fmt.Println("- Do quinto ao último item do slice (incluindo o último item!)")
    fmt.Println(slice[4:])
    fmt.Println("- Do segundo ao sétimo item do slice (incluindo o sétimo item!)")
    fmt.Println(slice[1:7])
    fmt.Println("- Do terceiro ao penúltimo item do slice (incluindo o penúltimo item!)")
    fmt.Println(slice[2:9])
    fmt.Println("- Desafio: obtenha o mesmo resultado acima utilizando a função len() para determinar o penúltimo item")
    fmt.Println(slice[2:len(slice[1:])])

}

Output

- Atribua 10 valores a ela: 
[1 2 3 4 5 6 7 8 9 10]
- Do primeiro ao terceiro item do slice (incluindo o terceiro item!)
[1 2 3]
- Do quinto ao último item do slice (incluindo o último item!)
[5 6 7 8 9 10]
- Do segundo ao sétimo item do slice (incluindo o sétimo item!)
[2 3 4 5 6 7]
- Do terceiro ao penúltimo item do slice (incluindo o penúltimo item!)
[3 4 5 6 7 8 9]
- Desafio: obtenha o mesmo resultado acima utilizando a função len() para determinar o penúltimo item
[3 4 5 6 7 8 9]

Program exited.

Depois de ver o video, me lembrei que eh possivel usar o (-) com a quantidade que voce quer subtrair usando a funcao (len).

Eu tinha usado:

fmt.Println(slice[2:len(slice[1:])])

Depois de ver o video:

fmt.Println(slice[2:len(slice)-1])

alansantosmg commented 3 years ago

Minha solução:

package main

import "fmt"

func main() {

    umaSlice := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

    fmt.Println(umaSlice[:3])
    fmt.Println(umaSlice[4:])
    fmt.Println(umaSlice[1:7])
    fmt.Println(umaSlice[2:9])
    fmt.Println(umaSlice[3 : len(umaSlice)-1])
}
Lucasmirandar commented 3 years ago

https://play.golang.org/p/WvuDu3oGb2T

JPauloMoura commented 2 years ago

3. Utilizando como base o exercício anterior, utilize slicing para demonstrar os valores:

import "fmt"

func main() { slice := []int{0, 10, 20, 30, 40, 50, 70, 80, 90, 100} fmt.Printf("item 1-3: %v\n", slice[:3]) fmt.Printf("item 5-10: %v\n", slice[5:]) fmt.Printf("item 2-7: %v\n", slice[2:7]) fmt.Printf("item 3-9: %v\n", slice[3:9]) //usando len() fmt.Printf("item 3-9: %v\n", slice[3:len(slice)-1]) }

#### Resultado:
```bash
item 1-3: [0 10 20]
item 5-10: [50 70 80 90 100]
item 2-7: [20 30 40 50 70]
item 3-9: [30 40 50 70 80 90]
item 3-9: [30 40 50 70 80 90]  

Resolução do Exercício


andersoncleyson commented 2 years ago
package main

import "fmt"

func main() {
    slice := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

    slice1 := append(slice[:3])
    fmt.Println(slice1)

    slice2 := append(slice[4:])
    fmt.Println(slice2)

    slice3 := append(slice[1:7])
    fmt.Println(slice3)

    slice4 := append(slice[2:9])
    fmt.Println(slice4)

    slice = append(slice[2 : len(slice)-1])
    fmt.Println(slice)
}
tomashugo commented 2 years ago
package main

import (
    "fmt"
)

func main() {
    slice := []int{1,2,3,4,5,6,7,8,9,10}

    fmt.Println(slice[:3])
    fmt.Println(slice[4:])
    fmt.Println(slice[1:7])
    fmt.Println(slice[2:9])
    fmt.Println(slice[2:len(slice)-1])
}
CaueFarias commented 2 years ago

package main

import ( "fmt" )

func main() {

slice := []int{10, 20, 30, 40, 50, 60, 70, 80, 90, 100}

for índice, número := range slice {
    fmt.Println("No índice: ", índice, "Temos o valor: ", número)
}
fmt.Println(slice[:3])
fmt.Println(slice[4:])
fmt.Println(slice[1:7])
fmt.Println(slice[2:9])
fmt.Println(slice[2 : len(slice)-1])

}

viniciussanchez commented 2 years ago

https://go.dev/play/p/8bDGcsq4w3k

AlissonAp commented 2 years ago

https://go.dev/play/p/njAKJVOt7aU

wfrsilva commented 2 years ago

Cap. 9 – Exercícios: Nível #4 – 3 https://go.dev/play/p/kD8YtwkcYB7

image

M3L1M commented 1 year ago

func main() { slice := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

fmt.Println(slice[:3])
fmt.Println(slice[4:])
fmt.Println(slice[1:7])
fmt.Println(slice[2:9])
fmt.Println(slice[2 : len(slice)-1])

}

adelsonsljunior commented 1 year ago
package main

import (
    "fmt"
)

func main() {

    slice := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

    fmt.Println(slice[0:3])
    fmt.Println(slice[4:])
    fmt.Println(slice[1:7])
    fmt.Println(slice[2:9])
    fmt.Println(slice[2 : len(slice)-1])
}
DominMFD commented 2 months ago

https://go.dev/play/p/2YcorTxUlI4

thiagoCalazans-dev commented 2 months ago

https://go.dev/play/