ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Estructuras De Porgramacion


Enviado por   •  7 de Mayo de 2013  •  1.449 Palabras (6 Páginas)  •  304 Visitas

Página 1 de 6

Practica 7: Ejercicios de estructuras selectivas compuestas y multiples.

Materia: Lógica Computacional.

Profesor: Lic. Salomón Aquino.

OBJETIVOS

Al finalizar la práctica, los estudiantes serán capaces de:

• Resolver Problemas con estructuras de selección Compuesta y Múltiple.

II. Introducción Teórica.

Hasta este punto hemos trabajado con sentencias IF que implementan decisiones que implican una o dos alternativas. En esta práctica se mostrará como se puede utilizar la sentencia IF para implementar decisiones que impliquen varias alternativas.

Estructuras Selectivas Compuestas.

Se identifican porque para solucionarlos se necesita establecer más de una condición. Por lo general dentro de este grupo están incluidos los ifs anidados, en los cuales dentro de un if se encuentra otro y dentro de este hay otro, y así sucesivamente.

Una sentencia IF es anidada cuando la sentencia de la rama verdadera o la rama falsa, es a su vez una sentencia IF. A este tipo de estructura se le conoce como selectiva compuesta o multi-alternativa.

Ejemplo. Si resolvemos el problema de la práctica anterior para saber si un número es positivo, negativo o nulo usando selección compuesta, el módulo sería el siguiente:

Es recomendable utilizar sangrías para diferenciar un if de otro y se deben utilizar con cuidado para evitar posibles ambigüedades.

Ejemplo 1:

Determinar la cantidad de dinero que recibirá un trabajador por concepto de las horas extras trabajadas en una empresa, sabiendo que cuando las horas de trabajo exceden de 40, el resto se consideran horas extras y que éstas se pagan al doble de una hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se paga por una hora normal y el resto al triple.

La solucion es la siguiente:

#include

#include

int main ( )

{

float ht,ph,he,het,phe,pt;

printf("\nIntroduzca la horas trabajadas: ");

scanf("%f",&ht);

printf("\n");

printf("\nIntroduzca el precio por hora: ");

scanf("%f",&ph);

printf("\n");

if (ht > 40)

{

he = ht - 40;

if (he > 8)

{

het = he -8;

phe = ph * 2 * 8 + ph * 3 * het;

}

else phe = ph * 2 * he;

pt = ph * 40 + phe;

}

else

pt = ph * ht;

printf("El salario a pagar es %f \n", pt);

system("pause");

return 0;

}

Ejemplo 2:

Se desea agregar una letra para representar la calificación de los alumnos, las calificaciones son notas entre 1 y 10; use los siguientes parámetros: A para calificaciones mayores o iguales a 9, B para calificaciones mayores o iguales a 8, C para calificaciones mayores o iguales a 7, D para calificaciones mayores o iguales a 6, F para todas las demás calificaciones.

#include

<#include stdlib.h>

main ( )

{

int nota;

printf ("Escriba la nota obtenida (valores enteros entre 1-10): ");

scanf ("%d",¬a);

if (nota>=9)

printf ("\nEl concepto en base a su nota es A");

else

if (nota>=8)

printf ("\nEl concepto en base a su nota es B");

else

if (nota>=7)

printf ("\nEl concepto en base a su nota es C");

else

if (nota>=6)

printf ("\nEl concepto en base a su nota es D");

else

printf ("\nEl concepto en base a su nota es F");

printf ("\nEl programa ha terminado\n\n");

system(“pause”);

return 0;

}

Ejemplo 3. Calcular el mayor de tres números enteros.

#include

#include

int main ( )

{

int a, b, c, mayor;

printf ("\nIntroduzca tres enteros: ");

scanf ("%d %d %d",&a, &b, &c);

if (a > b)

if (a > c) mayor = a;

else mayor =c;

else

if (b > c ) mayor = b;

else mayor = c;

printf (“El mayor es %d \n”, mayor);

system(“pause”);

return 0;

}

Estructuras Selectivas Múltiples:

Este tipo de estructuras permiten hacer la selección entre dos o más alternativas. Siempre se realiza una evaluación lógica que es la llave de entrada al ciclo selectivo.

La sentencia que se utiliza para este fin es Switch, que ejecuta una de las alternativas (la que cumpla la condición) siempre y cuando el resultado de la evaluación lógica sea verdadero.

La sentencia switch es especialmente útil cuando la selección se base en el valor de una variable simple o de una expresión simple denominada expresión de control o selector.

El valor de esta expresión puede ser de tipo int o char, pero no de tipo float ni double o string.

Cada posible respuesta es un valor único, constante y diferente de los otros. Además debe ser del mismo tipo que la evaluación lógica.

Si se quiere considerar un proceso para un resultado falso utilizamos la instrucción Default, que es el valor por omisión. Dado que cada uno de los casos puede contener varias expresiones debemos indicarle al compilador que el caso ha terminado y que debe salir del ciclo de selección, para este fin utilizamos la instrucción break. Esta hace que siga la ejecución en la siguiente sentencia al switch.

El ciclo Switch debe estar agrupado entre llaves, la llave para abrir ( { ) se escribe después de la evaluación lógica y la llave para cerrar ( } ), se escribe después del último caso.

switch ( [Evaluación Lógica] )

{

case ( [ posible respuesta 1 ] ) :

Expresión(es);

break;

case ( [ posible respuesta n ] ) :

Expresión(es);

break;

default:

Expresión(es);

break;

}

Si el valor selector no está listado en ninguna etiqueta case, no se ejecutará ninguna de las opciones a menos que se especifique una acción por defecto (omisión). Aunque esta etiqueta default

...

Descargar como (para miembros actualizados) txt (10 Kb)
Leer 5 páginas más »
Disponible sólo en Clubensayos.com