39
2010 UNAN – LEON FACULTAD DE CIENCIA Y TECNOLOGIA Departamento de Computación Autor: M.Sc. Ana María Salgado G. Asignatura: Programación Estructurada SENTENCIAS DE CONTROL (SENTENCIAS if Y switch) Este documento es una extracción del libro Programación en C, metodología, estructura de datos y objetos, de Luis Joyanes Aguilar e Ignacio Zahonero Martínez. Fue recopilado por la M.Sc. Ana María Salgado G. y completado con ejercicios obtenidos de otros textos e Internet.

SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

  • Upload
    dotu

  • View
    216

  • Download
    4

Embed Size (px)

Citation preview

Page 1: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

2010

UNAN – LEON

FACULTAD DE CIENCIA Y TECNOLOGIA

Departamento de Computación

Autor: M.Sc. Ana María Salgado G.

Asignatura:

Programación Estructurada

SENTENCIAS DE CONTROL (SENTENCIAS if Y switch)

Este documento es una extracción del libro Programación en C, metodología, estructura de datos y objetos, de Luis Joyanes Aguilar e Ignacio Zahonero Martínez. Fue recopilado por la M.Sc. Ana María Salgado G. y completado con ejercicios obtenidos de otros textos e Internet.

Page 2: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 2

ESTRUCTURAS DE CONTROL

Las estructuras de control controlan el flujo de ejecución de un programa o

función. Las estructuras de control permiten combinar instrucciones o sentencias

individuales en una simple unidad lógica con un punto de entrada y un punto de

salida.

Las instrucciones o sentencias se organizan en tres tipos de estructuras de control

que sirven para controlar el flujo de la ejecución: secuencia, selección y repetición.

Hasta este momento sólo se ha utilizado el flujo secuencial. Una sentencia

compuesta es un conjunto de sentencias encerradas entre llaves ({ y } ) que se

utiliza para especificar un flujo secuencial.

{

sentencia1;

sentencia2;

.

.

.

sentencian;

}

El control fluye de la sentencia1, a la sentencia2, y así sucesivamente. Sin embargo

existen problemas que requieren etapas con dos o más opciones o alternativas a

elegir en función del valor de una condición o expresión.

Page 3: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 3

LA SENTENCIA if

En C, la estructura de control de selección es una sentencia if. La sentencia if tiene

dos alternativas o formatos posibles. El formato más sencillo tiene la sintaxis

siguiente:

if(condición)

sentencia;

condición es una expresión entera lógica

sentencia es cualquier sentencia ejecutable, que se ejecutará sólo si la condición

toma un valor distinto de cero.

La sentencia if funciona de la siguiente manera:

Cuando se llega a la sentencia if dentro de un programa, se evalúa la condición

entre paréntesis que viene a continuación de if. Si condición es verdadera, se

ejecuta sentencia; en caso contrario no se ejecuta sentencia. En cualquier caso la

ejecución del programa continúa con la siguiente sentencia del programa.

Diagrama de flujo de una sentencia básica if

condición

sentencia

verdadera

falsa

Page 4: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 4

Ejemplo #1:

Un hombre desea saber cuánto dinero se genera por concepto de intereses sobre

la cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses

siempre y cuando estos excedan a $7000, y en ese caso desea saber cuánto dinero

tendrá finalmente en su cuenta.

//if1.c

#include <stdio.h>

float p_int, cap, interes, capf;

void main(void)

{

printf("Introduzca su capital inicial: ");

scanf("%g", &cap);

printf("Cual es el porcentaje de interes?: ");

scanf("%g", &p_int);

interes = cap * p_int;

if(interes > 7000)

capf = cap + interes;

printf("El capital final es: %.2f\n",capf);

}

Ejecución:

Page 5: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 5

Ejemplo #2:

Construya un programa tal, que dados como datos los valores enteros P y Q,

determine si los mismos satisfacen la siguiente expresión:

P3 + Q4 – 2P2 < 680

En caso afirmativo debe imprimir los valores de P y Q.

//expresion.c

#include <stdio.h>

#include <math.h>

int p,q,r;

void main(void)

{

printf("Introduzca dos enteros:");

scanf("%d %d",&p,&q);

r = pow(p,3) + pow(q,4) – 2 * pow(p,2);

if(r < 680)

printf("p = %d, q = %d, r = %d\n",p,q,r);

}

Ejemplo #3:

El número de sonidos emitidos por un grillo en un minuto, es una función de la

temperatura. Como resultado de esto, es posible determinar el nivel de la

temperatura haciendo uso de un grillito como termómetro. La fórmula para la

función es:

t = n/4 + 40

Escriba un programa que le permita calcular la temperatura, teniendo en cuenta

el número de sonidos emitidos por el grillo.

Page 6: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 6

//grilloif.c

#include <stdio.h>

float t;

int n;

void main(void)

{

printf("Introduzca el número de sonidos emitidos por el grillo:\n");

scanf("%d",&n);

if(n > 0)

{

t = n/4.0 + 40;

printf("La temperatura es:%.2f\n",t);

}

}

Ejemplo #4: La tangente de un ángulo se define como el cociente entre el seno y el coseno de

