Juego de autos
Aquí te presento un ejemplo básico de un juego de autos en C++: ```cpp #include <iostream> #include <cstdlib> #include <ctime> using namespace std; // Estructura para representar un auto struct Auto { string nombre; int velocidad; int distancia; }; // Función para generar un auto aleatorio Auto generarAuto() { Auto auto; auto.nombre = "Auto " + to_string(rand() % 10 + 1); auto.velocidad = rand() % 100 + 1; auto.distancia = rand() % 100 + 1; return auto; } // Función para mostrar un auto void mostrarAuto(Auto auto) { cout << "Nombre: " << auto.nombre << endl; cout << "Velocidad: " << auto.velocidad << endl; cout << "Distancia: " << auto.distancia << endl; } // Función para comparar dos autos bool compararAutos(Auto auto1, Auto auto2) { if (auto1.velocidad > auto2.velocidad) { return true; } else if (auto1.velocidad < auto2.velocidad) { return false; } else { if (auto1.distancia > auto2.distancia) { return true; } else { return false; } } } int main() { srand(time(0)); // Semilla para generar números aleatorios // Crear un arreglo de autos const int NUM_AUTOS = 5; Auto autos[NUM_AUTOS]; // Generar autos aleatorios for (int i = 0; i < NUM_AUTOS; i++) { autos[i] = generarAuto(); } // Mostrar los autos cout << "Autos:" << endl; for (int i = 0; i < NUM_AUTOS; i++) { mostrarAuto(autos[i]); cout << endl; } // Comparar los autos cout << "Comparación de autos:" << endl; for (int i = 0; i < NUM_AUTOS - 1; i++) { for (int j = i + 1; j < NUM_AUTOS; j++) { if (compararAutos(autos[i], autos[j])) { cout << "Auto " << i + 1 << " es más rápido que auto " << j + 1 << endl; } else { cout << "Auto " << j + 1 << " es más rápido que auto " << i + 1 << endl; } } } return 0; } ``` Este código crea un arreglo de 5 autos aleatorios, los muestra y luego compara cada par de autos para determinar quién es más rápido. **Explicación de la función `generarAuto()`** Esta función genera un auto aleatorio con los siguientes atributos: * `nombre`: Un nombre aleatorio compuesto por "Auto " seguido de un número entre 1 y 10. * `velocidad`: Una velocidad aleatoria entre 1 y 100. * `distancia`: Una distancia aleatoria entre 1 y 100. **Explicación de la función `mostrarAuto()`** Esta función muestra los atributos de un auto. **Explicación de la función `compararAutos()`** Esta función compara dos autos y devuelve `true` si el primer auto es más rápido que el segundo, y `false` en caso contrario. Si los autos tienen la misma velocidad, se compara su distancia. **Explicación del código `main()`** En el código `main()`, se crea un arreglo de 5 autos y se generan autos aleatorios utilizando la función `generarAuto()`. Luego, se muestran los autos utilizando la función `mostrarAuto()`. Finalmente, se compara cada par de autos utilizando la función `compararAutos()` y se muestra el resultado.