Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/12/2013, 09:18
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: Array (coger un numero y compararlo con el resto)

La finalidad es encontrar el nº mayor; necesitas una premisa que iras modificando segun las comparaciones, la premisa de salida es que el primer numero es el mayor de todos. Luego comparas el mayor con el segundo, si el segundo es mayor asignas el segundo como mayor y comparas con el siguiente, etc hasta comparar con el ultimo. Algo asi:

Código C:
Ver original
  1. int lista[10] = {1, 7, 3, 4, 5, 5, 6, 8, 9, 0};
  2. int q, id_mayor;
  3.  
  4. id_mayor = 0;//premisa de salida
  5. //ejecuto un ciclo que va desde el siguiente al mayor hasta el ultimo
  6. for(q = id_mayor + 1; q < sizeof(lista)/sizeof(int); q++) {
  7.     if(lista[q] > lista[id_mayor]) {//se cumple?
  8.         id_mayor = q;//asigno el nuevo indice
  9.     }
  10. }

En la comparacion omito comparar el primero con el primero porque ya se que serán iguales. El id_mayor es el indice del valor dentro de la lista. Comprueba que puedes hacer lo mismo iniciando con la premisa de que el ultimo es el mayor y haciendo el ciclo desde el anterior al ultimo hasta el primero.

Saludos
vosk