Menu
Coddy logo textTech

Bases de la priorité des opérateurs

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 27 sur 109.

La priorité des opérateurs détermine l'ordre dans lequel les opérations sont effectuées dans une expression. Les opérations ayant une priorité plus élevée sont effectuées avant celles ayant une priorité plus faible.

Créez un programme qui démontre la priorité des opérateurs :

result1 := 5 + 3 * 2
result2 := (5 + 3) * 2
fmt.Println("5 + 3 * 2 =", result1)
fmt.Println("(5 + 3) * 2 =", result2)

Ceci affiche :

5 + 3 * 2 = 11
(5 + 3) * 2 = 16

Dans la première expression, la multiplication (*) a une priorité plus élevée que l'addition (+), donc 3 * 2 est calculé en premier. Dans la deuxième expression, les parenthèses remplacent la priorité par défaut, forçant 5 + 3 à être calculé en premier.

challenge icon

Défi

Débutant

Dans ce défi, vous allez vous entraîner à comprendre la priorité des opérateurs en Go. Vous avez plusieurs variables avec des valeurs différentes, et vous devez corriger l'expression dans la variable result pour obtenir le résultat attendu.

L'expression a actuellement un placement de parenthèses incorrect. Votre tâche consiste à ajouter des parenthèses aux bons endroits pour que l'expression soit évaluée à true.

Aide-mémoire

La priorité des opérateurs détermine l'ordre dans lequel les opérations sont effectuées dans une expression. Les opérations ayant une priorité plus élevée sont effectuées avant celles ayant une priorité plus faible.

La multiplication (*) a une priorité plus élevée que l'addition (+) :

result1 := 5 + 3 * 2  // égal à 11 (3 * 2 d'abord, puis + 5)
result2 := (5 + 3) * 2  // égal à 16 (5 + 3 d'abord, puis * 2)

Utilisez des parenthèses pour passer outre la priorité par défaut et contrôler l'ordre des opérations.

Essayez vous-même

package main

import "fmt"

func main() {
	// Ces variables sont déjà configurées pour vous
	a := true
	b := false
	c := true
	
	// TODO: Ajoutez des parenthèses à l'expression ci-dessous pour qu'elle soit évaluée à true
	// HINT: L'expression doit être évaluée à true
	result := a && b || c
	
	// Ne modifiez pas la ligne ci-dessous
	fmt.Println(result)
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux