Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/11/2012, 09:49
Vera_
 
Fecha de Ingreso: noviembre-2008
Mensajes: 13
Antigüedad: 16 años, 1 mes
Puntos: 1
Bucle for en vez de ifs

Buenas tardes,

Estoy modificando un programa, y me gustaría hacer lo siguiente:

Tengo estos ifs que me comprueban que número de caja es el menor:

int a=0;

if((caja[0].cuantos()<caja[1].cuantos()) && (caja[0].cuantos()<caja[2].cuantos()) && (caja[0].cuantos()<caja[3].cuantos())){
a=0;
}else
if((caja[1].cuantos()<caja[2].cuantos()) && (caja[1].cuantos()<caja[3].cuantos())){
a=1;
}else
if(caja[2].cuantos()<caja[3].cuantos()){
a=2;
}else
a=3;

El método cuantos devuelve los elementos que hay en una caja.

Me gustaría modificar los ifs para poner un bucle for, ya que ahora me están pidiendo añadir X cajas más y no puedo ir poniendo todo con los ifs. He hecho lo siguiente:

int b=1;

for (int i=1; i<4;i++){
if (!caja[a].cuantos()<caja[b].cuantos()) {
a=b; }

b++;
};

Pero si ejecuto el programa, el resultado con if me da el correcto, pero con el for me da incorrecto. ¿Qué hago mal?

Gracias,

Saludos.