Tareas

Páginas: 3 (536 palabras) Publicado: 16 de octubre de 2014
GENERADOR DE CODIGO INTERMEDIO

FUNCIÓN cPila
import java.util.ArrayList;

public class cPila extends ArrayList {

public void push(Object x){
this.add(x);
}
public Objectpop(){
Object x = null;
if(pilaVacia())
javax.swing.JOptionPane.showMessageDialog(null, "Existe un error en la expresion");
else{

x=this.remove(this.size()-1);
}
return x;
}
public boolean pilaVacia(){
boolean res = false;
if (this.size()==0){

res=true;

}
return res;
}
}

FUNCIÓN EsOperador

publicint esOperador(char caracter) {
int res = 0;
char operadores[] = {'+', '-', '*', '/'};
for (int i = 0; i < operadores.length; i++) {
if (caracter ==operadores[i]) {
res = 1;
}
}
return res;
}



Función generarCodigo


public void generarCodigo(String cadena) {this.jTextAreaCodigo.setText("");
int ct = 0;
String cad, operador1, operador2, cad2, cad3 = null, cad4;
Object op1, op2;
cPila pila = new cPila();

char[] subcadena = newchar[cadena.length()];
subcadena = cadena.toCharArray();
for (int i = 0; i < subcadena.length; i++) {

if (this.esOperador(subcadena[i]) == 0) {pila.push(subcadena[i]);

} else {
op2 = pila.pop();
op1 = pila.pop();
operador2 = op2.toString();
operador1 = op1.toString();cad = "T" + ct + "=" + operador1 + subcadena[i] + operador2 + ";";

this.jTextAreaCodigo.append(cad + "\n" + cad2 + "\n" + cad3 + "\n" + cad4 + "\n" + "\n");ct++;
pila.push("T" + ct);

}

}
}



INTERRUPCIONES DE ENTRADA Y SALIDA
Una petición de interrupción IRQ ("Interrupt Request")...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Tareas tareas y mas tareas
  • tareas tareas
  • Taran Taran
  • tareas tareas
  • Tareas Y Tareas
  • Mis tareas...Tus tareas
  • Tareas de Tareas
  • Tareas

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS