Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/06/2011, 21:54
ElMeoS
 
Fecha de Ingreso: junio-2011
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 3
Compuertas Logicas

Muy Buenas noches a todos hoy les traigo 3 codigos que muestran el manejo de las compuertas logicas AND, OR y NOT mediante applets muy intuitivos.

Las compuertas logicas actuan de la siguiente manera:

OR : suma las 2 entradas y entrega 1
AND : multiplica las 2 entradas y entrega 1
NOT : niega la variable entrante

las tablas de verdad no creo sean necesarias agregarlas...
Bueno he aqui los codigos



Código HTML:
Ver original
  1. import java.applet.Applet;
  2. import java.awt.*;
  3.  
  4.  public class CompuertaOR extends Applet
  5.  {
  6.  Button btn0;
  7.  Button btn1;
  8.  Button btn2;
  9.  Button btn3;
  10.  Button btnr;
  11.  Button btnl;
  12.  double var1;
  13.  double var2;
  14.  double var3;
  15.  String svar1;
  16.  String svar2;
  17.  String svar3;
  18.  String svarl;
  19.  TextField tex1;
  20.  TextField tex2;
  21.  TextField tex3;
  22.  
  23.   public CompuertaOR()
  24.   {  }
  25.  
  26.   public boolean action(Event event,Object obj)
  27.   {
  28.    if(event.target == btn0)
  29.      {
  30.      var1 = 0.0D;
  31.      svar1 = "A = 0";
  32.      tex1.setText(svar1);
  33.      return true;
  34.      }
  35.    if(event.target == btn1)
  36.      {
  37.      var1 = 1.0D;
  38.      svar1 = "A = 1";
  39.      tex1.setText(svar1);
  40.      return true;
  41.      }
  42.    if(event.target == btn2)
  43.      {
  44.      var2 = 0.0D;
  45.      svar2 = "B = 0";
  46.      tex2.setText(svar2);
  47.      return true;
  48.      }
  49.    if(event.target == btn3)
  50.      {
  51.      var2 = 1.0D;
  52.      svar2 = "B = 1";
  53.      tex2.setText(svar2);
  54.      return true;
  55.      }
  56.    if(event.target == btnl)
  57.      {
  58.      svarl = "     ";
  59.      tex1.setText(svarl);
  60.      tex2.setText(svarl);
  61.      tex3.setText(svarl);
  62.      return true;
  63.      }
  64.    if(event.target == btnr){
  65.    if(var1==0 && var2==0)
  66.     {
  67.     var3 = 0.0D;
  68.      svar3 = "Z = 0";
  69.      tex3.setText(svar3);
  70.      return true;
  71.      }
  72.      }    
  73.    if(var1==1 || var2==1)
  74.      {
  75.      var3 = 1.0D;
  76.      svar3 = "Z = 1";
  77.      tex3.setText(svar3);
  78.      return true;
  79.      }
  80.    else
  81.    return false;  
  82.   }
  83.  
  84.   public void init()
  85.   {
  86.    btn0 = new Button("0");
  87.    btn1 = new Button("1");
  88.    btn2 = new Button("0");
  89.    btn3 = new Button("1");
  90.    btnr = new Button("Salida");
  91.    btnl = new Button("Limpiar");
  92.    tex1 = new TextField(5);
  93.    add(tex1);
  94.    add(btn0);
  95.    add(btn1);
  96.    tex2 = new TextField(5);
  97.    add(tex2);
  98.    add(btn2);
  99.    add(btn3);
  100.    tex3 = new TextField(5);
  101.    add(tex3);
  102.    add(btnr);
  103.    add(btnl);
  104.    setBackground(Color.black);
  105.    svar1 = "A = 0";
  106.    svar2 = "B = 0";
  107.    tex1.setText(svar1);
  108.    tex2.setText(svar2);
  109.   }
  110.  
  111.   public void paint(Graphics g)
  112.   {
  113.   g.setColor(new Color(100,255,140));
  114.   g.drawLine(220,80,230,105);
  115.   g.drawLine(220,130,230,105);
  116.   g.drawLine(200,95,220,95);
  117.   g.drawLine(200,115,220,115);
  118.   g.drawArc(170,80,100,50,0,90);
  119.   g.drawArc(170,80,100,50,270,90);
  120.   g.drawString("A",190,98);
  121.   g.drawString("B",190,120);
  122.   g.drawString("Z",295,110);
  123.   g.drawLine(270,105,290,105);
  124.   g.drawString("Compuerta Logica OR  (2 entradas)",145,170);
  125.   }
  126.  }
]
Código HTML:
Ver original
  1. import java.applet.Applet;
  2. import java.awt.*;
  3.  
  4.  public class CompuertaAND extends Applet
  5.  {
  6.     Button btn0;
  7.     Button btn1;
  8.     Button btn2;
  9.     Button btn3;
  10.     Button btnr;
  11.     Button btnl;
  12.     double var1;
  13.     double var2;
  14.     double var3;
  15.     String svar1;
  16.     String svar2;
  17.     String svar3;
  18.     String svarl;
  19.     TextField tex1;
  20.     TextField tex2;
  21.     TextField tex3;
  22.  
  23.     public CompuertaAND()
  24.     {    }
  25.  
  26.     public boolean action(Event event,Object obj)
  27.     {
  28.         if(event.target == btn0)
  29.         {
  30.             var1 = 0.0D;
  31.             svar1 = "A = 0";
  32.             tex1.setText(svar1);
  33.             return true;
  34.         }
  35.         if(event.target == btn1)
  36.         {
  37.             var1 = 1.0D;
  38.             svar1 = "A = 1";
  39.             tex1.setText(svar1);
  40.             return true;
  41.         }
  42.         if(event.target == btn2)
  43.         {
  44.             var2 = 0.0D;
  45.             svar2 = "B = 0";
  46.             tex2.setText(svar2);
  47.             return true;
  48.         }
  49.         if(event.target == btn3)
  50.         {
  51.             var2 = 1.0D;
  52.             svar2 = "B = 1";
  53.             tex2.setText(svar2);
  54.             return true;
  55.         }
  56.         if(event.target == btnl)
  57.         {
  58.             svarl = "     ";
  59.             tex1.setText(svarl);
  60.             tex2.setText(svarl);
  61.             tex3.setText(svarl);
  62.             return true;
  63.         }
  64.         if(event.target == btnr){
  65.             if(var1==1 && var2==1)
  66.            {
  67.                var3 = 1.0D;
  68.                 svar3 = "Z = 1";
  69.                 tex3.setText(svar3);
  70.                 return true;
  71.             }
  72.         }  
  73.         if(var1==0 || var2==0)
  74.         {
  75.             var3 = 0.0D;
  76.             svar3 = "Z = 0";
  77.             tex3.setText(svar3);
  78.             return true;
  79.         }
  80.         else
  81.         return false;  
  82.     }
  83.  
  84.     public void init()
  85.     {
  86.         btn0 = new Button("0");
  87.         btn1 = new Button("1");
  88.         btn2 = new Button("0");
  89.         btn3 = new Button("1");
  90.         btnr = new Button("Salida");
  91.         btnl = new Button("Limpiar");
  92.         tex1 = new TextField(5);
  93.         add(tex1);
  94.         add(btn0);
  95.         add(btn1);
  96.         tex2 = new TextField(5);
  97.         add(tex2);
  98.         add(btn2);
  99.         add(btn3);
  100.         tex3 = new TextField(5);
  101.         add(tex3);
  102.         add(btnr);
  103.         add(btnl);
  104.         setBackground(Color.black);
  105.         svar1 = "A = 0";
  106.         svar2 = "B = 0";
  107.         tex1.setText(svar1);
  108.         tex2.setText(svar2);
  109.     }
  110.  
  111.     public void paint(Graphics g)
  112.     {
  113.         g.setColor(new Color(100,255,140));
  114.         g.drawLine(220,80,220,130);
  115.         g.drawLine(220,80,247,80);
  116.         g.drawLine(220,130,247,130);
  117.         g.drawLine(200,95,220,95);
  118.         g.drawLine(200,115,220,115);
  119.         g.drawArc(220,80,50,50,0,90);
  120.         g.drawArc(220,80,50,50,270,90);
  121.         g.drawString("A",190,98);
  122.         g.drawString("B",190,120);
  123.         g.drawString("Z",295,110);
  124.         g.drawLine(270,105,290,105);
  125.         g.drawString("Compuerta Logica AND (2 entradas)",145,170);
  126.     }
  127.  }
