Bonjour,

J'ai un problème concernant un petit programme dans mon cours.
Ça concerne la logique et plus précisément le connecteur implique.

Voici donc la table du connecteur en question:

vrai vrai implique vrai
vrai faux implique faux
faux vrai implique vrai
faux faux implique vrai

Il y a ces deux fonctions dans mon cours que je ne comprends pas, le tout n'est pas compliqué mais j'aimerais bien comprendre les voici :

Première fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
static boolean Implique(boolean a, boolean b)
{
    if (a) {
        if (b) {
            return true;
        }
        else {
            return false;
        }
    }
    else {
        return true;
    }
}
Deuxième fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
static boolean Implique2(boolean a, boolean b) 
{
   return (!a) || b;
}
Pour la première méthode j'ai compris :

Si a est vrai et si b est vrai alors VRAI.
Sinon tu retournes FAUX.

Mais c'est tout ce que j'ai compris et je n'ai rien compris par contre pour la deuxième. De plus, je ne comprends pas comment avec aussi peu de conditions on arrive à explorer toutes les possibilités ?

Merci d'avance pour vos éclaircissements.