ESTRUCTURAS SELECTIVAS OBJETIVOS CONOCER LAS DIFERENTES ESTRUCTURAS SELECTIVAS O ALTERNATIVAS EN EL LENGUAJE C. RESOLVER PROBLEMAS UTILIZANDO LAS DIFERENTES ESTRUCTURAS SELECTIVAS. Dra. Addys de Lam
ESTRUCTURAS DE ALTERNATIVAS ESTRUCTURA DE SELECCIÓN SIMPLE ALGORITMO Si ( condición) Entonces Acciones CODIGO EN C: if (expresion) sentencia; Dra. Addys de Lam
EJEMPLOS Si ( Ht < = 40.00 ) Entonces Sb Ht * Sh if ( ht < = 40.00 ) sb = ht * sh; Si ( sexo = = ‘ f’) Entonces visualizar ( “ Es Mujer”) if ( sexo == ‘ f’) printf ( “ Es Mujer”); Dra. Addys de Lam
Dra. Addys de Lam
ESTRUCTURAS DE ALTERNATIVAS ESTRUCTURA DE SELECCIÓN DOBLE CODIGO C if (expresion) sentencia_v; else sentencia_f; ALGORITMO Si ( condición) Entonces Acciones De Otro Modo Dra. Addys de Lam
ALGORITMO CODIGO C Si ( Ht < = 40.00 ) Entonces Sb Ht * Sh De Otro Modo Sb 40.00*Sh + (2 * (Ht - 40.00)*Sh) CODIGO C if ( ht < = 40.00 ) sb = ht * sh; else sb = 40.00*sh + (2 * (ht - 40.00)*sh); Dra. Addys de Lam
visualizar ( “ Es Mujer”) De Otro Modo visualizar ( “ Es Hombre”) ALGORITMO Si ( sexo == ‘ f’) Entonces visualizar ( “ Es Mujer”) De Otro Modo visualizar ( “ Es Hombre”) CODIGO C if ( sexo == ‘ f’) printf ( “ Es Mujer”); else printf ( “ Es Hombre”); Dra. Addys de Lam
Dra. Addys de Lam
ESTRUCTURAS DE ALTERNATIVAS ESTRUCTURA DE SELECCIÓN ANIDADA ALGORITMO Si ( condición) Entonces Acciones De Otro Modo CODIGO C if (expresion) sentencia_v; else sentencia_f; if (expresion) sentencia_f ; Dra. Addys de Lam
visualizar ( “ Es Mujer”) De Otro Modo Si ( sexo == ‘ m’) ALGORITMO Si ( sexo == ‘ f’) Entonces visualizar ( “ Es Mujer”) De Otro Modo Si ( sexo == ‘ m’) visualizar ( “ Es Hombre”) visualizar ( “ Error”) CODIGO C if ( sexo = =‘ f’) printf ( “ Es Mujer”); else if ( sexo == ‘ m’) printf ( “ Es Hombre”); printf ( “ Error”); Dra. Addys de Lam
Dra. Addys de Lam
Algoritmo: Salario_Bruto Inicio (* Declaración de Variable *) ESTRUCTURAS DE ALTERNATIVAS ESTRUCTURA DE SELECCIÓN ( Instrucciones Compuestas) EJEMPLO: Algoritmo: Salario_Bruto Inicio (* Declaración de Variable *) cadena nombre [20] cadena cedula[12], Cat[12] reales Ht , Sh, Sb visualizar(“Entre nombre y cedula”) leer (“%s%s”,Nombre,Cedula) visualizar (“Entre horas trabajadas y salario por hora”) leer (“%f%f”, Ht, Sh) (* Calculo del Salario Bruto*) Si ( Ht < = 40.00 ) Entonces Inicio Sb Ht * Sh Cat “ Normal “ Fin De Otro Modo Sb 40.00* Sh + ( 2*(Ht - 40.00)*SH) Cat “Extras “ visualizar(“Nombre %s Cedula: %sGana: %f Categoría: %s“, nombre,cedula,sb,Cat) Dra. Addys de Lam
ESTRUCTURAS DE ALTERNATIVAS CODIGO C ( Instrucciones Compuestas) #include<stdio.h> #include<string.h> main() { /* Declaración de Variable */ char nombre [20]; char cedula[12], cat[12]; float ht , sh, sb; printf(“Entre nombre y cedula”); scanf(“%s%s”,nombre,cedula); printf (“Entre horas trabajadas y salario por hora”); scanf(“%f%f”, &ht,&sh); /* Calculo del Salario Bruto*/ if ( ht < = 40.00 ) { sb = ht * sh; strcpy(cat, “ Normal “); } else sb = 40.00* sh + ( 2*(ht - 40.00)*sh); strcpy(cat, “Extras “); printf(“Nombre %s Cedula: %sGana: %f Categoría: %s“, nombre,cedula,sb,cat); Dra. Addys de Lam
Prof. Addys de Lam
Operador ?: #include <stdio.h> void main() { int a,b=4,c=5; a= b>0 ? c : c+1; /* Equivalente a if(b>0) a=c; else a=c+1; */ printf(“Elvalor de a: %i”,a); getch(); } Programación en C
Operador ?: #include<stdio.h> main() { int max, n1,n2; printf(“Entre dos valores enteros”); scanf(“%i%i”,&n1,&n2); /* La variable max toma el valor máximo de n1 y n2 */ max = (n1>n2) ? n1 : n2; printf(“El valor máximo es: %i”,max); getch(); } Dra. Addys de Lam