Introduction
Échanger deux nombres signifie interchanger leurs valeurs. Dans ce laboratoire, nous allons apprendre à échanger deux nombres en langage C en utilisant différentes méthodes telles que l'utilisation d'une variable temporaire, l'addition et la soustraction, les opérateurs bit-à-bit, la multiplication et la division.
Note: Vous devez créer le fichier
~/project/main.cvous-même pour pratiquer la programmation et apprendre à le compiler et à l'exécuter à l'aide de gcc.
cd ~/project
## créer main.c
touch main.c
## compiler main.c
gcc main.c -o main
## exécuter main
./main
Utilisation d'une variable temporaire
Nous pouvons échanger deux nombres en utilisant une variable temporaire en suivant ces étapes :
- Déclarer trois variables
x,yettemp. - Affecter des valeurs à
xety. - Stocker la valeur de
xdanstemp. - Affecter la valeur de
yàx. - Affecter la valeur de
tempày. - Afficher les valeurs de
xety.
#include <stdio.h>
int main() {
int x = 5, y = 7, temp;
// Étape 3
temp = x;
// Étape 4 et 5
x = y;
y = temp;
// Étape 6
printf("Après l'échange, x = %d et y = %d\n", x, y);
return 0;
}
Utilisation de l'addition et de la soustraction
Nous pouvons échanger deux nombres en utilisant l'addition et la soustraction en suivant ces étapes :
- Affecter des valeurs à
xety. - Ajouter
xetyet affecter le résultat àx. - Soustraire la valeur d'origine de
ydexet affecter ày. - Soustraire la valeur d'origine de
yde la nouvelle valeur dexet affecter àx. - Afficher les valeurs de
xety.
#include <stdio.h>
int main() {
int x = 5, y = 7;
// Étape 2 et 3
x = x + y;
y = x - y;
// Étape 4
x = x - y;
// Étape 5
printf("Après l'échange, x = %d et y = %d\n", x, y);
return 0;
}
Utilisation d'opérateurs bit-à-bit
Nous pouvons échanger deux nombres en utilisant des opérateurs bit-à-bit en suivant ces étapes :
- Affecter des valeurs à
xety. - Effectuer un OU exclusif (XOR) entre
xetyet affecter le résultat àx. - Effectuer un OU exclusif entre la nouvelle valeur de
xetyet affecter le résultat ày. - Effectuer un OU exclusif entre la nouvelle valeur de
xetyet affecter le résultat àx. - Afficher les valeurs de
xety.
#include <stdio.h>
int main() {
int x = 5, y = 7;
// Étape 2 et 3
x = x ^ y;
y = x ^ y;
// Étape 4
x = x ^ y;
// Étape 5
printf("Après l'échange, x = %d et y = %d\n", x, y);
return 0;
}
Utilisation de la multiplication et de la division
Nous pouvons échanger deux nombres en utilisant la multiplication et la division en suivant ces étapes :
- Affecter des valeurs à
xety. - Multiplier
xetyet affecter le résultat àx. - Diviser la nouvelle valeur de
xparyet affecter le résultat ày. - Diviser la nouvelle valeur de
xpar la nouvelle valeur deyet affecter le résultat àx. - Afficher les valeurs de
xety.
#include <stdio.h>
int main() {
int x = 5, y = 7;
// Étape 2 et 3
x = x * y;
y = x / y;
// Étape 4
x = x / y;
// Étape 5
printf("Après l'échange, x = %d et y = %d\n", x, y);
return 0;
}
Résumé
Dans ce laboratoire, nous avons appris à échanger deux nombres en utilisant quatre méthodes différentes : en utilisant une variable temporaire, l'addition et la soustraction, des opérateurs bit-à-bit et la multiplication et la division. L'échange de deux nombres est utile en programmation lorsque nous voulons changer l'ordre de deux valeurs ou effectuer des opérations qui nécessitent de permuter les valeurs de deux variables.



