UTNianos

Versión completa: Duda ejercicio COLAS-PILAS
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Una consulta señores, tengo un ejercicio que el profesor me marca que esta mal.

En una cola tengo objetos "PEDIDO" que cada uno tiene un metodo q da el precio. Me pide sumar el total de los ultimos N numeros...
Me pide que luego de todo la cola quede identica.

Lo que yo hago es:



Desencolo la ColaPedidos en PilaAux1

Luego con la pilaAux1 hago lo siguiente:


int cont = 0;
while (pilaAux1 not empty){

p1= pilaAux1.desapilar;
if ( cont < N ) { total += p1.precio }
pilaAux2.apilar (p1)
p1= pilaAux1.desapilar
}


luego cuando se termina de hacer eso directamente desapilo la pilaAux2 en la cola y queda la cola como estaba y tengo el total...

que carajo esta mal Confused? o hay una forma de hacerla mas correctamente?
a simple vista un par de cosas:
-El cont no se modifica nunca.
-no se en que estas programando, pero si pusiste un ";" al final, imagino que te faltan en los ultimos 2 renglones tambien.

Pero lo mas importante:
-Estas desapilando 2 veces la cola, al principio del while, y al final. Por lo tanto tenes elementos que no estas sumando.
(11-07-2019 18:22)rod77 escribió: [ -> ]a simple vista un par de cosas:
-El cont no se modifica nunca.
-no se en que estas programando, pero si pusiste un ";" al final, imagino que te faltan en los ultimos 2 renglones tambien.

Pero lo mas importante:
-Estas desapilando 2 veces la cola, al principio del while, y al final. Por lo tanto tenes elementos que no estas sumando.

Ah ahi esta, q boludazo q soy.
Bueno muchas gracias capo, dps x ahi pregunto otra cosa si no es problema.
(11-07-2019 18:22)rod77 escribió: [ -> ]a simple vista un par de cosas:
-El cont no se modifica nunca.
-no se en que estas programando, pero si pusiste un ";" al final, imagino que te faltan en los ultimos 2 renglones tambien.

Pero lo mas importante:
-Estas desapilando 2 veces la cola, al principio del while, y al final. Por lo tanto tenes elementos que no estas sumando.

che sinceramente lo estoy tratando de resolver en java pero siempre me qda algo mal, mas o menos como seria para resolverlo? me estoy partiendo la cabeza como un hijo de puta.
Vos llevalo al lenguaje que quieras, pero segun lo que vos pusiste tendria que ser algo asi:



int cont = 0;

while (pilaAux1 not empty){

p1= pilaAux1.desapilar;

if ( cont < N ) {
total += p1.precio
}

pilaAux2.apilar(p1);
cont = cont+1;

}


URLs de referencia