Afficher le tableau de vérité de XY+Z à l'aide d'une boucle

C++C++Beginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

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 des 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"; ,翻译后的内容按照原文格式保留了错误的代码形式。

Sommaire

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++.