Código HTML:
Ver original
  1. import java.applet.Applet;
  2. import java.awt.*;
  3.  
  4.  public class CompuertaNOT extends Applet
  5.  {
  6.  Button btn0;
  7.  Button btn1;
  8.  Button btnr;
  9.  Button btnl;
  10.  double var1;
  11.  double var3;
  12.  String svar1;
  13.  String svar3;
  14.  String svarl;
  15.  TextField tex1;
  16.  TextField tex2;
  17.  
  18.   public CompuertaNOT()
  19.   {  }
  20.  
  21.   public boolean action(Event event,Object obj)
  22.   {
  23.    if(event.target == btn0)
  24.      {
  25.      var1 = 0.0D;
  26.      svar1 = "A = 0";
  27.      tex1.setText(svar1);
  28.      return true;
  29.      }
  30.    if(event.target == btn1)
  31.      {
  32.      var1 = 1.0D;
  33.      svar1 = "A = 1";
  34.      tex1.setText(svar1);
  35.      return true;
  36.      }
  37.    if(event.target == btnl)
  38.      {
  39.      svarl = "     ";
  40.      tex1.setText(svarl);
  41.      tex2.setText(svarl);
  42.      return true;
  43.      }
  44.    if(event.target == btnr){
  45.    if(var1==0)
  46.      {
  47.      var3 = 1.0D;
  48.      svar3 = "Z = 1";
  49.      tex2.setText(svar3);
  50.      return true;
  51.      }
  52.      }  
  53.    if(var1==1)
  54.      {
  55.      var3 = 0.0D;
  56.      svar3 = "Z = 0";
  57.      tex2.setText(svar3);
  58.      return true;
  59.      }
  60.    else
  61.    return false;  
  62.   }
  63.  
  64.   public void init()
  65.   {
  66.    btn0 = new Button("0");
  67.    btn1 = new Button("1");
  68.    btnr = new Button("Salida");
  69.    btnl = new Button("Limpiar");
  70.    tex1 = new TextField(5);
  71.    add(tex1);
  72.    add(btn0);
  73.    add(btn1);
  74.    tex2 = new TextField(5);
  75.    add(tex2);
  76.    add(btnr);
  77.    add(btnl);
  78.    setBackground(Color.black);
  79.    svar1 = "A = 0";
  80.    tex1.setText(svar1);
  81.   }
  82.  
  83.   public void paint(Graphics g)
  84.   {
  85.   g.setColor(new Color(100,255,140));
  86.   g.drawLine(220,85,220,125);
  87.   g.drawLine(220,85,270,105);
  88.   g.drawLine(220,125,270,105);
  89.   g.drawString("A",185,110);
  90.   g.drawLine(200,105,220,105);
  91.   g.drawString("Z",295,110);
  92.   g.drawLine(280,105,290,105);
  93.   g.drawOval(270,100,10,10);
  94.   g.drawString("Compuerta Logica NOT",180,170);
  95.   }
  96.  }

Bueno eso seria, porfavor, diganme si es correcto este lugar para subir mis aportes! cualquier comentario es una critica constructiva! y espero les sea util