Make your own free website on Tripod.com

Práctica #4

Sentencias de Control Selectivas.

4.1 Sentencias Selectivas.
4.2 Actividad.

4.1 Sentencias Selectivas.

Las expresiones lógicas pueden ser verdaderas o falsas. Se necesita una sentencia de control que dirija a las computadoras a ejecutar una sentencia si la expresión es verdadera, y otra en caso de ser falsa.

Para seleccionar entre dos opciones utilizamos la sentencia IF.

if
switch

if (expresión)
     Instrucion;

     ó

if (Expresión)
     Instrucción1;
else
     Instruccion2;

     ó

if (Expresión)
{
     Instrucciones1;
}
Else
{
     Instrucciones2;
}

switch (variable_entera)
{
    case CONSTANTE1:
        Sentencias;
    break;

    case CONSTANTE2:
        Sentencias;
    break

    case CONSTANTE3:
        Sentencias;
    break
    .
    .
    .
    [case default:
        Sentencias;]
}

Para seleccionar entre dos o más opciones utilizamos la sentencia selectiva switch, comparando caracteres o números enteros.

Actividad

Serie de ejercicios a realizar.

  1. En una empresa, donde existen 10 vendedores, se realiza una competencia para determinar el ganador de un concurso de ventas. Crear un programa en el cual se introduzcan el número de unidades vendidas por cada vendedor y determinar la venta más alta. Generar la siguiente pirámide
    1
    232
    34543
    4567654
    567898765
    67890109876
    7890123210987
    890123454321098
    90123456765432109
    0123456789876543210

  2. Realizar programa para resolver la fórmula general validando el discriminante negativo. Si es negativo, desplegar mensaje de "raíz imaginaria", de lo contrario desplegar el resultado.

  3. Tomar 4 números y decir cual es el número mayor.

  4. Realizar programa para determinar si un año es bisiesto considerando :
  5. Convertir un número del sistema decimal a romano. Los dígitos romanos a emplear son M, D, C, L, X, V e I.
    Transformar el programa para calcular el factorial de un número utilizando sentencias selectivas, validando para el 0! ( 0! = 1 ).

  6. Escribir un programa que eleve un número a cualquier potencia. Validar para potencia 0.

  7. Averiguar si dados dos números leídos del teclado, uno es divisor del otro.

  8. Introducir una fecha con formato mm/dd/aa y desplegar la fecha en texto completo (por ejemplo, 07/21/55 deberá desplegarse como 21 de Julio de 1955).

  9. Se hicieron a los estudiantes cinco exámenes (A, B, C, D y E). Determinar el número de alumnos que :
  10. Los empleados de una fabrica trabajan en dos turnos: diurno y nocturno. Se desea calcular el salario diario de acuerdo con los siguientes puntos:
  11. Supóngase que un jardinero tiene 100 pies de material para cercas y quiere cercar un jardín rectangular al lado de su casa. Haciendo un esquema se ve que el área del jardín es área = x (100 - 2x). Hágase una tabla que despliegue el valor de x y el área generada. Al finalizar el ciclo indicar qué valor generó el área máxima.

  12. Crear un programa para calcular las raíces de una ecuación de segundo grado por medio de la fórmula general para validar el discriminante negativo. Si éste es negativo, desplegar las raíces por medio del número complejo (a+bi), de lo contrario desplegar las raíces de manera normal.

  13. Determinar todos los números por los que es divisible un número introducido por el usuario.

  14. Determinar el precio de un boleto de ida y vuelta en tren, conociendo la distancia a recorrer y sabiendo el número de días de estancia. Si la estancia es superior a 7 y la distancia superior a 800 Km, el boleto tiene una reducción del 30%. El precio por kilómetro es de $2.50 pesos.

  15. Escribir un programa que lea las longitudes de los tres lados de un triángulo (S1, S2, S3) y determine qué tipo de triángulo corresponde a los siguientes casos:
    A es el mayor de S1, S2 y S3 y B y C los otros dos.
    Si A B+C, no se forma ningún triángulo;
    Si A2=B2+C2, se forma un triángulo rectángulo;
    Si A2> B2+C2, se forma un triángulo obtuso;
    Si A2< B2+C2, se forma un triángulo agudo;
    Si A2=B2=C2, se forma un triángulo equilátero;
    Debe de imprimir las longitudes de los tres lados junto con el tipo de triángulo en cuestión.

  16. Existen tres métodos para calcular la depreciación anual de algún objeto depreciable (mueble, edificio, máquina, etc.): El método de línea recta, el método de balance de doble declinación y el método de la suma de los dígitos de los años. Seleccionar por medio de un menú el método que se desea emplear y no salirse del programa hasta que el usuario lo indique:

    a. Método de línea recta. Se divide el valor original de objeto entre la vida del objeto (números de años que se depreciara). El cociente resultante es la cantidad en que el objeto se deprecia cada año.

    b. Método de balance de doble declinación (disminuye en un porcentaje constante cada año). Se divide el número 2 entre la vida del objeto, esta cantidad es el porcentaje de depreciación anual.
    1. Supongamos que el valor del objeto es 1,200,000 y tiene una vida de 10 años.
    2. Año 1 2/10 x 1,200,000 = 240,000
    3. Año 2 2/10 x (1,200,000 - depreciación del año 1) = 0.2 x 960,000 = 192,000
    4. Año 3 2/10 x (960,000 - depreciación del año 2) = 0.2 x 768,000 = 153,600

    c. Método de la suma de los dígitos de los años (disminuye en un porcentaje diferente cada año). El factor de depreciación será una fracción cuyo denominador sea la suma de los dígitos del 1 a n (donde n es la vida del objeto); parara el primer año el numerador será n, para el segundo será n-1, para el tercero será n-2. La depreciación anual se obtiene multiplicado el factor de depreciación por el valor original del objeto.

  17. La Oficina de Seguridad Social de la ciudad ha recopilado datos sobre accidentes de tráfico en el municipio en el año pasado. Por cada conductor implicado en un accidente, se prepara una tarjeta de datos con los siguientes elementos de información: año de nacimiento del conductor (entero), sexo 'M' o 'F' y código de registro (1 para el Tijuana, 0 para todos los otros).

    Se pide diseñar un programa que lea el paquete de tarjetas de datos e imprima los siguientes resúmenes estadísticos sobre conductores implicados en accidentes:
    a. Porcentaje de conductores menores de 25 años
    b. Porcentaje de conductores femeninos
    c. Porcentaje de conductores masculinos de 18 a 25 años
    d. Porcentaje de conductores registrados fuera del municipio.

  18. El departamento de policía de la ciudad ha acumulado información sobre excesos de velocidad en cierto periodo de tiempo. El departamento ha dividido la ciudad en cuatro sectores y desea tener estadísticas sobre infracciones de velocidad por sectores. Por dada infracción, se prepara una tarjeta que contenga la información siguiente:
    Número de registro del vehículo (código de 8 dígitos).
    Sector donde sucedió la falta (1-4).
    Limite de velocidad en kilómetros por hora (entero).
    Velocidad real del trayecto en kilómetros por hora (entero).
    El conjunto de tarjetas se acaba por una tarjeta especial con el número de registro 0.

  19. Escríbase un programa que produzca dos informes. El primero, un listado de las multas impuestas por velocidad, calculándose la multa mediante suma de los gastos de papeleo ($20) mas $1.25 por cada kilómetro por hora de exceso con respecto al limite de velocidad.

  20. En el segundo informe se da un análisis de las infracciones por incidente. Por cada uno de los cuatro sectores, se da el número de infracciones procesadas y el promedio de las multas.

  21. El cambio de divisas en la bolsa de Madrid el día 17 de mayo de 1996 fue el siguiente:

Desarrollar un programa que realice las siguientes operaciones, según lo indique el usuario: