Hostinger

Créer des conditions dans Go

Introduction aux conditions

Les conditions sont des éléments essentiels dans tout langage de programmation, y compris Go (Golang). Elles permettent à votre programme de prendre des décisions en fonction de certaines conditions ou états.

Imaginez que vous êtes à un carrefour. Selon que la lumière est rouge ou verte, vous décidez de vous arrêter ou de continuer à avancer. Les conditions en Go fonctionnent de la même manière : elles permettent à votre programme de décider quelle action entreprendre en fonction des données disponibles.

Condition go illustration carrefour

Structure if

La structure if est la condition la plus basique en Go. Elle permet d’exécuter un bloc de code seulement si une condition spécifique est vraie.

package main

import "fmt"

func main() {
    age := 20

    if age >= 18 {
        fmt.Println("Vous êtes majeur.")
    }
}

Dans cet exemple, si la variable age est supérieure ou égale à 18, le programme affichera Vous êtes majeur. Sinon, il ne fera rien.

Exécutons ce programme avec go run main.go :

Vous êtes majeur.

Structure if et else

Parfois, vous voulez exécuter un bloc de code alternatif si la condition initiale est fausse. C’est là qu’intervient la structure if et else.

package main

import "fmt"

func main() {
    temperature := 15

    if temperature > 30 {
        fmt.Println("Il fait très chaud.")
    } else {
        fmt.Println("La température est agréable.")
    }
}

Dans cet exemple, si la température est supérieure à 30, le programme affichera "Il fait très chaud". Sinon, il affichera "La température est agréable".

Structure else if

Pour gérer plusieurs conditions, vous pouvez utiliser else if. Cela permet de vérifier plusieurs cas séquentiellement.

En programmation, exécuter un ensemble d’instructions "séquentiellement" signifie qu’elles sont traitées les unes après les autres, dans un ordre donné, sans chevauchement ni parallélisation. Autrement dit, chaque instruction doit être terminée avant que la suivante ne commence.

Voici un exemple :

package main

import "fmt"

func main() {
    score := 85

    if score >= 90 {
        fmt.Println("Excellent !")
    } else if score >= 75 {
        fmt.Println("Bien joué.")
    } else {
        fmt.Println("Bonne chance pour la prochaine fois.")
    }
}

Dans cet exemple, le programme vérifie d’abord si le score est supérieur ou égal à 90. Si c’est le cas, il affiche "Excellent !". Sinon, il vérifie si le score est supérieur ou égal à 75 pour afficher "Bien joué", et si aucune des conditions précédentes n’est remplie, il affiche "Bonne chance pour la prochaine fois".

Structure switch

Lorsque vous avez plusieurs cas à vérifier, la structure switch peut rendre votre code plus lisible et organisé.

package main

import "fmt"

func main() {
    jour := "mardi"

    switch jour {
    case "lundi":
        fmt.Println("Début de la semaine.")
    case "mardi":
        fmt.Println("Deuxième jour de la semaine.")
    case "vendredi":
        fmt.Println("Presque le week-end !")
    default:
        fmt.Println("C'est un jour de la semaine.")
    }
}

Dans cet exemple, le programme compare la variable jour à plusieurs cas. Si jour est égal à mardi, il affichera "Deuxième jour de la semaine". Si aucun des cas ne correspond, il exécutera le bloc default.

Les expressions dans Go (&& et ||)

Les conditions peuvent être des expressions simples ou complexes. Vous pouvez combiner plusieurs conditions en utilisant des opérateurs logiques comme && (ET) et || (OU).

Voici un exemple avec des expressions logiques :

package main

import "fmt"

func main() {
	taille := 140
	abonnement := true

	if taille >= 130 && abonnement {
		fmt.Println("Vous pouvez aller sur le grand huit.")
	} else {
		fmt.Println("Vous ne pouvez pas aller sur le grand huit.")
	}
}

Ci-dessous, le programme vérifie si taille est supérieur ou égal à 140 (cm) et si abonnement est vrai. Si les deux conditions sont remplies, il affiche "Vous pouvez aller sur le grand huit". Sinon, il affiche "Vous ne pouvez pas aller sur le grand huit".