dicho ángulo.

tan(αααα) = sen(αααα)

cos(αααα)

Construya un programa, que permita calcular la tangente de un ángulo,

considerando que se conoce el valor del seno y del coseno del mismo.

//tang.c

#include <stdio.h>

float seno,coseno,tang;

void main(void )

{

printf("seno= ");

scanf("%f",&seno);

printf("coseno= ");

scanf("%f",&coseno);

if(coseno != 0)

{

tang=seno/coseno;

printf("El valor de la tangente es: %.4f",tang);

}

}

Page 7: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 7

Ejercicios propuestos

1. En un almacén se hace un 20% de descuento a los clientes cuya compra

supere los $1000 ¿Cuál será la cantidad que pagará una persona por su

compra?

2. Realice un programa que lea dos números enteros y compruebe cuál es

el valor del resto de la división (n % d). Si el resto es cero, n es divisible

por d (en nuestro caso 36 es divisible por 4, ya que 36 / 4 = 9 y el resto es

0)

3. Escriba un programa que compare un número introducido por el

usuario y compruebe si el número es positivo, negativo o nulo.

SENTENCIA if DE DOS ALTERNATIVAS: if – else

Un segundo formato de la sentencia if es la sentencia if-else. Este formato de la

sentencia if tiene la siguiente sintaxis:

if(condición)

sentencia1

else

sentencia2

condición Expresión lógica que determina la acción a ejecutar.

sentencia1 Acción que realiza si la condición lógica es verdadera.

sentencia2 Acción que se ejecuta si la expresión lógica es falsa.

En este formato sentencia1 y sentencia2 son individualmente, o bien una única

sentencia que termina con punto y coma(;) o un grupo de sentencias encerrado

entre llaves. Se evalúa la condición. Si condición es verdadera, se ejecuta

sentencia1 y en caso contrario se ejecuta sentencia2.

Page 8: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 8

Diagrama de flujo de la representación de una sentencia if-else

Ejemplo #1: Calcule el total a pagar por la compra de camisas. Si se compran tres camisas o

más se aplica un descuento del 20% sobre el total de la compra y si son menos

de tres camisas un descuento del 10%.

//descuento.c

#include <stdio.h>

int numcamisas;

float prec, totcomp,totpag;

void main(void)

{

printf("Cuantas camisas comprara?");

scanf("%d",&numcamisas);

printf("Ingrese el precio:");

scanf("%f",&prec);

totcomp = numcamisas * prec;

if(numcamisas >= 3)

totpag = totcomp - totcomp * 0.20;

else

totpag = totcomp - totcomp * 0.10;

c o n d ic ió n

s e n te n c ia 1 s e n te n c ia 2

v e r d a d e r a fa ls a

Page 9: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 9

printf("Total a pagar = %.2f \n",totpag);

}

Ejemplo #2:

En un supermercado se hace una promoción, mediante la cual el cliente obtiene

un descuento dependiendo de un número que se escoge al azar. Si el número

escogido es menor que 74 el descuento es del 15% sobre el total de la compra, si

es mayor o igual a 74 el descuento es del 20%. Obtener cuánto dinero se le

descuenta.

//descuento2.c

#include <stdio.h>

int numero;

float totcomp, descuento;

void main(void)

{

printf("Escoja un numero:");

scanf("%d",&numero);

printf("Ingrese el total de la compra:");

scanf("%f",&totcomp);

if(numero < 74)

descuento = totcomp * 0.15;

else

descuento = totcomp * 0.20;

printf("Descuento = %.2f \n",descuento);

}

Page 10: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 10

Ejemplo #3:

Calcular el número de pulsaciones que debe tener una persona por cada 10

segundos de ejercicio aeróbico; la fórmula que se aplica cuando el sexo es

femenino es:

numpulsaciones = (220 - edad)/10

y si el sexo es masculino:

numpulsaciones = (210 - edad)/10

//pulsaciones.c

#include <stdio.h>

int edad, numpulsaciones;

char sexo;

void main(void)

{

printf("Sexo(F/M):");

sexo = getchar();

printf("Ingrese la edad:");

scanf("%d",&edad);

if(sexo == 'F' || sexo == 'f')

numpulsaciones = (220 - edad)/10;

else

numpulsaciones = (210 - edad)/10;

printf("Numero de pulsaciones = %d \n",numpulsaciones);

}

Ejemplo #4:

Una compañía de seguros está abriendo un dpto. de finanzas y estableció un

programa para captar clientes, que consiste en lo siguiente: Si el monto por el

que se efectúa la fianza es menor que $50 000 la cuota a pagar será por el 3% del

monto, y si el monto es mayor que $50 000 la cuota a pagar será el 2% del monto.

La afianzadora desea determinar cuál será la cuota que debe pagar un cliente.

Page 11: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 11

//fianza.c

#include <stdio.h>

float montofianza, cuota;

void main(void)

{

printf("Ingrese el monto de la fianza:");

scanf("%f",&montofianza);

if(montofianza < 50000)

cuota = montofianza * 0.03;

else

cuota = montofianza * 0.02;

printf("Cuota = %.2f \n",cuota);

}

Ejemplo #5:

Las raíces reales de la expresión ax2 + bx + c = 0 se obtienen a través de la fórmula:

Realice un programa para calcular las raíces reales, de ser posible, de una ecuación

de segundo grado.

a

acbbx

2

42−±−

= si 042

>=− acb

Page 12: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 12

//raiz.c

#include <stdio.h>

#include <math.h>

float a,b,c,d,x1,x2;

void main(void)

{

printf("Introduzca los valores de a,b,c: ");

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

d = b * b - 4 * a * c;

printf("d = %f\n",d);

if(d >= 0)

{

x1 = (-b + sqrt(d)) / (2 * a);

x2 = (-b - sqrt(d)) / (2 * a);

printf("Las raices de la ecuacion son: %f %f\n",x1,x2);

}

else

printf("No se pueden calcular las raices\n");

}

Ejemplo #6: Una empresa quiere hacer una compra de varias piezas de la misma clase a una

fábrica de refacciones. La empresa, dependiendo del monto total de la compra,

decidirá qué hacer para pagar al fabricante.

Si el monto total de la compra es $500 000 ó más, la empresa tendrá la

capacidad de invertir de su propio dinero un 55% del monto de la compra, pedir

prestado al banco un 30% y el resto lo pagará solicitando un crédito al fabricante.

Si el monto total de la compra no excede de $500 000, la empresa tendrá

capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagará

solicitando crédito al fabricante.

Page 13: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 13

El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se le

pague a crédito.

//refacciones.c

#include <stdio.h>

float costopza, totcomp, cantinv, prestamo, credito, interes;

int numpza;

void main( )

{

printf("Costo de la pieza: ");

scanf("%f", &costopza);

printf("Numero de piezas: ");

scanf("%d", &numpza);

totcomp = costopza * numpza;

if(totcomp >= 500000)

{

cantinv = totcomp * 0.55;

prestamo = totcomp * 0.30;

credito = totcomp * 0.15;

}

else

{

cantinv = totcomp * 0.70;

prestamo = 0;

credito = totcomp * 0.30;

}

interes = credito * 0.20;

printf("\nCantidad invertida: %.2f\nPrestamo:%.2f\n",cantinv, prestamo);

printf("Credito = %.2f\nIntereses = %.2f\n",credito, interes);

}

Page 14: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 14

Ejemplo #7: Dada la función f(x) calcular la función para un valor dado x y visualizarlo en

pantalla.

x2 – x para x <= 0.0

-x2 + 3x para x > 0

//funcion.c

#include <stdio.h>

#include <math.h>

void main()

{

float f, x;

printf("Elige un valor de x: ");

scanf("%f",&x);

/* seleccion del rango en que se encuentra x */

if(x <= 0.0)

f = pow(x,2) - x;

else

f = -pow(x,2) + 3 * x;

printf("f(%.1f) = %.3f", x,f);

}

Comentario:

Una vez introducido x, se evalúa la condición x <= 0.0, si es cierta asigna a f, x2 – x;

en caso contrario asigna a f, -x2 + 3x

f(x)=

Page 15: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 15

Ejercicios propuestos

1. Determinar si un alumno aprueba o reprueba un curso, sabiendo que

aprobará si su promedio de tres calificaciones es mayor o igual a 70; reprueba en

caso contrario. Para ambos casos, imprima también su promedio.

2. Un obrero necesita calcular su salario semanal, el cual se obtiene de la

siguiente manera:

Si trabaja 40 horas o menos se le paga $16 por hora

Si trabaja más de 40 horas se le paga $16 por cada una de las primeras 40 horas y

$20 por cada hora extra.

3. Calcular el mayor de dos números leídos del teclado y visualizarlo en

pantalla.

4. Escriba un programa que pueda determinar, dados dos números enteros, si

un número es divisor de otro.

5. Dados tres datos, enteros positivos, que representan las longitudes de los

lados de un triángulo; realice un programa que determine si el triángulo es:

Equilátero: tres lados iguales

Isósceles: dos lados iguales

Escaleno: tres lados diferentes

6. Que lea dos números y los imprima en forma ascendente.

7. Calcular el total que una persona debe pagar en una llantera, si el precio de

cada llanta es de $800 si se compran menos de 5 llantas y de $700 si se compran 5 o

más.

8. En una escuela la colegiatura de los alumnos se determina según el número

de materias que cursan. El costo de todas las materias es el mismo. Se ha

establecido un programa para estimular a los alumnos, el cual consiste en lo

siguiente: si el promedio obtenido por un alumno en el último periodo es mayor o

igual que 9, se le hará un descuento del 30% sobre la colegiatura y no se le cobrara

IVA; si el promedio obtenido es menor que 9 deberá pagar la colegiatura completa,

la cual incluye el 10% de IVA. Obtener cuánto debe pagar un alumno.

Page 16: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 16

9. Una empresa de bienes raíces ofrece casas de interés social, bajo las

siguientes condiciones: Si los ingresos del comprador son $8000 o más, el enganche

será del 15% del costo de la casa y el resto se distribuirá en pagos mensuales, a

