Bonsoir, je travaille actuellement sur un code qui permettra de écrire la sortie la table de vérité des différentes portes logiques du système numériques.
Une partie sur la quelle je code la fonction ET à 2 entrée depuis ce matin m'échappe, j'ai créer une fonction avec des conditions, qui retourne la valeur .. si la condition est 1.

Info:

A = 0,1,0,1
B = 0,0,1,1

S(sortie) doit valoir= 0,0,0,1

Voila le code.
Votre aide me sera très très utile!

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <stdio.h>
#include <math.h>
 
int main()
{
    int numVarNon[8] = {0,1,0,1,0,0,1,1} ;
    printf("Entree A: ""%d%d%d%d\n\n", numVarNon[0],numVarNon[1],numVarNon[2],numVarNon[3]);
    printf("Entree B: ""%d%d%d%d\n",numVarNon[4],numVarNon[5],numVarNon[6],numVarNon[7]);
    int w, x, y, z ;
 
    FonctionET2(numVarNon[0], numVarNon[4],numVarNon[1],numVarNon[5],numVarNon[2],numVarNon[6], numVarNon[3], numVarNon[7]);
    printf("%d%d%d%d", w, x, y, z );
 
 
 
 
 
}
int FonctionET2 (int *adET1,int * adET5, int *adET2, int * adET6, int * adET3, int * adET7, int * adET4, int * adET8) /* Porte ET à 2 entrées */
{
    int w, x, y, z ;
 
    if (*adET1=1)
    {
       if ( *adET5=1)
        {
            w = 1 ;
        }
    }
    else
    {
        w = 0 ;
    }
 
    if  (* adET2=1)
    {
        if (* adET6=1)
        {
            x = 1 ;
        }
    }
 
    else
 
    {
        x = 0 ;
    }
 
    if (* adET3=1)
    {
        if (* adET7=1)
        {
            y = 1;
        }
 
    }
 
    else
 
    {
        y = 0;
    }
 
    if (* adET4=1)
    {
        if (* adET8=1)
        {
            z = 1;
        }
    }
 
    else
 
    {
        z = 0;
    }
 
    return w, x, y, z ;
}