C Primer Plus - Guía de prácticas N.o 6 --- Bucles

  1. Escriba un programa que cree un arreglo de 26 elementos y almacene las 26 letras minúsculas en el mismo. Haga también que muestre el contenido del arreglo.
  2. Use bucles anidados para producir el siguiente patrón:
       $
       $$
       $$$
       $$$$
       $$$$$
    
  3. Use bucles anidados para producir el siguiente patrón:
       F
       FE
       FED
       FEDC
       FEDCB
       FEDCBA
    
    Variante: defina las letras del alfabeto como:
          char letras[26] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    
    Ahora se pueden usar los elementos del arreglo para acceder a las letras individuales, por ejemplo: letras[0] es la A y así sucesivamente.
  4. Escriba un programa que solicite al usuario una letra mayúscula. Use bucles anidados para producir el siguiente patrón:
            A
           ABA
          ABCBA
         ABCDCBA
        ABCDEDCBA
    
    El patrón debe extenderse hasta el carácter ingresado. Por ejemplo, el patrón precedente resulta cuando el valor ingresado es E.
    Pista: Use un bucle externo para manejar los renglones. Use tres bucles internos para manejar un renglón dado: uno para escribir los espacios, uno para escribir las letras ascendentes y otro para las letras descendentes.
  5. Escriba un programa que imprima una tabla, donde cada renglón muestra un entero, su cuadrado y su cubo. Solicite al usuario los límites inferior y superior. Use un bucle for.
  6. Escriba un programa que lea un palabra en un vector de caracteres y luego imprima la palabra al revés.
    Pista: use strlen() para calcular el índice del último carácter en el vector.
  7. Escriba un programa que solicite dos números en punto flotante y muestre el valor de su diferencia dividido por su producto. Haga que el programa cicle a través de pares de números hasta que el usuario ingrese un dato no numérico.
  8. Modifique el ejercicio anterior para que use una función para que retorne el valor calculado.
  9. Escriba un programa que lea 8 enteros en un vector y luego los imprima en orden inverso.
  10. Considere estas dos series infinitas:
       1.0 + 1.0/2.0 + 1.0/3.0 + 1.0/4.0 + ...
       1.0 - 1.0/2.0 + 1.0/3.0 - 1.0/4.0 + ...
    
    Escriba un programa que evalúe totales de estas dos series hasta algún límite en la cantidad de términos. Haga que el usuario ingrese el límite interactivamente. Observe los totales después de 20 términos, de 100 y de 500. ¿Parece que la serie converge a algún valor?
    Pista: (-1) multiplicado por sí mismo un número impar de veces da (-1); (-1) multiplicado por sí mismo un número par de veces da (+1).
  11. Escriba un programa que cree un vector de 8 elementos de inti, asigne a los elementos las primeras ocho potencias de dos, y luego muestre sus valores. Use un for para asignar los valores, y para variar use un do while para mostrarlos.
  12. Escriba un programa que cree dos vectores de 8 elementos de double y use un bucle para que el usuario ingrese valores para los 8 elementos del primer vector. Haga que el programa asigne los elementos del segundo vector con los totales acumulados de los valores del primer vector.
    Por ejemplo, el cuarto elemento del segundo arreglo debe ser igual a la suma de los primeros cuatro elementos del primer vector; el quinto elemento del segundo es igual a la suma de los primeros cinco elementos del primero; etc. Se puede resolver utilizando bucles anidados, pero si reconocemos que el quinto elemento del segundo vector es igual al cuarto elemento del segundo más el quinto del primero, podemos usar solamente un bucle para calcularlo.
    Finalmente, use use un bucle para mostrar los contenidos de los dos vectores, con el primer vector en en renglón, y los valores del segundo alineados verticalmente con los correspondientes del primero.
  13. Escriba un programa que lea una línea de entrada y luego muestre la línea en orden inverso. Puede almacenar la entrada en un vector de char; asuma que la línea no puede tener más de 255 caracteres. Recuerde que puede usar scanf() con el especificador %c para leer de a un carácter a la vez, y que el carácter cambio de línea (\n) se genera cuando oprime la tecla «Intro».
  14. Ludovica invierte 100$ al 10% de interés anual simple. Hildegunda invierte 100$ al 5% de interés anual compuesto. Escriba un programa que averigüe cuántos años tarda la inversión de Hildegunda en sobrepasar la inversión de Ludovica. Muestre también el valor de ambas inversiones en ese momento.
  15. La señora Su Ertuda gana un millón de pesos y lo pone en una cuenta que le gana 8% anual. El último día de cada año, Su retira $100000. Escriba un programa que calcule cuántos años le lleva a la señora Ertuda acabar con el dinero de su cuenta.

Si tiene preguntas no deje de leer de qué maneras contactarme.

Copyright (C) 2005 César Ballardini

Está permitida la copia textual y distribución de este artículo en su totalidad por cualquier medio, siempre y cuando esta nota se preserve.

Actualizado: $Id$

Valid HTML 4.0!