Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/04/2015, 08:14
Avatar de HelThunk
HelThunk
 
Fecha de Ingreso: marzo-2015
Ubicación: std::cout<<"En mi PC";
Mensajes: 33
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: Funciones c++

Cita:
Iniciado por ecfisa Ver Mensaje
Hola.

Lo que sucede es que envias a la función la misma variable que usas para las opciones y los valores no son concordantes: 1 -> 2, 2 -> 3, 3 -> 5, 4 -> 7, 5 -> 11.

Una solución es usar un arreglo que contenga los valores a enviar para hallar los múltiplos:
Código C++:
Ver original
  1. ...
  2. int main() {
  3.   int mul[5] = {2, 3, 5, 7, 11};
  4.   std::cout << "Bienvenido, eliga la opcion que mas se acomode a sus necesidads" << std::endl << std::endl;;
  5.   std::cout << "[1]Multiplos de 2" << std::endl;
  6.   std::cout << "[2]Multiplos de 3" << std::endl;
  7.   std::cout << "[3]Multiplos de 5" << std::endl;
  8.   std::cout << "[4]Multiplos de 7" << std::endl;
  9.   std::cout << "[5]Multiplos de 11" << std::endl;
  10.  
  11.   int a;
  12.   std::cin >> a;
  13.  
  14.   if ( a < 6 && a > 0 )  {
  15.     std::cout << "Multiplos de " << mul[a-1] << std::endl;
  16.     std::cout << "---------------------" << std::endl;
  17.     multiple ( mul[a-1] );
  18.   }
  19.   else
  20.   ...

Saludos.
He probado lo que me has dicho, y me surgen unas dudas (y también algunos errores);
Código C++:
Ver original
  1. int mul[5] = {2, 3, 5, 7, 11};
¿Con esto le decimos a la variable mul que solo puede aceptar valores de '2', '3', '5', '7' y '11'?

Código C++:
Ver original
  1. std::cout << "Multiplos de " << mul[a-1] << std::endl;
¿Por qué le restamos a la 'a' 1?
Código C++:
Ver original
  1. multiple ( mul[a-1] );
Aquí también volvemos a restarle a mul[a-1]..


*Al compilar y ejecutar hay un error, cuando estamos haciendo la operación, si pongo 2 me da múltiplos de 3, si pongo 3 me da múltiplos de 5, si pongo 5 me da múltiplos de 11.. (si pongo en vez de restar -1 que reste -2, al principio va bien hasta los múltiples de 5, a partir de ahí ya falla..)

*Me puedes explicar como funciona lo de int NombreVariable[Xnum] = {X resultados};

*Cabe añadir que me hubiese gustado también el poder aprender a usar las funciones..