C Primer Plus - Guía de prácticas N.o 7 --- Sentencias de control: bifurcaciones y saltos

  1. Escriba un programa que lea la entrada hasta que encuentre el carácter #. Luego se debe informar la cantidad de espacios en blanco leídos, la cantidad de cambios de línea leídos, y la cantidad de todos los otros caracteres.
  2. Escriba un programa que lea la entrada hasta que encuentre el carácter #. Haga que el programa muestre cada carácter y su código ASCII en sistema decimal. Debe escribir ocho pares de carácter-código en cada renglón. Pista: use un contador para los caracteres y la operación de módulo (%) para mostrar un cambio de línea por cada 8 ciclos del bucle.
  3. Escriba un programa que lea enteros hasta que se ingrese un 0. Cuando el programa termina, debe informar la cantidad de enteros pares (sin contar el cero de finalización), el promedio de los pares, la cantidad de enteros impares y el promedio de los impares.
  4. Mediante el uso de sentencias if-else, escriba un programa que lea la entrada hasta que encuentre el carácter #, reemplace cada punto con un signo de admiración cerrado, reemplace cada signo de admiración cerrado inicialmente presente por dos signos, y al final informe la cantidad de sustituciones realizadas.
  5. Rescriba el ejercicio 3 usando un switch.
  6. Escriba un programa que lea la entrada hasta que encuentre el carácter #. Haga que el programa muestre la cantidad de veces que aparece la secuencia na.Nota: El programa debe «recordar» tanto el carácter actual como el precedente. Compruebe su solución con secuencias como "nada de bananas por la mañana"
  7. Escriba un programa que solicite las horas trabajadas en la semana, y luego muestre el pago en bruto, los impuestos y el pago neto. haga las siguientes suposiciones:
    1. Tasa base por hora: $10
    2. Horas extras (en exceso de 40 horas semanales): 1.5 veces el tiempo
    3. Impuestos:
      • 15% para los primeros $300
      • 20% para los siguientes $150
      • 25% del resto
    Use constantes definidas con #define y no se preocupe si el ejemplo no está conforme a la ley de impuestos actual.
  8. En el programa del ejercicio anterior, modifique la presunción de tasa base por hora fija. En la nueva versión, el programa presenta un menú de tasas de pago base para elegir. Use un switch para seleccionar la tasa de pago. El comienzo de una corrida del programa debe ser simlar a lo siguiente:
     ***********************************************************
    Ingrese el número correspondiente a la tasa de pago elegida:
    1) $8.79/hora                   2) $9.33/hora
    3) $10.00/hora                  4) $11.20/hora
    5) salir
     ***********************************************************
    
    Si se elige una opción del 1 al 4, el programa debe solicitar las horas trabajadas. El programa debe ciclar hasta que se ingrese un 5. Si se ingresa algo que no es una opción del 1 al 5, el programa debe recordarle al usuario cuáles son las opciones esperadas y volver a ciclar. Utilice constantes definidas con #define para las diferentes tasas de pago y de impuestos.
  9. Escriba un programa que acepte un entero como entrada y luego muestre todos los números primos menores o iguales a dicho número.
  10. El United Staes Federal Tax Schedule de 1988 fue el más simple en tiempos recientes. Tenía cuatro categorías y cada categoría tenía dos tasas. Se presenta a continuación un resumen. Las cantidades en dólares son ingresos imponibles.

    CategoríaForma de cálculo del impuesto
    Soltero15% de los primeros $17850 más 28% del exceso
    Cabeza de familia15% de los primeros $23900 más 28% del exceso
    Casado, Unido15% de los primeros $29750 más 28% del exceso
    Casado, Separado15% de los primeros $14875 más 28% del exceso

    Por ejemplo, un asalariado soltero con ingresos imponibles de $20000 debe pagar 0.15 * 17850 + (20000-17850) * 0.28. Escriba un programa que permita escoger al usuario una categoría de impuestos y le pida su ingreso imponible; el programa calculará el pago de impuestos. Use un bucle para que el usuario pueda ingresar varios casos de impuestos.
  11. La «Tienda Manuelito» vende alfileres a $1.25 los 100 gramos, hilos a $0.89 cada 50 gramos y botones a 0.65 cada 150 gramos. Si los pedidos valen $100 ó más, tienen un descuento del 5% antes de agregar los gastos de envío.Se cobran $3.50 por cada kilogramo de envío o menos; $10.00 por pedidos de entre uno y diez kilogramos, y $8 más $0.10 por cada kilogramo por pedidos de más de diez kilogramos. Escriba un programa que use un switch dentro de un bucle y que si el usuario ingresa una a le pide la cantidad de alfileres, si ingresa una b le pide la cantidad de botones, si es una h la cantidad de hilo, y si es una t termina. El programa debe entonces calcular los cargos totales, el descuento (si corresponde), los cargos de envío, y el total general. El programa debe luego mostrar los precios de cada cosa solicitada, junto con la cantidad pedida, los totales parciales, el descuento (si hay descuento), los cargos de envío y el total de todos los cargos.

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!