pagar en diez años. Si los ingresos del comprador son menos de $8000, el enganche

será del 30% del costo de la casa y el resto se distribuirá en pagos mensuales a

pagar en 7 años. La empresa quiere obtener cuanto debe pagar un comprador

por concepto de enganche y cuanto por cada pago parcial.

10. El gobierno ha establecido el programa SAR (Sistema de Ahorro para el

Retiro) que consiste en que los dueños de la empresa deben obligatoriamente

depositar en una cuenta bancaria un porcentaje del salario de los trabajadores;

adicionalmente los trabajadores pueden solicitar a la empresa que deposite

directamente una cuota fija o un porcentaje de su salario en la cuenta del SAR, la

cual le será descontada de su pago. Un trabajador que ha decidido aportar a su

cuenta del SAR desea saber la cantidad total de dinero que estará depositado a esa

cuenta cada mes, y el pago mensual que recibirá.

SENTENCIAS if – else ANIDADAS

Una sentencia if es anidada cuando la sentencia de la rama verdadera o la rama

falsa, es a su vez una sentencia if. Una sentencia if anidada se puede utilizar para

implementar decisiones con varias alternativas o multialternativas.

Sintaxis:

if(condición1)

sentencia1

else if(condición2)

sentencia2

.

.

. else if(condición n)

sentencia n

else

sentencia e

Page 17: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 17

/* incrementar contadores de números positivos, números negativos o ceros */

La ejecución de la sentencia if anidada se realiza como sigue:

Se comprueba la primera condición (x > 0); si es verdadera, num_pos se incrementa

en 1 y se salta el resto de la sentencia if. Si la primera condición es falsa, se

comprueba la segunda condición (x < 0); si es verdadera num_neg se incrementa en

uno; en caso contrario se incrementa num_ceros en uno. Es importante considerar

que la segunda condición se comprueba sólo si la primera condición es falsa.

Ejemplo #1:

Haga un programa que permita calcular el valor de f(x), según la expresión: X2 si (x mod 4)=0 X/6 si (x mod 4)=1

√√√√x si (x mod 4)=2 x3 + 5 si (x mod 4)=3

if (x > 0) num_pos = num_pos + 1; else

if(x < 0) num_neg = num_neg + 1; else num_ceros = num_ceros + 1;

f(x)=

Page 18: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 18

//if3.c #include <stdio.h> #include <math.h> int x; float y ; void main(void) { printf("x = "); scanf("%d",&x); if (x % 4 == 0) y = x * x; else if (x % 4 == 1) y = (float)x / 6; else if(x % 4 == 2) y = sqrt((double)x); else if(x % 4 == 3) y = pow(x,3) + 5; printf(" y = %.2f \n ",y); }

Ejemplo #2:

Una frutería ofrece las manzanas con descuento según la siguiente tabla:

NUM. DE KILOS COMPRADOS % DESCUENTO

0 - 2 0%

2.01 - 5 10%

5.01 - 10 15%

10.01 en adelante 20%

Determinar cuánto pagará una persona que compre manzanas es esa frutería.

Page 19: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 19

//manzanas.c

#include <stdio.h>

float nkilos,compra, pkilo,pago, descuento;

void main(void)

{

printf("Cuantos kilos de manzana comprara?:");

scanf("%f",&nkilos);

printf("Precio del kilo?:");

scanf("%f",&pkilo);

compra = nkilos * pkilo;

if(nkilos >= 0 && nkilos <= 2)

descuento = 0;

else if(nkilos >= 2.01 && nkilos <= 5)

descuento = compra * 0.10;

else if(nkilos >= 5.01 && nkilos <= 10)

descuento = compra * 0.15;

else

descuento = compra * 0.20;

pago = compra - descuento;

printf("Pago = %.2f\n",pago);

}

Ejemplo #3:

El IMSS requiere clasificar a las personas que se jubilaran en el año de 1997.

Existen tres tipos de jubilaciones: por edad, por antigüedad joven y por

antigüedad adulta. Las personas adscritas a la jubilación por edad deben tener

60 años o más y una antigüedad en su empleo de menos de 25 años. Las personas

adscritas a la jubilación por antigüedad joven deben tener menos de 60 años y

una antigüedad en su empleo de 25 años o más.

Las personas adscritas a la jubilación por antigüedad adulta deben tener

60 años o más y una antigüedad en su empleo de 25 años o más.

Determinar en qué tipo de jubilación, quedara adscrita una persona.

Page 20: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 20

//jubilacion.c

#include <stdio.h>

int edad,ant;

void main(void)

{

printf("Edad?:");

scanf("%d",&edad);

printf("Antiguedad?:");

scanf("%d",&ant);

if(edad >= 60 && ant < 25)

printf("La jubilacion es por edad\n");

else if(edad < 60 && ant >= 25)

printf("La jubilacion es por antiguedad joven\n");

else if(edad >= 60 && ant >= 25)

printf("La jubilacion es por antiguedad adulta.\n");

else

printf("No tiene por que jubilarse\n");

}

