Open vkorbes opened 3 years ago
Dessa forma que fiz:
package main
import (
"fmt"
)
var x int
var y string
var z bool
func main (){
x = 42
y = "James Bond"
z = true
s := fmt.Sprintf("O valor de X, Y e Z nas respectiva ordem são: %v, %v e %v",x,y,z)
fmt.Println("Na váriavel S contem: ",s)
}
Não senti dificuldades. Segue logo abaixo o código:
package main
import "fmt"
var x = 42 var y = "James Bond" var z = true
func main() { s := fmt.Sprintf("%v, %v, %v", x, y, z) fmt.Println(s) }
Esse foi bem tranquilo, pois já estava brincando com o SprintF no exercicio anterior, que me causou uma dúvida antes.
package main
import (
"fmt"
)
var x = 42
var y = "James Bond"
var z = true
func main() {
s := fmt.Sprintf("X é %d\n Y é %s\n Z é %t", x, y, z)
fmt.Println(s)
}
Me confundi um pouco com Sprint e Sprintf foi na documentação e o f no final e pra formatação se tentar a função se o f (Sprint) não vai conseguir executar por conta dos tipos adjacentes.
package main
import "fmt"
var x int = 42
var y string = "James Bond"
var z bool = true
func main() {
s := fmt.Sprintf("x = %d | y = %s | z = %t", x, y, z)
fmt.Println(s)
}
@haystem acho que a sua atribuição de valores, não ficou como o pedido no exercício... acredito que deveria ser feito a atribuição de valores em package scope e não dentro do code block. Mas só uma observação... abs
package main
import "fmt"
var (
x int = 42
y string = "James Bond"
z bool = true
)
func main() {
s := fmt.Sprintf("%d, %s, %v", x, y, z)
fmt.Println(s)
}
package main
import "fmt"
// Declaração de variáveis com package-level scope
var x int = 42
var y string = "James Bond"
var z bool = true
func main() {
/*
Atribuição de todos os valores em uma variável
utilizando o operador curto de declaração
*/
s := fmt.Sprintf("%v \n%v \n%v", x, y, z)
// Imprime a variável contendo todos os valores
fmt.Println(s)
}
Output:
42
James Bond
true
package main
import "fmt"
var x = 42
var y = "James Bond"
var z = true
func main() {
s := fmt.Sprint(x, " ", y, " ", z)
fmt.Println(s)
}
package main
import "fmt"
var x = 42
var y = "James Bond"
var z = true
func main(){
s := fmt.Sprintf("%v %v %v", x, y, z)
fmt.Println(s)
}
package main
import "fmt"
var x = 42
var y = "James Bond"
var z = true
func main() {
s := fmt.Sprintf("%v %v %v", x, y, z)
fmt.Println(s)
}
Output:
42 James Bond true
https://play.golang.org/p/NpNtPp8hHyi
[Dicas] Lembrar da sintaxe do Printf/Sprintf
package main
import "fmt"
var x int = 42 var y string = "James Bond" var z bool = true
func main() { fmt.Printf("Tipo: %T | Valor: %v\n", x, x) fmt.Printf("Tipo: %T | Valor: %v\n", y, y) fmt.Printf("Tipo: %T | Valor: %v\n", z, z) s := fmt.Sprintf("Os valores são: %v, %v, %v", x, y, z)
fmt.Printf(s)
}
Code:
// Main Package
package main
// Import of the packages
import (
"fmt"
)
// Package-level variables
var (
x int = 42
y string = "James Bond"
z bool = true
)
// Main function
func main() {
// The result
s := fmt.Sprintf("Value of X: \"%v\", Type of X: \"%T\"\nValue of Y: \"%v\", Type of Y: \"%T\"\nValue of Z: \"%v\", Type of Z: \"%T\"", x, x, y, y, z, z)
// Print the result
fmt.Print(s)
}
Output:
Value of X: "42", Type of X: "int"
Value of Y: "James Bond", Type of V: "string"
Value of Z: "true", Type of Z: "bool"
Novo nesse mundo da programação, aprendendo Go como primeira linguagem, não consegui identificar o erro no meu código, agradeço qualquer ajuda.
package main
import "fmt"
// Atrabui os valores às variaveis de escopo global
var x int = 42
var y string = "James Bound"
var z bool = true
func main() {
// Atribui os valores das três variaveis a variavel 's'
s := fmt.Sprintf("x = %v\ny = %v\nz = %v", x, y, z)
// Demonstra o valor de 's'
fmt.Printf(s)
}
x = 42
y = James Bound
z = true
// You can edit this code! // Click here and start typing. package main
import "fmt"
var x int = 42 var y string = "James Bond" var z bool = true
func main() {
s := fmt.Sprintf("%v\t%v\t%v\t", x, y, z)
fmt.Println(s)
//fmt.Printf("%v, %T\n", y, y)
//fmt.Printf("%v, %T\n", z, z)
//fmt.Println("As variáveis de inciialização são chamadas de variáveis :=valor zero:=")
}
var x int = 47 var y string = "James Bonde" var z bool = true
func main() { s := fmt.Sprintf("%d\t%s\t%t", x, y, z)
fmt.Print(s)
}
package main
import "fmt"
func main() {
x := 42
y := "James Bond"
z := true
s := fmt.Sprintf("%v, %v, %v", x, y, z)
fmt.Println(s)
}
https://go.dev/play/p/Py_DEQ-JqpO
// You can edit this code!
// Click here and start typing.
package main
import "fmt"
var x int = 42
var y string = "James Bond"
var z bool = true
func main() {
s := fmt.Sprintf("%d\n%s\n%t", x, y, z)
fmt.Println(s)
}
/*
Na prática: exercício #3
Utilizando a solução do exercício anterior:
Em package-level scope, atribua os seguintes valores às variáveis:
para "x" atribua 42
para "y" atribua "James Bond"
para "z" atribua true
Na função main:
Use fmt.Sprintf para atribuir todos esses valores a uma única variável. Faça essa atribuição de tipo string a uma variável de nome "s" utilizando o operador curto de declaração.
Demonstre a variável "s".
*/
-----------------------------------------------------------------------------------------------------------------------------------------------
Output
42
James Bond
true
Program exited.
-----------------------------------------------------------------------------------------------------------------------------------------------
package main
import (
"fmt"
)
var x int = 42
var y string = "James Bond"
var z bool = true
func main() {
s := fmt.Sprintf("%d %s %v", x, y, z)
fmt.Println(s)
}
Não entendi muito bem como usa o Sprintf, então dei um jeito
o importante e que funciona kk
package main
import ( "fmt" )
var x = 42 var y = "james bond" var z = true
func main() { s := fmt.Sprint(x) d := fmt.Sprint(y) f := fmt.Sprint(z) fmt.Printf("%v \n%v \n%v", s, d, f) }
package main
import "fmt"
var x int = 42
var y string = " James Bond "
var z bool = true
func main() {
s := fmt.Sprintf("%v,%v,%v", x, y, z)
fmt.Println(s)
}
Exercício: Capítulo 3, Exercício 3 (Nível: 1)
Use esta thread para compartilhar sua solução, discutir o exercício com os colegas e pedir ajuda caso tenha dificuldades!