clase 03

23
Estructuras Condicionales Clase 03

Upload: shigo222

Post on 13-Dec-2015

221 views

Category:

Documents


0 download

DESCRIPTION

PROGRAMACION EN C

TRANSCRIPT

Page 1: Clase 03

Estructuras Condicionales

Clase 03

Page 2: Clase 03

Tener en cuenta

int a=7,b=8,c=9,x,y,x = (a<b)*(b<c); //x es 1y=(a<c)*(c<a); //y es 0

Page 3: Clase 03

Diagrama de Flujo

• El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o proceso, con los siguientes símbolos básicos.

Sentencia, lectura, y escritura de datos

Inicio y Fin

Condicional

Flujo

Page 4: Clase 03

Estructuras

• Estructura Secuencial • Estructura Condicional

Page 5: Clase 03

Proposición IF ELSEif(expresion){ sentencia1; sentencia2; ........ }

Page 6: Clase 03

Proposición IF ELSEif(expresion){ sentencia1; sentencia2; } sentencia3; sentencia4; sentencia5;

Page 7: Clase 03

Proposición IF ELSE

if(expresion){ sentencia1; sentencia2;}else{ sentencia3; sentencia4; } sentencia5; sentencia6;

Page 8: Clase 03

Proposición IF ELSE

if(exp.1){ sentencia1; }else if(exp.2){ sentencia2; }else if(exp.3){ sentencia3; }else{ sentencia4; }

Page 9: Clase 03

Ejemplo 1• Escribir un algoritmo que pida dos números y saque el mayor de ellos

por pantalla, informando en el caso de que los dos números sean iguales.

#include<stdio.h>int a,b;int main(){ printf("Leer /n"); scanf("%d %d",&a,&b); if(a==b){ printf("Son iguales"); }else if(a>c){ printf("El mayores %d /n",a);

}else{ printf("El mayores %d /n",b);

} return 0;}

Page 10: Clase 03

Ejemplo 2• Escribir un algoritmo que lea tres valores enteros distintos

y muestre por pantalla el mínimo y el máximo de ellos.

Page 11: Clase 03

Ejemplo 2• Escribir un algoritmo que lea

tres valores enteros distintos y muestre por pantalla el mínimo y el máximo de ellos.

#include<stdio.h>int a,b,c;int main(){ printf("Leer /n"); scanf("%d %d %d",&a,&b ,&c); if(a>b){ if(a>c){ if(b>c){ printf("%d , % d ",c,a); }else{ printf("%d , % d ",b,a); } }else{ printf("%d , % d ",b,c); } }else{ if(c>b){ printf("%d , % d ",a,c); }else{ if(a>c){ printf("%d , % d ",c,b); }else{ printf("%d , % d ",a,b); } } } return 0;}

Page 12: Clase 03

Pregunta 1

• Que muestre un menú que contemple las opciones 1=“Archivo”, 2=“Buscar” y 3=“Salir”, en caso de que no se introduzca una opción correcta se notificará por pantalla.

• Realizar un programa donde una persona puede manejar si tiene mas de 18 años tiene carnet de conducir y si es menor de 90 años.

• Que pida tres números y detecte si se han introducido en orden decreciente.

Page 13: Clase 03

Tener en cuenta

int afloat bchar cscanf(« %d %c %f»,&a,&c,&b);

Page 14: Clase 03

Pregunta 1

• Ingrese un entero, carácter y un float (en este orden), realizar operaciones matemáticas de acuerdo al carácter, si el carácter es «s» se suma, si es «r» se resta, si no reconoce el carácter se tiene que imprimir. Las operaciones son con el entero y el float.

Page 15: Clase 03

Ejercicio 2

• Que muestre un menú donde las opciones sean “Equilátero”, “Isósceles” y “Escaleno”, pida una opción y calcule el perímetro del triángulo seleccionado.

Page 16: Clase 03

Selección Múltiple

Page 17: Clase 03

Proposición switchswith(expresion){ case 1: sentencia 1; sentencia 2; break; case 2: sentencia 3; break; case 3: sentencia 4; sentencia 5; sentencia 6; break; default: sentencia 7; break; }

Page 18: Clase 03

Proposición switch#include <stdio.h>int main(){ char c ; printf("\n A = ADICIONAR A LA LISTA ") ; printf("\n B = BORRAR DE LA LISTA ") ; printf("\n O = ORDENAR LA LISTA ") ; scanf("%c",&c); switch (c) { case 'A' : printf("\nUD. SELECCIONO A") ; break ; case 'B' : printf("\nUD. SELECCIONO B") ; break ; case 'O' : printf("\nUD. SELECCIONO O") ; break ; default : printf("\nUD. NO SELECCIONO" ) ; break ; } return 0;}

Page 19: Clase 03

#include <stdio.h>int main(){ char c ; printf("\n A = ADICIONAR A LA LISTA ") ; printf("\n B = BORRAR DE LA LISTA ") ; printf("\n O = ORDENAR LA LISTA ") ; scanf("%c",&c); switch (c){ case 'A' : printf("\nUD. SELECCIONO A") ; break ; case 'B' : printf("\nUD. SELECCIONO B") ; break ; case 'O' : printf("\nUD. SELECCIONO O") ; break ; default : printf("\nUD. NO SELECCIONO" ) ; break ; } return 0;}

Switch vs If Else#include <stdio.h>int main(){ char c ; printf("\n A = ADICIONAR A LA LISTA ") ; printf("\n B = BORRAR DE LA LISTA ") ; printf("\n O = ORDENAR LA LISTA ") ; scanf("%c",&c); if( c == 'A'){ printf("\nUD. SELECCIONO A") ; }else{ if( c == 'B'){ printf("\nUD. SELECCIONO B") ; }else{ if( c == 'O' ){ printf("\nUD. SELECCIONO O") ; }else{ printf("\nUD. NO SELECCIONO " ) ; } } } return 0; }

Page 20: Clase 03

Ejercicio 1

• Que pida un número del 1 al 7 y diga el día de la semana correspondiente

Page 21: Clase 03

Ejercicio 2

• Que muestre un menú donde las opciones sean “Equilátero”, “Isósceles” y “Escaleno”, pida una opción y calcule el perímetro del triángulo seleccionado.

Page 22: Clase 03

Ejercicio 3

• Ingresar un numero del 1 al 12, y decir cuantos días tiene el mes seleccionado

Page 23: Clase 03

Ejercicio 3

#include <stdio.h>int main() { int op; printf("Numero de mes (1-12)"); scanf("%d",&op); switch(op) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf("El mes %i tiene 31",op); break;

case 4: case 6: case 9: case 11: printf("El mes %d tiene 31",op); break; case 2: printf("El mes %d tiene 28 o 29. es bisiesto",op); break; defaul: printf("NO EXISTE EL MES %d",op); } return 0;}