Ejemplo #4: Un individuo debe realizar un muestreo para determinar en qué categoría se encuentran las personas que viven en su zona habitacional. Se determinan las categorías con base en la siguiente tabla: CATEGORIA EDAD Niños 0 - 12 Jóvenes 13 - 29 Adultos 30 - 59 Viejos 60 en adelante

Page 21: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 21

//edadcategoria.c

#include <stdio.h>

int edad;

void main(void)

{

printf("Edad?:");

scanf("%d",&edad);

if(edad >= 0 && edad <= 12)

printf("Te encuentras en la categoria Ninos\n");

else if(edad >= 13 && edad <= 29)

printf("Te encuentras en la categoria Jovenes\n");

else if(edad >= 30 && edad <= 59)

printf("Te encuentras en la categoria Adultos\n");

else

printf("Te encuentras en la categoria Viejos\n");

}

Ejemplo #5: Tomando como base los resultados obtenidos en un laboratorio de análisis clínicos, un médico determina si una persona tiene anemia o no, lo cual depende de su nivel de hemoglobina en la sangre, de su edad y de su sexo. Si el nivel de hemoglobina que tiene una persona no se encuentra el rango que le corresponde, se determina su resultado como positivo y en caso contrario como negativo. La tabla en la que el médico se basa para obtener el resultado es la siguiente: EDAD NIVEL HEMOGLOBINA 0 - 1 mes 13 - 26 g% > 1 y < = 6 meses 10 - 18 g% > 6 y < = 12 meses 11 - 15 g% > 1 y < = 5 años 11.5 - 15 g% > 5 y < = 10 años 12.6 - 15.5 g% > 10 y < = 15 años 13 - 15.5 g% mujeres > 15 años 12 - 16 g% hombres > 15 años 14 - 18 g%

Page 22: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 22

//hemoglobina.c

#include <stdio.h>

int tipoedad, meses, edad;

char sexo;

float nihem;

void main(void)

{

printf("Edad en meses o en anyos?:\n");

printf("1. Meses\n");

printf("2. Anyos\n");

scanf("%d",&tipoedad);

if(tipoedad == 1)

{

printf("Cuantos meses tiene el bebe?");

scanf("%d",&meses);

}

else

if(tipoedad == 2)

{

printf("Cuantos anyos tiene?");

scanf("%d",&edad);

printf("Sexo:");

fflush(stdin);

sexo = getchar();

}

printf("Nivel de hemoglobina?");

scanf("%f",&nihem);

if((meses >= 0 && meses <= 1) && (nihem >=13 && nihem <= 26 ))

printf("Negativo, no tiene anemia\n");

else if((meses > 1 && meses <= 6) && (nihem >= 10 && nihem <= 18))

printf("Negativo, no tiene anemia\n");

Page 23: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 23

else if((meses > 6 && meses <= 12) && (nihem >=11 && nihem <= 15))

printf("Negativo, no tiene anemia\n");

else if((edad > 1 && edad <= 5) && (nihem >=11.5 && nihem <= 15))

printf("Negativo, no tiene anemia\n");

else if((edad > 5 && edad <= 10) && (nihem >=12.6 && nihem <= 15.5))

printf("Negativo, no tiene anemia\n");

else if((edad > 10 && edad <= 15) && (nihem >=13 && nihem <= 15.5))

printf("Negativo, no tiene anemia\n");

else if(((sexo == 'F' || sexo == 'f') && edad > 15) && (nihem >=12 && nihem <= 16))

printf("Negativo, no tiene anemia\n");

else if(((sexo == 'M' || sexo == 'm')&& edad > 15) && (nihem >=14 && nihem<= 18))

printf("Negativo, no tiene anemia\n");

else

printf("Positivo\n");

}

Ejemplo #6:

//tarifaluz.c

/* Visualiza la tarifa de luz según el gasto de corriente eléctrica. Para un gasto

menor de 1000Kw por hora, la tarifa es 1.2, entre 1000 y 1850Kw por hora es 1.0 y

mayor de 1850Kw por hora es 0.9

*/

#include <stdio.h>

#define TARIFA1 1.2

#define TARIFA2 1.0

#define TARIFA3 0.9

Page 24: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 24

void main()

{

float gasto, tasa;

printf("\n Gasto de corriente: ");

scanf("%f",&gasto);

if(gasto < 1000)

tasa = TARIFA1;

else if(gasto >=1000 && gasto <= 1850)

tasa = TARIFA2;

else

tasa = TARIFA3;

printf("\n Tasa que le corresponde a %.1f Kw x h es de %f \n",gasto, tasa);

}

Ejemplo #7: Leer tres números enteros diferentes e imprimir el número mayor de los tres.

//mayor.c

#include <stdio.h>

void main(void)

{

int num1, num2, num3, mayor;

printf("Introduzca tres enteros diferentes: ");

scanf("%d %d %d", &num1, &num2, &num3);

if((num1 > num2) && (num1 > num3))

mayor = num1;

else if((num2 > num1) && (num2 > num3))

mayor = num2;

else

mayor = num3;

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

}

Page 25: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 25

Ejemplo #8: Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber

cuántas calorías consume su cuerpo durante todo el tiempo que realice una misma

