Вы находитесь на странице: 1из 3

import java.util.

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: "));
}

tarea getBuscarCod(String cod){


tarea q=tope;
do{
if( (q.idTarea).equals(cod) )
return q;
else
q = q.sig;
}while(q != tope);
return q;
}

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;
}
}

void setPush(tarea q){

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";

info += "Memoria disponible: "+(mramP-getMemoriaU())+"\n";


info += "idTarea: "+q.idTarea+"\n";
info += "Nombre Tarea: "+q.nomTarea+"\n";
info += "Fecha Tarea: "+q.fechaT+"\n";
info += "Memoria utilizada por la Tarea: "+q.mRam+"\n";
JOptionPane.showMessageDialog(null, info);

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;

Вам также может понравиться