Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] El codigo siguiente no entiendo como funciona

Estas en el tema de El codigo siguiente no entiendo como funciona en el foro de Java en Foros del Web. Hola, tengo un ejemplo de un glibro de Java, que no entiendo muy bien porque hace lo que hace. Código: int nums [] = new ...
  #1 (permalink)  
Antiguo 07/09/2015, 12:54
 
Fecha de Ingreso: abril-2014
Mensajes: 8
Antigüedad: 10 años, 1 mes
Puntos: 0
El codigo siguiente no entiendo como funciona

Hola, tengo un ejemplo de un glibro de Java, que no entiendo muy bien porque hace lo que hace.

Código:
int nums [] = new int [10];
int min, max;
nums [0] = 99;
nums [1] = -10;
nums [2] = 100123;
nums [3] = 18;
nums [4] = -978;
nums [5] = 5623;
nums [6] = 463;
nums [7] = -9;
nums [8] = 287;
nums [9] = 49;

min = max = nums[0];
for(int i = 1;i < 10; i++) {
      if(nums[i] < min) min = nums[i];
      if(nums[i] > max) max = nums[i];
 }
 System.out.println("min and max: " + min + " " + max);
La parte que no entiendo es la loop for, porque localiza el dato del array menor y el mayor.
Lo entiendo de esta manera, cuando llega a if(nums[i] < min) min = nums[i]; deberia de seleccionar todos los que son menores de nums[0] y en if(nums[i] > max) max = nums[i]; los mayores. pero no solo un dato.

Ya se que quiza sea una chorrada pero no lo pillo, algo se me escapa, por lo que os pido un poco de paciencia.

Muchas gracias.
  #2 (permalink)  
Antiguo 07/09/2015, 13:35
Avatar de luisdavid1993  
Fecha de Ingreso: julio-2015
Ubicación: Anaco Venezuela
Mensajes: 78
Antigüedad: 8 años, 9 meses
Puntos: 2
Respuesta: El codigo siguiente no entiendo como funciona

Las variables min y max se van sobre escribiendo..

Código Java:
Ver original
  1. min = max = nums[0];

min=99
max=99

Código Java:
Ver original
  1. for(int i = 1;i < 10; i++) {
  2.       if(nums[i] < min) min = nums[i];
  3.       if(nums[i] > max) max = nums[i];
  4.  }
Código Cita:
Ver original
  1. nums[i]=-10;
  2. -10<99=true --- min=-10
  3. -10>99=false ---max=99
  4.  
  5. nums[i]=100123;
  6. 100123<-10=false--- min=-10
  7. 100123>99=true---max=100123
  8.  
  9. nums[i]=18;
  10. 18<-10=false--- min=-10
  11. 18>100123=false---max=100123
  12.  
  13. nums[i]=-978;
  14. -978<-10=true--- min=-978
  15. -978>100123=false---max=100123


y asi sucesivamente
__________________
"Lucha por tus sueños o alguien te contratara para que cumplas los de el"
  #3 (permalink)  
Antiguo 07/09/2015, 14:53
 
Fecha de Ingreso: abril-2014
Mensajes: 8
Antigüedad: 10 años, 1 mes
Puntos: 0
Respuesta: El codigo siguiente no entiendo como funciona

Aaaaaaah, ok, eso era lo que no cuadraba.

Muchas gracias Luis.

Etiquetas: siguiente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:07.