Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

Si eres principiante y tienes alguna consulta entra en este foro.
Responder
Mensaje
Autor
imulator
Mensajes: 8
Registrado: 05/12/2018 1:03 pm

Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

#1 Mensaje por imulator » 05/12/2018 1:15 pm

Hola, estoy intentando desarrollar un código que determine cuantos números son mayores al número que se compara, por ejemplo:
Tengo 5 números introducidos por el usuario almacenados en una matriz, y debo comparar cada uno de los números con los posteriores para determinar cuantos son mayores al que se está comparando, y de esa manera obtener la cantidad para luego imprimirla en pantalla, yo creo que lo mejor es hacerlo con un bucle y a ser posible que sea utilizando la instrucción 'for'.

Estoy usando Codeblocks en Windows 10.
Gracias.
Última edición por imulator el 06/12/2018 2:54 am, editado 1 vez en total.

mollok
Mensajes: 327
Registrado: 30/01/2018 9:47 am
Ubicación: Mallorca, España

Re: Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

#2 Mensaje por mollok » 05/12/2018 2:51 pm

Sí, vas por buen camino.
while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}

imulator
Mensajes: 8
Registrado: 05/12/2018 1:03 pm

Re: Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

#3 Mensaje por imulator » 06/12/2018 2:57 am

Hola mollok y gracias por contestar, tengo que aclarar que no me expliqué bien anteriormente, he editado el post para que se entienda mejor.

Tengo el código casi terminado pero me falta la parte donde debo imprimir en pantalla los datos introducidos por el usuario y es ahí donde estoy atascado, a ver si me puedes echar una mano.

Código: Seleccionar todo

#include <stdio.h>
#define DIM 5

int main()
{
    int n[DIM];
    int i;
    int c=0;

    // SOLICITO LOS NUMEROS (MAX=DIM)
    for (i=0;i<DIM;i++){
    printf("Introduzca un número entero: ");
    scanf("%i", &n[i]);
    }

    for (i=0;i<DIM;i++){
        if (n[i]<n[i]+1){
        c++;
    }
    printf("El número %i es menor que los otros %i números posteriores.\n", n[i], c);
    }

    return 0;
}

mollok
Mensajes: 327
Registrado: 30/01/2018 9:47 am
Ubicación: Mallorca, España

Re: Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

#4 Mensaje por mollok » 06/12/2018 8:11 am

Debes usar dos for: uno que empiece desde la posición 0 hasta el final del array y el interior que empiece desde la siguiente posición del anterior hasta el final del array. Comparas la posición dada por el primer bucle con las que te da el segundo bucle. Antes de iniciar el segundo bucle pones c a 0. Después de acabar el segundo bucle muestras los resultados. Algo así.

Código: Seleccionar todo

Desde i = 0 hasta fin
   c = 0
   Desde j = i+1 hasta fin
      Si array[i]<array[j] entonces c = c + 1
   Escribir: array[i] es menor que los posteriores c números
while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}

imulator
Mensajes: 8
Registrado: 05/12/2018 1:03 pm

Re: Comparar 5 números entre ellos y determinar cuantos son mayores al numero comparado.

#5 Mensaje por imulator » 06/12/2018 9:19 am

Genial, ahora el código queda perfecto para cualquier dimensión.

Código: Seleccionar todo

#include <stdio.h>
#define DIM 5

int main()
{
    int n[DIM];
    int i, j;
    int c=0;


    // SOLICITO LOS NUMEROS (MAX=DIM)
    for (i=0;i<DIM;i++){
    printf("Introduzca un número entero: ");
    scanf("%i", &n[i]);
    }

    // IMPRIMO LOS RESULTADOS

    for (i=0;i<DIM;i++){
            c=0;
        for (j=i+1;j<DIM;j++){
            if (n[i]<n[j]){
            c=c+1;
            }
        }
    printf("El número %i es menor que otros %i números posteriores.\n", n[i], c);
    }

    return 0;
}
Muchas gracias por la ayuda :wink:

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 17 invitados