Objectifs
- Utiliser les opérateurs arithmétiques pour effectuer des calculs.
- Comparer des valeurs avec les opérateurs de comparaison.
- Combiner des conditions avec les opérateurs logiques.
- Comprendre la différence entre la division entière et la division flottante.
Les opérateurs sont les symboles qui vous permettent d’effectuer des opérations sur vos variables et vos valeurs.
Opérateurs Arithmétiques
Ce sont les opérateurs mathématiques de base.
| Opérateur | Nom | Exemple | Résultat |
|---|---|---|---|
+ | Addition | 5 + 2 | 7 |
- | Soustraction | 5 - 2 | 3 |
* | Multiplication | 5 * 2 | 10 |
/ | Division | 5 / 2 | 2 (division entière) |
% | Modulo | 5 % 2 | 1 (reste de la division) |
** | Exposant | 5 ** 2 | 25 (5 à la puissance 2) |
Division entière vs. flottante
Attention : si vous divisez deux nombres entiers (Integer), Ruby effectue une division entière et tronque le résultat. Pour obtenir un résultat à virgule flottante, au moins un des nombres doit être un Float.
10 / 3 # => 2
10.0 / 3 # => 3.3333...
10 / 3.0 # => 3.3333...
Opérateurs de Comparaison
Ces opérateurs comparent deux valeurs et renvoient toujours un booléen (true ou false).
| Opérateur | Signification | Exemple | Résultat |
|---|---|---|---|
== | Égal à | 5 == 5 | true |
!= | Différent de | "a" != "b" | true |
> | Strictement supérieur à | 5 > 2 | true |
< | Strictement inférieur à | 5 < 2 | false |
>= | Supérieur ou égal à | 5 >= 5 | true |
<= | Inférieur ou égal à | 5 <= 2 | false |
Ces opérateurs sont le cœur des conditions if.
Opérateurs Logiques
Ils permettent de combiner plusieurs expressions booléennes.
-
&&(ET logique) : Renvoietrueuniquement si les deux côtés sont vrais.age = 25 est_etudiant = true # Est-il majeur ET étudiant ? age >= 18 && est_etudiant # => true -
||(OU logique) : Renvoietruesi au moins un des deux côtés est vrai.role = "user" # Est-il admin OU modo ? role == "admin" || role == "moderateur" # => false -
!(NON logique) : Inverse la valeur de vérité d’une expression.is_active = false !is_active # => true
&& vs and
Ruby propose aussi des versions textuelles (and, or). Elles n’ont pas la même priorité que && et ||. Pour éviter la confusion, une bonne pratique pour débuter est de toujours utiliser && et || pour les opérations logiques booléennes.
Bonnes pratiques
- Utilisez des parenthèses
()pour clarifier l’ordre des opérations dans des calculs ou des conditions complexes, même si ce n’est pas toujours nécessaire.(a + b) * cest plus lisible. - Pour obtenir un résultat flottant d’une division, assurez-vous qu’au moins un des nombres est un
Float(ex:nombre.to_f / autre_nombre).
Exercices
Ces exercices sont parfaits pour la console irb.
-
Calculs :
- Quel est le reste de la division de 100 par 7 ?
- Calculez 3 à la puissance 4.
-
Comparaisons :
- Écrivez une expression qui vérifie si
100est un nombre pair. (Indice : utilisez le modulo%). - Écrivez une expression qui vérifie si la chaîne de caractères
"ruby"est différente de"python".
- Écrivez une expression qui vérifie si
-
Logique combinée :
- Déclarez une variable
temperature = 15et une variablepleut = true. - Écrivez une condition qui est vraie s’il fait plus de 10 degrés ET qu’il ne pleut pas. Le résultat devrait être
false. - Écrivez une condition qui est vraie si la température est en dessous de 0 OU au-dessus de 30.
- Déclarez une variable