Los mejores cursos GRATIS © AulaFacil.com
  • [Entrada Profesores]
  • Certificaciones
  • [Mi AulaFácil]
lunes, 20 agosto 2018 español
Síguenos
Publica tu curso
¿Cómo Funciona AulaFácil?

Solución ejercicio nº 3

Vamos a dividir en 2 partes la resolución del ejercicio, ya que primero se explicará la función y luego el resto del código del "main". 

La función Maximo10 es la siguiente:

32-1

 

La cabecera de la función ya la había facilitado en el enunciado del ejercicio.

Veamos la programación de la función en si. 

Simplemente se trata de poner una condición, si "n" es mayor que 0 y "n" es menor o igual que 10. Se utiliza el operador "&&" para poner las dos condiciones juntas, ya que se tienen que cumplir ambas para que se ejecute el if. 

Si la condición se cumple, se devolverá el valor de "n" (que es el número que introdujo el usuario, y será correcto porque la condición nos indica que está entre el 1 y el 10).

Si no es así se devolverá un 0, para que sepamos que el valor es incorrecto.

 

Bien, ahora veamos el resto del código del programa. 

32-2

 

Lo primero es crear la variable de "longitud_array". Pedimos al usuario que introduzca un número y guardamos ese valor en dicha variable. A partir de ahí empiezan las comprobaciones. 

Pondremos un "if" para saber si la función de Maximo10 me devuelve un 0 o no. Si es distinto de 0, es que el número que ha introducido el usuario es correcto y está entre el 1 y el 10. Si no, hemos puesto un "else" a ese "if", que te muestra un mensaje por pantalla diciendo que la longitud del array no está entre 1 y 10, y acabaría el programa. 

En caso de que sea correcto, creamos el array con la dimensión dada por el usuario: 

int numeros[longitud_array]; y luego, tenemos que rellenar ese array con valores del 1 hasta el número dado.

Así pues, necesitamos un bucle for. La condición será que se ejecute mientras "i" sea menor que "longitud_array". De esta forma hacemos que se ejecute tantas veces como índices tenga el array, que es lo que nos interesa. 

Y dentro del bucle lo que haremos es rellenar ese índice del array con un valor y luego mostrarlo por pantalla:

numeros[i] = i+1; //asignamos valor
printf("Numero %i del array: %i\n", i+1, numeros[i]); //mostrarlo
 
numeros[i] irá desde 0 hasta longitud_array. Le asignamos el valor de "i + 1" para que empiece a dar valores a partir del 1 en vez de a partir del 0, esto es simplemente por cuestión de estética; si queréis le podéis dar simplemente el valor de "i". Y el printf nos muestra por pantalla el valor de dicho índice.
 
Como mejora para el programa estaría bien que si el usuario introduce un valor que no está comprendido entre el 1 y el 10 te vuelva a pedir el número siempre, hasta que el usuario introduzca un número correcto (esto ya hemos visto como hacerlo anteriormente). Lo dejo como mejora para que podáis practicar por vosotros mismos y así aprenderéis más.
 
Aquí adjunto el código del programa completo para que lo estudiéis mejor y lo trasteéis. 
 
Conoce al Autor/a:
  • Daniel Pozo Chichon   Contactar con el Autor
    Técnico en Desarrollo de Aplicaciones Informáticas (Grado superior)

    Tiene 2 contenidos
Gracias por compartir y gracias por enlazar la página
Compartir en Facebook
Acepto vuestra política de privacidad
Consentimiento Expreso para el tratamiento de datos de carácter personal recabados por vía electrónica (leer consentimiento)

¡Suscríbete GRATIS a nuestro boletín diario!:

Búsqueda personalizada
Existen nuevos mensajes en las siguientes salas de chat:

      Recibe gratis alertas en tu navegador, sin configuraciones ni registros. Más info...
      [No me interesa] | [Me Interesa]



      ¿Dudas? ¿Preguntas? Plantéalas en el foro
      Suscríbete Gratis al Boletín

      Escribir la dirección de Email:

      Acepto vuestra política de privacidad
      Consentimiento Expreso para el tratamiento de datos de carácter personal recabados por vía electrónica (leer consentimiento)

      Delivered by FeedBurner

      Destacamos
      Cargando datos...
      Buenos Artículos Diarios

      Sigue a AulaFácil en:

      Ránking Mundial Certificados
      Banner AulaFácil

      Este es un producto de AulaFacil S.L. - © Copyright 2009
      B 82812322 Apartado de Correos 176. Las Rozas 28230. Madrid (ESPAÑA)