actividad. Las actividades que tiene permitido realizar son únicamente dormir o

estar sentado en reposo. Los datos que tiene son que estando dormido consume

1.08 calorías por minuto y estando sentado en reposo consume 1.66 calorías por

minuto.

//enferma.c

#include <stdio.h>

#include <string.h>

int tiempo;

char actividad[30];

float calorias;

void main(void)

{

printf("Que actividad realiza, dormir o estar sentado en reposo?: \n");

gets(actividad); printf("\nIntroduzca el tiempo en minutos en que ejecuta una de las dos actividades: \n");

scanf("%d",&tiempo);

if (!strcmp(actividad,"dormir"))

{

calorias = 1.08 * tiempo;

printf("\nSu cuerpo consume %.2f calorias por minuto\n",calorias);

}

else

if (!strcmp(actividad,"estar sentado en reposo"))

{

calorias = 1.66 * tiempo;

printf("\nSu cuerpo consume %.2f calorias por minuto\n",calorias);

}

else

printf("\nactividad invalida\n");

}

Page 26: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 26

Ejercicios propuestos

1. Leer 2 números enteros; si son iguales que los multiplique, si el primero es

mayor que el segundo que los reste y si no que los sume.

2. En una tienda de descuento se efectúa una promoción en la cual se hace un

descuento sobre el valor de la compra total según el color de la bolita que el cliente

saque al pagar en caja. Si la bolita es de color blanco no se le hará descuento

alguno, si es verde se le hará un 10% de descuento, si es amarilla un 25%, si es azul

un 50% y si es roja un 100%. Determinar la cantidad final que el cliente deberá

pagar por su compra. se sabe que solo hay bolitas de los colores mencionados.

3. En una fábrica de computadoras se planea ofrecer a los clientes un

descuento que dependerá del número de computadoras que compre. Si las

computadoras son menos de cinco se les dará un 10% de descuento sobre el total

de la compra; si el número de computadoras es mayor o igual a cinco pero menos

de diez se le otorga un 20% de descuento; y si son 10 o mas se les da un 40% de

descuento. El precio de cada computadora es de $11,000

4. Calcular la utilidad que un trabajador recibe en el reparto anual de

utilidades si este se le asigna como un porcentaje de su salario mensual que

depende de su antigüedad en la empresa de acuerdo con la sig. tabla:

Tiempo Utilidad

Menos de 1 año 5 % del salario

1 año o más y menos de 2 años 7% del salario

2 años o más y menos de 5 años 10% del salario

5 años o más y menos de 10 años 15% del salario

10 años o más 20% del salario

5. En una llantera se ha establecido una promoción de las llantas marca

“Ponchadas”, dicha promoción consiste en lo siguiente:

Si se compran menos de cinco llantas el precio es de $300 cada una, de $250

si se compran de cinco a 10 y de $200 si se compran más de 10.

Obtener la cantidad de dinero que una persona tiene que pagar.

Page 27: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 27

6. En un juego de preguntas a las que se responde “Si” o “No” gana quien

responda correctamente las tres preguntas. Si se responde mal a cualquiera de ellas

ya no se pregunta la siguiente y termina el juego. Las preguntas son:

1. Colon descubrió América?

2. La independencia de México fue en el año 1810?

3. The Doors fue un grupo de rock Americano?

7. Un proveedor de estéreos ofrece un descuento del 10% sobre el precio sin

IVA, de algún aparato si este cuesta $2000 o más. Además, independientemente de

esto, ofrece un 5% de descuento si la marca es “NOSY”. Determinar cuánto

pagará, con IVA incluido, un cliente cualquiera por la compra de su aparato.

8. La Cía. Automovilística Mexicana, S.A. de C.V premia anualmente a sus

mejores vendedores de acuerdo a la siguiente tabla:

Si vendió Le corresponde de Comisión

sobre ventas totales

1,000,000 <= v < 3,000,000 3%

3,000,000 <= v < 5,000,000 4%

5,000,000 <= v < 7,000,000 5%

7,000,000 <= v 6%

Diseñar un programa que lea las ventas de un vendedor y que escriba la comisión

que le corresponde.

9. 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 estas 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 pagan las horas normales y el resto al

triple.

Page 28: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 28

SENTENCIA DE CONTROL switch

La sentencia switch es una sentencia C que se utiliza para seleccionar una de entre

múltiples alternativas. La sentencia switch es especialmente útil cuando la

selección se basa en el valor de una variable simple o de una expresión simple

denominada selector. El valor de esta expresión puede ser de tipo int o char, pero

no de tipo float ni double.

Sintaxis:

switch(selector)

{

case etiqueta1:

sentencia1;

case etiqueta2:

sentencia2;

.

.

case etiquetan:

sentencian;

default:

sentenciad;

}

El selector se evalúa y se compara con cada una de las etiquetas del case. La

expresión selector debe ser un tipo ordinal, por ejemplo, int, char, pero no float, o

string. Cada etiqueta es un valor único, constante y cada etiqueta debe tener un

valor distinto de los otros. Si el valor de selector es igual a una de las etiquetas

case, por ejemplo, etiquetai, entonces la ejecución comenzará con la primera

