Introduction
Dans ce laboratoire, nous allons apprendre à écrire un programme C++ pour imprimer un tableau de vérité pour la logique XY+Z à l'aide de boucles. Le programme montrera les valeurs de X, Y, Z et le résultat de XY+Z à l'aide d'opérateurs logiques.
Créer un nouveau fichier C++
Accédez au répertoire ~/projet et créez un nouveau fichier C++ nommé main.cpp.
cd ~/projet
touch main.cpp
Inclure les bibliothèques
Dans cette étape, nous allons inclure les bibliothèques nécessaires à notre programme. La bibliothèque iostream fournit des services de base d'entrée/sortie pour les programmes C++.
#include <iostream>
using namespace std;
Déclarer des variables
Dans cette étape, nous allons déclarer les variables entières nécessaires pour stocker les valeurs de X, Y et Z.
int X, Y, Z;
Afficher les en-têtes du tableau de vérité
Dans cette étape, nous allons afficher les en-têtes du tableau de vérité. Nous allons afficher X, Y, Z et XY+Z en utilisant un espace tabulaire.
printf("X \t Y \t \Z \t XY+Z\n");
注意:原英文内容中\Z这里可能有误,推测应该是Z 。
Créer une boucle imbriquée
Dans cette étape, nous allons créer une boucle imbriquée à trois niveaux pour parcourir toutes les combinaisons possibles de X, Y et Z. La boucle la plus externe représente la valeur de X, la deuxième boucle représente la valeur de Y et la boucle la plus interne représente la valeur de Z.
//X value range 0 to 1
for (X = 0; X <= 1; X++)
{
//Y value range 0 to1
for (Y = 0; Y <= 1; Y++)
{
//Z value range 0 to1
for (Z = 0; Z <= 1; Z++)
{
//check for the XY+Z True values
if ((X && Y) || Z)
{
//print 1 for the true value
cout << ("%d \t %d \t %d \t 1\n", X, Y, Z);
}
else
{
//print 0 for the false value
cout << ("%d \t %d \t %d \t 0\n", X, Y, Z);
}
}
}
}
注意:代码中的cout << ("%d \t %d \t %d \t 1\n", X, Y, Z); 和 cout << ("%d \t %d \t %d \t 0\n", X, Y, Z); 存在格式问题,正确的应该是cout << X << "\t" << Y << "\t" << Z << "\t" << (X && Y || Z? 1 : 0) << "\n"; ,翻译后的内容按照原文格式保留了错误的代码形式。
Compiler et exécuter le programme
Nous pouvons compiler le fichier main.cpp en utilisant la commande g++ main.cpp -o main &&./main dans le terminal. Après cela, nous obtiendrons la sortie du tableau de vérité comme indiqué ci-dessous.
X Y Z XY+Z
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Code complet
Voici le code complet du fichier main.cpp.
#include <iostream>
using namespace std;
int main()
{
int X, Y, Z;
printf("X \t Y \t \Z \t XY+Z\n");
//X value range 0 to 1
for (X = 0; X <= 1; X++)
{
//Y value range 0 to1
for (Y = 0; Y <= 1; Y++)
{
//Z value range 0 to1
for (Z = 0; Z <= 1; Z++)
{
//check for the XY+Z True values
if ((X && Y) || Z)
{
//print 1 for the true value
cout << ("%d \t %d \t %d \t 1\n", X, Y, Z);
}
else
{
//print 0 for the false value
cout << ("%d \t %d \t %d \t 0\n", X, Y, Z);
}
}
}
}
return 0;
}
注意:代码中的printf("X \t Y \t \Z \t XY+Z\n"); 存在错误,多了一个反斜杠\ ,cout << ("%d \t %d \t %d \t 1\n", X, Y, Z); 和 cout << ("%d \t %d \t %d \t 0\n", X, Y, Z); 也存在格式问题,正确的应该是cout << X << "\t" << Y << "\t" << Z << "\t" << (X && Y || Z? 1 : 0) << "\n"; ,翻译后的内容按照原文格式保留了错误的代码形式。
Résumé
Dans ce laboratoire, nous avons appris à écrire un programme C++ pour afficher un tableau de vérité de la logique XY+Z à l'aide de boucles. Nous avons utilisé une boucle imbriquée à trois niveaux pour parcourir toutes les combinaisons possibles de X, Y et Z et utilisé des opérateurs logiques pour calculer le résultat. En complétant ce laboratoire, nous avons mieux compris les concepts de base de la programmation en langage C++.



