Contenido del curso

Actividad 6

 

Valor medio, mínimo y máximo

En esta actividad se debe mostrar por el monitor serial el valor medio, el valor más pequeño y el valor más grande, obtenidos todos de una secuencia de números aleatoria que previamente hemos almacenado en un Array de números enteros. Nosotros utilizaremos como ejemplo la siguiente secuencia de diez números:

  • 13, 7, 19, 3, 21, 8, 14, 6, 2, 17.

Declara el Array con estos valores u otros que prefieras, y calcula los tres datos requeridos (valor medio, mínimo y máximo) e imprímelos por el monitor serie.

Ten en cuenta que si estás utilizando Bloques, no es posible gestionar este tipo de variables. Por ello, esta Actividad sólo la podrás llevar a cabo mediante programación por código.

Recuerda que la estructura típica de una sentencia sirva para recorrer un Array es la siguiente:

for(int i = 0 ; i < sizeof(miArray) ; i++) {

    miArray[i]; // Accedemos a cada valor del array

}

La función que ves en el ejemplo llamada sizeof devuelve el tamaño del Array (el número de elementos)
que le pases entre los paréntesis como argumento.
Actualmente no está disponible la solución a la actividad en Bloques.
// Creamos un array con los 10 números sobre los que haremos los cálculos
int numeros[10] = {13, 7, 19, 3, 21, 8, 14, 6, 2, 17};

void setup() {

    // Inicializamos el monitor serial
    Serial.begin(9600);

    int media = 0;
    int maximo = 0;
    int minimo = numeros[0];

    // Recorremos todos los números almacenados en el Array
    for(int i = 0 ; i < 10 ; i++) {

        // Sumamos el número actual con los anteriores
        media += numeros[i];

        // Comprobamos que el número actual sea mayor que el máximo almacenado
        if(numeros[i] > maximo) {

            maximo = numeros[i]; // Se asigna el nuevo número máximo en la variable

        }

        // Comprobamos que el número actual sea menor que el mínimo almacenado
        if(numeros[i] < minimo) {

            minimo = numeros[i]; // Se asigna el nuevo número mínimo en la variable

        }

    }

    // Dividimos el resultado final de las sumas entre el número de elementos del Array
    media = media / 10;

    Serial.print("Valor medio: ");
    Serial.println(media);
    Serial.print("Valor máximo: ");
    Serial.println(maximo);
    Serial.print("Valor mínimo: ");
    Serial.println(minimo);

}

void loop() {}
Vistas
12 Número de vistas
12 Vistas de miembros
0 Vistas públicas
Acciones
0 Gustos
0 No me gusta
0 Comentarios
Compartir en redes sociales
Compartir enlace
Compartir por correo

Por favor iniciar sesión para compartir esto webpage por correo.