Mon programme imprime actuellement une table de vérité préprogrammée suivie du caractère correct à la fin de chaque ligne. Je voudrais aller au-delà de ce programme, mais j'ai couru dans un mur, je n'ai jamais lié la sortie d'une colonne à un appel de fonction dans une boucle for, et je n'arrive pas à trouver quelque chose près en ligne . Essentiellement, ce que je veux faire, c'est que si 0 apparaît dans la colonne p, j'attribuerais p char 'F', et si un 1 apparaît, j'attribuerais p char 'T'. Mon code prévu est le suivant:Table de vérité amusante, Java
public static void main(String args[])
{
char p = 'T';
char q = 'F';
char r = 'T';
int rows = (int) Math.pow(2,3);
for (int i=0; i<rows; i++) {
for (int j=3-1; j>=0; j--) {
System.out.print((i/(int) Math.pow(2, j))%2 + " ");
}
System.out.println(LProp(p,q,r));
}
}
Voici ma fonction LProp:
private static char LProp(char p, char q, char r)
{
// Logical expression
//(~q /\r /\~p) \/(~(r \/~p))
return return ORlogic(ANDlogic(NOTlogic(q),ANDlogic(r,NOTlogic(p))), NOTlogic(ORlogic(r,NOTlogic(p))));
}
Est-il utile, ou même possible d'assigner les colonnes 1 et de 0 à mes chars? La sortie, en passant, est une table de 4 colonnes avec 8 lignes sortant le char T ou F dans la 4ème colonne.
p q r LProp(p,q,r)
0 0 0 F
0 0 1 T
etc.
Ce que vous essayez de faire n'est pas clair. – Eran
Si on n'a pas travaillé avec des tables de vérité je pourrais voir comment ce post n'aurait pas de sens. J'ai maintenant mis à jour le post. – HamHat
* si 0 apparaît dans la colonne p j'attribuerais le caractère 'F' * Attribuer à quoi? qu'est-ce que tu veux faire avec? il suffit d'imprimer F au lieu de 0? – Guy