Ejemplos de código en C++ para búsqueda en arrays y cálculo de estadística básica
Ejemplo 1: Buscar elementos en un array
El siguiente programa en C++ permite almacenar un conjunto de datos en un array de tamaño 10 y realizar búsquedas sucesivas para comprobar si un número ingresado por el usuario aparece o no en el arreglo.
#include <iostream>
using namespace std;
int main () {
int datos[10];
for (int i=0; i<10; i++) {
cout << "Dime el dato " << i+1 << ": ";
cin >> datos[i];
}
int busqueda;
do {
cout << "Dime un numero: ";
cin >> busqueda;
if (busqueda != 0) {
int encontrados = 0;
for (int i=0; i<10; i++) {
if (busqueda == datos[i])
encontrados++;
}
if (encontrados != 0)
cout << "Encontrado" << endl;
else
cout << "No encontrado" << endl;
}
}
while (busqueda != 0);
cout << "Hasta luego! " << endl;
return 0;
}Ejemplo 2: Menú de estadística descriptiva
Este programa interactivo en C++ utiliza un menú basado en un bucle do-while y una estructura switch para gestionar hasta 1000 datos numéricos. Permite añadir elementos, visualizarlos y calcular automáticamente la media aritmética y la desviación típica utilizando funciones de la librería <cmath>.
#include <iostream>
#include <cmath>
using namespace std;
int main () {
double datos[1000];
int cantidad = 0;
int opcion;
do {
cout << "1. Anadir un dato" << endl;
cout << "2. Ver todos los datos" << endl;
cout << "3. Mostrar media y desviacion" << endl;
cout << "0. Terminar" << endl;
cin >> opcion;
switch(opcion) {
case 1:
if (cantidad < 999) {
cout << "Dame el dato " << cantidad+1 << ": ";
cin >> datos[cantidad];
cantidad++;
} else {
cout << "No queda espacio!" << endl;
}
break;
case 2:
for (int i=0; i < cantidad; i++)
cout << datos[i] << " ";
cout << endl;
break;
case 3:
double suma = 0;
double media;
for (int i=0; i < cantidad; i++)
suma += datos[i];
media = suma / cantidad;
cout << "Media aritmetica: " << media << endl;
if (cantidad > 1) {
double varianza = 0;
for (int i=0; i < cantidad; i++)
varianza += (media - datos[i]) * (media - datos[i]);
varianza /= (cantidad - 1);
cout << "Desv. tipica: " << sqrt(varianza) << endl;
}
break;
}
}
while (opcion != 0);
return 0;
}