sentencia de la secuencia sentenciai y continuará hasta que se encuentre el final de

la sentencia de control switch, o hasta encontrar la sentencia break. Es habitual

que después de cada bloque de sentencias correspondiente a una secuencia se

desee terminar la ejecución del switch, para ello se sitúa la sentencia break como

última sentencia del bloque; break hace que siga la ejecución en la siguiente

sentencia al switch.

Page 29: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 29

Sintaxis con break:

switch(selector)

{

case etiqueta1:

sentencia1;

break;

case etiqueta2:

sentencia2;

break;

.

.

.

case etiquetan:

sentencian;

break;

default:

sentenciad;

}

Si el valor de 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.

Una sentencia break consta de la palabra reservada break seguida por un punto y

coma. Cuando la computadora ejecuta las sentencias siguientes a una etiqueta

case, continúa hasta que se alcanza una sentencia break. Si la computadora

encuentra una sentencia break, termina la sentencia switch. Si se omiten las

sentencias break, después de ejecutar el código de case, la computadora ejecutará

el código que sigue a la siguiente case.

Page 30: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 30

Ejemplo #1:

//numero.c

#include <stdio.h>

int numero;

void main(void)

{

printf("Introduzca un entero: ");

scanf("%d",&numero);

switch(numero)

{

case 0:

puts("Cero");

break;

case 1:

puts("Uno");

break;

case 2:

puts("Dos");

break;

default:

puts("Fuera de rango");

}

}

Ejemplo #2:

Hacer un algoritmo que imprima el nombre de un artículo, clave, precio original y

su precio con descuento. El descuento lo hace en base a la clave, si la clave es 1 el

descuento es del 10% y si la clave es 2 el descuento es del 20% (solo existen dos

claves).

Page 31: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 31

//clave.c

#include <stdio.h>

#include <stdlib.h>

char nombreart[30];

int clave;

float prec_orig,prec_desc;

void main(void)

{

printf("Introduzca el nombre de un articulo:");

gets(nombreart);

printf("Ingrese su clave:");

scanf("%d",&clave);

printf("Precio original?");

scanf("%f",&prec_orig);

switch(clave)

{

case 1:

prec_desc = prec_orig - prec_orig * 0.10;

break;

case 2:

prec_desc = prec_orig - prec_orig * 0.20;

break;

default:

printf("Clave invalida\n");

exit(0);

}

printf("\n\nClave = %d\n",clave);

printf("Articulo: %s \n", nombreart);

printf("Precio original = %.2f \n",prec_orig);

printf("Precio con descuento = %.2f\n\n",prec_desc);

}

Page 32: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 32

Ejemplo #3: Dada una nota de un examen mediante un código escribir el literal que le

corresponde a la nota.

#include <stdio.h>

void main( )

{

char nota;

printf(“Introduzca calificación (A – F) y pulse Intro: “);

scanf(“%c”, &nota);

switch(nota)

{

case ‘A’:

puts(“Excelente. Examen superado”);

break;

case ‘B’:

puts(“Notable. Suficiencia”);

break;

case ‘C’:

puts(“Aprobado”);

break;

case ‘D’:

case ‘F’:

puts(“Suspendido”);

break;

default:

puts(“No es posible esa nota”);

}

puts(“Final del programa”);

}

Page 33: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 33

Ejemplo #4:

Realice un programa que haga las siguientes conversiones:

• De toneladas a kilogramos.

• De pie a metros.

Tome en cuenta las siguientes consideraciones:

• 1 tonelada equivale a 1000 kilogramos

• 1 pie equivale a 0.3047 metros

Cree un tipo enumerado. Utilice switch. //toneladakg.c

#include <stdio.h>

#include <stdlib.h>

float ton, metro, pie, kg;

void main()

{

enum tipo

{

toneladakg = 1,

piemt

};

enum tipo conversion;

printf("1 - De toneladas a kilogramos\n");

printf("2 - De pie a metros\n");

printf("\nPulse la opcion deseada: ");

scanf("%d", &conversion);

switch (conversion)

{

case toneladakg:

printf("Ingrese las toneladas:");

scanf("%f",&ton);

kg = ton * 1000;

printf("kg = %.2f\n",kg);

break;

Page 34: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 34

case piemt:

printf("\n¿metros? ");

scanf("%f", &metro);

pie = metro * 0.3047;

printf("pie = %.3f\n",pie);

break;

default:

printf("\nLa opción no es correcta\n");

exit(0); /* error; salir de main */

}

}

Ejemplo #5:

Realice un programa que simule una calculadora, de tal forma que:

• Si el usuario introduce ‘+’, sume dos números.

• Si el usuario introduce ‘-’, reste dos números.

• Si el usuario introduce ‘*’, multiplique dos números.

• Si el usuario introduce ‘/’, divida dos números. Asegúrese que el segundo

operando no sea cero, ya que la división por cero no está permitida.

//calculadora.c

#include <stdio.h>

#include <stdlib.h>

double num1, num2, resp;

char operacion;

void main(void)

