cpp

Promedio de arreglo en C++

En este post vamos a ver un algoritmo muy sencillo en C++: obtener el promedio de los valores de un arreglo.

Vamos a hacerlo en una función que recibe el arreglo y la longitud del mismo.

Aunque lo haremos con un arreglo de enteros, funcionará perfecto para otro tipo de arreglos, simplemente cambiando los tipos de dato.

Promedio de valores de arreglo en C++

El algoritmo es sencillo: se recorre todo el arreglo, posición por posición. En cada iteración, el valor actual se suma a una variable que llevará la sumatoria.

Después, se obtiene el promedio dividiendo la sumatoria entre la longitud del arreglo.

Código

Aquí el código. Recuerda que ya expliqué en otro post cómo obtener la longitud de un arreglo en C, y funciona igualmente para C++.

#include <iostream>
#include <string>

// Definir prototipo de la función 
double promedioDeArreglo(int arreglo[], int longitudDeArreglo);


int main() {
  // Definición del arreglo
  int arreglo[] = {95, 100, 94, 97, 100};
  // Sacar su longitud, también se podría hacer dentro de la función
  int longitudDeArreglo = sizeof(arreglo) / sizeof(arreglo[0]);
  // Obtener e imprimir
  double promedio = promedioDeArreglo(arreglo, longitudDeArreglo);
  std::cout << "El promedio es " + std::to_string(promedio);
}


// Definir función
double promedioDeArreglo(int arreglo[], int longitudDeArreglo) {
  // Vamos a acumular aquí la sumatoria
  double sumatoria = 0;
  for (int x = 0; x < longitudDeArreglo; x++) {
    sumatoria += arreglo[x];
  }
  // El promedio es la sumatoria dividida entre el número de elementos
  double promedio = sumatoria / longitudDeArreglo;
  return promedio;
}

Por cierto, el valor de regreso es double porque se pueden regresar valores que no sean enteros.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

2 semanas hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 semanas hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 semanas hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 semanas hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 semanas hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

2 semanas hace

Esta web usa cookies.