Академический Документы
Профессиональный Документы
Культура Документы
Calendar;
import javax.swing.JOptionPane;
public class pila {
tarea tope, base;
tarea auxtope, auxbase;
float mramP;
pila(){
tope=base=null;
mramP=Float.parseFloat(JOptionPane.showInputDialog(
"Entre capacidad de memoria en MB: "));
}
float getMemoriaU(){
if(tope==null)
return 0;
else{
tarea p=tope;
float sum=0;
do{
sum += p.mRam;
p=p.sig;
}while(p!=tope);
return sum;
}
}
if( tope==null ){
if(q.mRam <= mramP){
tope=base=q;
base.sig=tope;
JOptionPane.showMessageDialog(null,
"Elemento agregado al tope, nico elemento de la pila!");
}else{
JOptionPane.showMessageDialog(null,
"Memoria insuficiente para agregar tarea!");
}
}
else{
float totalU=getMemoriaU();
float totalM=mramP-totalU;
if(q.mRam <= totalM){
q.sig=tope;
base.sig=q;
tope=q;
JOptionPane.showMessageDialog(null, "Nuevo elemento agregado!");
}
else{
JOptionPane.showMessageDialog(null,
"Memoria insuficiente para agregar tarea!");
}
}
}
void setPop(){
if(tope==null)
JOptionPane.showMessageDialog(null,
"Imposible eliminar! Pila vacia...");
else{
if( tope == base ){
tope=base=null;
JOptionPane.showMessageDialog(null,
"Elemento atendido, Pila vacia!");
}
else{
base.sig=tope.sig;
tarea q=tope;
tope=tope.sig;
q.sig=null;
q=null;
JOptionPane.showMessageDialog(null,
"Elemento atendido!");
}
}
}
void getMostrar(){
if(tope==null)
JOptionPane.showMessageDialog(null, "Pila vacia!");
else{
tarea q=tope;
int op=-1;
String info="";
do{
info += "Memoria Total del Sistema: "+mramP+"\n";
info += "Memoria Utilizada del Sistema: "+getMemoriaU()+"\n";
op=JOptionPane.showConfirmDialog(null,
"Desea ver la siguiente tarea: ");
if( op==0 )
q=q.sig;
else{
q=tope;
JOptionPane.showMessageDialog(null,
"El usuario cancel la vista!");
}
}while(q!=tope);
}
int getLongLista(){
int cont=0;
if( tope==null )
return cont;
else{
tarea q=tope;
do{
cont++;
q=q.sig;
}while(q!=tope);
return cont;
}
}
void setVaciar(){
tope=base=null;
}
boolean getVacia(){
return (tope==null?true:false);
/*if(tope==null)
return true;
else
return false;*/
}
String FechaSistema() {
Calendar cal=Calendar.getInstance();
String fecha=cal.get(cal.DATE)+"/"+cal.get(cal.MONTH)
+"/"+cal.get(cal.YEAR);
String hora=cal.get(cal.HOUR_OF_DAY)+":"+cal.get(cal.MINUTE )
+":"+cal.get(cal.SECOND);
String Fh = fecha+"\n"+ "Hora Tarea: "+hora;
return Fh;