{

printf("Esta es una calculadora...\n\n");

printf("Ingrese dos numeros: ");

scanf("%lf %lf",&num1,&num2);

printf("Operacion?");

fflush(stdin);

operacion = getchar();

Page 35: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 35

switch(operacion)

{

case '+':

resp = num1 + num2;

break;

case '-':

resp = num1 - num2;

break;

case '*':

resp = num1 * num2;

break;

case '/':

if(num2 != 0)

resp = num1 / num2;

else

{

printf("Division por cero no valida\n");

exit(0);

}

break;

default:

puts("Operacion invalida");

}

printf("%g %c %g = %g \n\n",num1,operacion,num2,resp);

}

Page 36: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 36

Ejemplo #6:

Escriba un programa que permita lo siguiente:

� Convertir una temperatura de grados Fahrenheit a grados Centígrados

� Convertir una temperatura de grados Centígrados a grados Fahrenheit

F = 9/5 * C + 32 C = 5/9 * (F – 32)

//fahrcent.c

#include <stdio.h>

#include <stdlib.h>

int opcion;

float f, c;

void main(void)

{

printf("1 - Convertir de centigrados a fahrenheit\n");

printf("2 - Convertir de fahrenheit a centigrados\n");

printf("\nIngrese la opcion deseada: ");

scanf("%d", &opcion);

switch (opcion)

{

case 1:

printf("\nGrados centigrados:");

scanf("%f",&c);

f = 9.0/5.0 * c + 32;

printf("%.2f centigrados equivalen a %.2f grados fahrenheit\n\n",c,f);

break;

case 2:

printf("\nGrados fahrenheit? ");

scanf("%f", &f);

c = 5.0/9.0 * (f - 32);

printf("%.2f fahrenheit equivalen a %.2f grados centigrados\n\n",f,c);

break;

Page 37: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 37

default:

printf("\nOpcion incorrecta\n");

exit(0); /* error; salir de main */

}

}

Ejercicios propuestos

1. Realice un programa que me permita saber si un determinado carácter car es

una vocal.

2. Escriba un programa que calcule el importe a pagar por un vehículo al

circular por una autopista. El vehículo puede ser una bicicleta, una moto, un

coche, o un camión. Para definir el conjunto vehículos utilizaremos un tipo

enumerado. El importe se calculará según los siguientes datos:

• Un importe fijo de 100 córdobas para las bicicletas.

• Las motos y los carros pagarán 30 córdobas por Km.

• Los camiones pagarán 30 córdobas por Km más 25 córdobas por Tm

La presentación en pantalla de la solución, será de la forma siguiente:

1 - bicicleta

2 – moto

3 – carro

4 - camión

5 – salir

Seleccione la opción deseada: 4

Kilómetros y toneladas? 100 50

Importe = 4250

3. Realizar un programa que permita ingresar un número correspondiente a

los días de una semana y muestre el nombre del día. Que se permita trabajar hasta

que el usuario indique lo contrario. Use switch.

Page 38: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 38

4. Escriba un programa tal, que dados como datos el modelo de un vehículo y

su precio, determine el valor final que debe pagar el comprador. El concesionario

está haciendo descuentos teniendo en cuenta el modelo, con base en la siguiente

tabla:

Modelo Descuento

Cutlass 8%

Cavalier 5%

Chevy 6%

Century 9%

Haga uso de una enumeración. Defínala como un nuevo tipo. Además, utilice

break y una opción por defecto que imprima “El modelo no es válido”.

5. En un hospital se ha hecho un estudio sobre los pacientes registrados

durante los últimos 10 años, con el objeto de hacer una aproximación de los costos

de internación por paciente. Se obtuvo un costo promedio diario según el tipo de

enfermedad que aqueja al paciente; además se pudo determinar que en promedio

todos los pacientes con edad entre 10 y 25 años implican un costo adicional del

20%. La siguiente tabla expresa los costos diarios, según el tipo de enfermedad.

Tipo de enfermedad Costo/Paciente/Día

1 25

2 40

3 20

4 32

Construya un programa que calcule e imprima el costo total que representa un

paciente.

6. El costo de las llamadas telefónicas nacionales, depende de la ciudad en la

que se encuentre y del número de minutos hablados. En la siguiente tabla se

presenta el costo por minuto, por ciudad. A cada ciudad se le ha asociado una

clave.

Page 39: SENTENCIAS DE CONTROL - · PDF fileSentencias de control if y switch 3 M.Sc. Ana María Salgado G . LA SENTENCIA if En C, la estructura de control de selección es una sentencia if

Sentencias de control if y switch

M.Sc. Ana María Salgado G. 39

Clave Ciudad Precio

1 León 2

5 Managua 2.2

8 Estelí 4.5

9 Matagalpa 3.5

13 Jinotega 6

2 Chinandega 6

15 Rivas 5

Realice un programa en Lenguaje C, que permita calcular e imprimir el costo total

de una llamada. Use enumerados.

8. Efectúe un programa que haga las siguientes conversiones:

• De pulgadas a milímetros.

• De yardas a metros.

• De millas a kilómetros.

Use un tipo enumerado.

1 milímetro = 25.40 pulgadas

1 metro = 0.9144 yardas

1 km = 1.6093 millas