Je vous mets au défi d'écrire un code pour créer un diagramme de porte logique ASCII (étendu) pour la somme des produits sous forme d'une équation.
Utilisez la notation suivante pour représenter les portes:
ET INPUT───|&&
|&&───OUTPUT
INPUT───|&&
OU
INPUT───|OR
|OR───OUTPUT
INPUT───|OR
Portes avec plus de 2 entrées
INPUT───|OR
|OR
INPUT───|OR───OUTPUT
|OR
INPUT───|OR
NE PAS
INPUT───│>o───OUTPUT
Jeu de caractères
Notez qu'il │
ne s'agit pas d'un signe de tuyau ASCII mais d'un caractère de dessin de boîte . Utilisez des caractères de dessin de boîte tels que ─ │ ┌ ┐ └ ┘
pour les connexions.
Exemple
Contribution A'*B'+B*C
Production
A────│>o────│&&
│&&─────┐
B────│>o────│&& └│OR
│OR─────A*B+B*C
B───────────│&& ┌│OR
│&&─────┘
C───────────│&&
Gagnant
Le gagnant est la réponse avec le plus de votes en 5 jours
popularity-contest
ascii-art
Mukul Kumar
la source
la source
─ │ ┌ ┐ └ ┘
. Je pense que vous faites référence au jeu de caractères MS-DOS . De plus, votre exemple ne devrait-il pas avoir une seuleB
entrée divisée entre les deux portes ET? Et pouvons-nous supposer qu'il n'y aura pas besoin de fils pour se croiser n'importe où?─│
plutôt que─┤
.Réponses:
C ++ 11
Fait enfin. Et cela ne m'a pris que la majeure partie de la journée.
Avant de répertorier le code et l'exemple de sortie, quelques notes rapides:
Ce que ce programme prend en charge
Choses que ce programme ne prend pas en charge
char
tampon bidimensionnel .Code
Exemple de sortie
Exemple de sortie (avec CP437 activé)
la source
#include <vector>
C ++
Ouf! Fait en 1 jour 12 heures !!!
Ce code ne gère que les tableaux
ENTRÉE (TYPES)
Uniquement addition de termes avec deux variables se multipliant
Peut gérer n'importe quel nombre de termes, variables.
CODE: -
PRODUCTION
la source