Capítulo 03: Estrutura Condicional 🍃🍥
Neste capítulo, vamos aprender a fazer o programa tomar decisões usando a estrutura if e o switch do Go, com o tema Naruto!
📖 O que é Estrutura Condicional?
É quando o programa precisa testar uma condição e seguir caminhos diferentes dependendo do resultado. No Go, não usamos parênteses () nas condições do if!
📖 Exemplo Guiado: Teste Chunin
Vamos criar um programa que avalia se um ninja passou no teste escrito do Exame Chunin (precisa de nota 7 ou mais).
- Crie o arquivo
teste_chunin.gona pastasrc/:
package main
import "fmt"
func main() {
nota := 8.5
fmt.Println("Nota do ninja:", nota)
// Repare que não usamos parênteses na condição!
if nota >= 7.0 {
fmt.Println("Aprovado! Voce esta pronto para a proxima fase.")
} else {
fmt.Println("Reprovado! Volte para a Academia Ninja.")
}
}🕹️ Como Executar e Testar no VS Code
- Abra o terminal integrado.
- Execute:
go run teste_chunin.go
Resultado Esperado:
Nota do ninja: 8.5
Aprovado! Voce esta pronto para a proxima fase.📖 Recurso Go: O switch Limpo
O Go possui um switch muito limpo que não precisa da palavra break no final de cada caso!
rank := 1
switch rank {
case 1:
fmt.Println("Genin")
case 2:
fmt.Println("Chunin")
case 3:
fmt.Println("Jonin")
default:
fmt.Println("Rank desconhecido")
}📊 Ilustração Visual: Fluxo de Decisão
Veja como o programa decide qual caminho seguir:
graph TD A{"Nota >= 7.0?"} -->|Sim| B[Aprovado!] A -->|Não| C[Reprovado!]
🛠️ Prática Obrigatória 1: Classificação Ninja
Crie um programa chamado rank_ninja.go que use uma variável com a quantidade de missões concluídas por um ninja e o classifique usando if ou switch:
- Menos de 10 missões: Genin
- De 10 a 50 missões: Chunin
- Mais de 50 missões: Jonin
🔑 Gabarito de Código
Prática 1: rank_ninja.go
package main
import "fmt"
func main() {
missoes := 25
fmt.Println("Missoes concluidas:", missoes)
if missoes < 10 {
fmt.Println("Seu rank e: Genin")
} else if missoes <= 50 {
fmt.Println("Seu rank e: Chunin")
} else {
fmt.Println("Seu rank e: Jonin")
}
}