Hola chicos, os voy a comentar una dudilla que tengo acerca de una práctica que nos han propuesto en clase. El enunciado es el siguiente:
Una función llamada "lector_de_enteros" que pida al usuario un número entero
y devuelva el número leído.
Una función llamada "lector_de_opciones" que reciba un valor máximo, pida
al usuario un valor entre 1 y el valor máximo (usando la función
"lector_de_enteros") y devuelva el valor elegido. Si el usuario introduce un
valor fuera de rango avisar del error y repetir la lectura del valor, y así hasta que
sea correcto.
Las funciones que he hecho son las siguientes:
El enunciado sigue con lo siguiente para el int main () [LA FUNCIÓN PRINCIAPAL]
Mostrar el menú principal y dejar al usuario elegir una opción.
Pues bien, mi propuesta es ésta pero no sé porque no funciona, porque ponga el número que ponga el programa sigue.
Mod: Modificado. Cuando publiques codigo, procura usar etiquetas GeSHi
Una función llamada "lector_de_enteros" que pida al usuario un número entero
y devuelva el número leído.
Una función llamada "lector_de_opciones" que reciba un valor máximo, pida
al usuario un valor entre 1 y el valor máximo (usando la función
"lector_de_enteros") y devuelva el valor elegido. Si el usuario introduce un
valor fuera de rango avisar del error y repetir la lectura del valor, y así hasta que
sea correcto.
Las funciones que he hecho son las siguientes:
Código (cpp) [Seleccionar]
int lector_de_enteros()
{
int numero = 0;
cin >> numero;
return numero;
}
int lector_de_opciones(int valor_maximo)
{
int valor_elegido=0;
cout << " Introduce un numero entre 1 y " << valor_maximo;
valor_elegido = lector_de_enteros();
do
{
cout << "Vuelve a introducir un numero que este dentro del rango, por favor:\n";
cin >> valor_elegido;
}while (valor_elegido <=1 && valor_elegido >= valor_maximo);
return valor_elegido;
}
El enunciado sigue con lo siguiente para el int main () [LA FUNCIÓN PRINCIAPAL]
Mostrar el menú principal y dejar al usuario elegir una opción.
Pues bien, mi propuesta es ésta pero no sé porque no funciona, porque ponga el número que ponga el programa sigue.
Código (cpp) [Seleccionar]
int maximo = 4;
muestra_menu_principal();
cout << endl;
lector_de_opciones (maximo);
Mod: Modificado. Cuando publiques codigo, procura usar etiquetas GeSHi