Práctica 10

38
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA COMPUTACIÓN PARA INGENIEROS Integrantes del equipo 02: Fecha: 01/09/11 Generación 2012-1 Aburto Tovar Sandra Lorena 309062998 Azuara Domínguez Jorge Luis 309087968 Montiel Benítez Raúl 309107507 Temelo Avilés Raquel 309161022 PRÁCTICA NÚM. 10: Iniciación a la programación en C Resumen: Después de investigar de manera detallada todos los elementos que debemos tomar en cuenta a la hora de realizar un programa en lenguaje C; tratamos de ponerlos en práctica en cada uno de los ejercicios propuestos, que sin duda nos ayudaron a tener una idea más clara de lo que nunca debe faltar en su estructura. Introducción: El nacimiento de C está estrechamente vinculado al del sistema operativo Unix. El investigador Ken Thompson, de AT&T, la compañía telefónica estadounidense, se propuso diseñar un nuevo sistema operativo a principios de los setenta. Disponía de un PDP-7 en el que codificó una primera versión de Unix en lenguaje ensamblador. Pronto se impuso la conveniencia de desarrollar el sistema en un lenguaje de programación de alto nivel, pero la escasa memoria del PDP-7 (8K de 18 bits)

Transcript of Práctica 10

Page 1: Práctica 10

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO

FACULTAD DE INGENIERÍA

INGENIERÍA MECATRÓNICA

COMPUTACIÓN PARA INGENIEROS

Integrantes del equipo 02: Fecha: 01/09/11 Generación 2012-1

Aburto Tovar Sandra Lorena 309062998

Azuara Domínguez Jorge Luis 309087968

Montiel Benítez Raúl 309107507

Temelo Avilés Raquel 309161022

PRÁCTICA NÚM. 10: Iniciación a la programación en C

Resumen: Después de investigar de manera detallada todos los elementos que debemos tomar en cuenta a la hora de realizar

un programa en lenguaje C; tratamos de ponerlos en práctica en cada uno de los ejercicios propuestos, que sin duda nos

ayudaron a tener una idea más clara de lo que nunca debe faltar en su estructura.

Introducción:

El nacimiento de C está estrechamente vinculado al del sistema operativo Unix. El investigador Ken Thompson, de

AT&T, la compañía telefónica estadounidense, se propuso diseñar un nuevo sistema operativo a principios de los

setenta. Disponía de un

PDP-7 en el que codificó una primera versión de Unix en lenguaje ensamblador. Pronto se impuso la conveniencia de

desarrollar el sistema en un lenguaje de programación de alto nivel, pero la escasa memoria del PDP-7 (8K de 18 bits)

Page 2: Práctica 10

hizo que ideara el lenguaje de programación B, una versión reducida de un lenguaje ya existente: BCPL. El lenguaje C

apareció como un B mejorado, fruto de las demandas impuestas por el desarrollo de Unix. Dennis Ritchie fue el

encargado del diseño del lenguaje C y de la implementación de un compilador sobre un PDP-11.

C ha sufrido numerosos cambios a lo largo de su historia. La primera versión ((estable)) del lenguaje data de 1978 y

se conoce como (K&R C), es decir, (C de Kernighan y Ritchie). Esta versión fue descrita por sus autores en la primera

edición del libro (The C Programming Language). La adopción de Unix como sistema operativo de referencia en las

universidades en los años 80 popularizó enormemente el lenguaje de programación C. No obstante, C era atractivo

por sí mismo y parecía satisfacer una demanda real de los programadores: disponer de un lenguaje de alto nivel con

ciertas características propias de los lenguajes de bajo nivel (de ahí que a veces se diga que C es un lenguaje de

nivel intermedio).

La experiencia con lenguajes de programación diseñados con anterioridad, como Lisp o Pascal, demuestra que cuando

el uso de un lenguaje se extiende es muy probable que proliferen variedades dialectales y extensiones para

aplicaciones muy concretas, lo que dificulta enormemente el intercambio de programas entre diferentes grupos de

programadores. Para evitar este problema se suele recurrir a la creación de un comité de expertos que define la

versión oficial del lenguaje. El comité ANSI X3J9 (ANSI son las siglas del American National Standards Institute),

creado en 1983, considera la inclusión de aquellas extensiones y mejoras que juzga de suficiente interés para la

comunidad de programadores.

Page 3: Práctica 10

1.- Realizar un programa que imprima en pantalla “el nombre del curso”, “el día de hoy” y “tu nombre”. #include <stdio.h> #include <conio.h> main() { printf ("\t"); printf("Computacion para ingenieros \n \t \t"); printf("1 de Noviembre del 2011 \n \t \t \t"); printf("Sandra Lorena \n \t "); getch(); return 0; }

2.- Escribir un programa que lea la temperatura en grados Celsius y la escriba en grados Farenheit. Hacer uso de la

formula f=32 + (9/5) c. /*Conversión de grados Celsius a Farenheit*/ #include <stdio.h> #include <conio.h> #include <math.h> main() { float c,f; printf("Dame un valor\n"); scanf("%f",&c); f=32+1.8*c; printf("El valor de f es %f",f); getch(); return 0; }

Page 4: Práctica 10

3.- Determinar el valor de la siguiente expresión aritmética: r=(a + b) (c + d). El alumno deberá proporcionar los

valores de las variables. #include <stdio.h> #include <conio.h> main() { int a,b,c,d,r,x,; printf("Dame el valor de a \n"); scanf("%d",&a); printf("Dame el valor de b \n"); scanf("%d",&b); x=a+b; printf("El valor de x es %d \n",x); printf("Dame el valor de c \n"); scanf("%d",&c);

printf("Dame el valor de d \n"); scanf("%d",&d); r=x*(c+d); printf("El valor de r es %d \n",r); getch(); return 0; }

Page 5: Práctica 10

4.- Un sistema de ecuaciones lineales ax+by=c, dx+ey=f se puede resolver con las siguientes formulas:

X=ce-bf/ae-bd Y=af-cd/ae-bd

Escribir un programa que lea dos conjuntos de coeficientes (a,b y c; d,e y f) y calcule los valores de x, y #include <stdio.h> #include <conio.h> #include <math.h> main() { float a,b,c,d,e,f,x,y; printf("Dame los valores de a,b y c : \n"); scanf("%f%f%f",&a,&b,&c); printf("Dame los valores de d,e y f : \n"); scanf("%f%f%f",&d,&e,&f); x=(c*e-b*f)/(a*e-b*d); y=(a*f-c*d)/(a*e-b*d); printf("El valor de x es %f \n",x); printf("El valor de y es %f",y); getch(); return 0; }

Page 6: Práctica 10

5.-Escribir un programa que lea la masa de dos cuerpos y distancia entre ellos y a continuación obtenga la fuerza

gravitacional. (Tomar en cuenta que

F= G*m1*m2/d2 y G=6.673x10-11 Nm2/kg2). #include <stdio.h> #include <conio.h> #include <math.h> #define G 6.673 main() { float masa1,masa2,distancia,F; printf("Dame la masa1: "); scanf("%f",&masa1); printf("Dame la masa2: "); scanf("%f",&masa2); printf("Dame la distancia entre ambos: ");

scanf("%f",&distancia); F=G*masa1*masa2/pow(distancia,2); printf("El valor de F es %f",F); getch(); return 0; }

Page 7: Práctica 10

6.- Escribir un programa que lea el radio de un círculo y a continuación visualice: área del círculo. #include <stdio.h> #include <conio.h> #include <math.h> #define pi 3.14159 main() { float A,radio; printf("Dame el valor del radio \n"); scanf("%f",&radio); A=pi*pow(radio,2); printf("Elvalor de A es %f",A); getch(); return 0; }

Page 8: Práctica 10

#include<stdio.h> #include<conio.h> #define P printf #define S scanf main () { int n1,n2,n3,n4,MENOR; P("INGRESE CUATRO NUMEROS: \n"); S("%d",&n1); S("%d",&n2); S("%d",&n3); S("%d",&n4); if (n1<=n2 && n1<=n3 && n1<=n4) { P("EL NUMERO MENOR ES: %d",n1); } else { if (n2<=n1 && n2<=n3 && n2<=n4) { P("EL NUMERO MENOR ES: %d",n2); } else { if (n3<=n1 && n3<=n2 && n3<=n4) { P("EL NUMERO MENOR ES: %d",n3); } else { if (n4<=n1 && n4<=n2 && n4<=n3) { P("EL NUMERO MENOR ES: %d",n4); } } } getch(); } }

7.- Escriba un programa que lea cuatro números enteros y

determine cuál es el menor. También debe considerar el

caso en que los números sean iguales. 8.- Escriba un programa que lea cinco números

cualesquiera y emita un mensaje indicando si están o no

ordenados en orden creciente.

Page 9: Práctica 10

#include<stdio.h> #include<conio.h> #define P printf #define S scanf main () { int n1,n2,n3,n4,n5; P("INGRESE CINCO NUMEROS: \n"); S("%d",&n1); S("%d",&n2); S("%d",&n3); S("%d",&n4); S("%d",&n5); if (n1<n2 && n2<n3 && n3<n4 && n4<n5) { P("ESTAN EN ORDEN CRECIENTE"); } else { P("NO ESTAN EN ORDEN CRECIENTE"); } getch(); }

8.- Escriba un programa que lea cinco números

cualesquiera y emita un mensaje indicando si están o no

ordenados en orden creciente.

Page 10: Práctica 10

#include<stdio.h>

#include<conio.h> #define P printf #define S scanf main () { int n1,n2,n3; P("INGRESE TRES NUMEROS: \n"); S("%d",&n1); S("%d",&n2); S("%d",&n3); if (n1==n2 && n1==n3) { P("LOS NUMEROS SON IGUALES"); } else { P("LOS NUMEROS NO SON IGUALES"); } getch(); }

9.- Escriba un programa que permita introducir por

teclado 3 números enteros y responda si los números son

iguales.

Page 11: Práctica 10

#include<stdio.h> #include<conio.h> #define P printf #define S scanf main () { char a,b,c; P("INGRESE TRES LETRAS:\n"); S("%c\n",&a); S("%c\n",&b); S("%c",&c); if (a==b && a==c) { P("LAS LETRAS SON IGUALES"); } else { if (a==b) { P("LAS LETRAS %c Y %c SON IGUALES",a,b); } else { if (b==c) { P("LAS LETRAS %c Y %c SON IGUALES",b,c); } else { if (a==c) { P("LAS LETRAS %c Y %c SON IGUALES",a,c); } else { P("LAS LETRAS NO SON IGUALES"); } } } } getch(); }

10.- Escriba un programa que permita introducir por

teclado tres letras y responda si existen al menos dos

letras iguales.

Page 12: Práctica 10

#include<stdio.h> #include<conio.h> #define P printf #define S scanf main () { int T,H,O; P("SELECCIONE TEMPERATURA O HUMEDAD: \n"); P("1.TEMPERATURA \n2.HUMEDAD \n"); S("%d",&O); switch (O) { case 1:P("ESCRIBA UNA TEMPERATURA \n"); S("%d",&T); switch (T) { case 25:P("PANTALON LARGO Y CAMISA"); break; case 10:P("PANTALON DE PANA Y CHALECO"); break; case 2:P("PANTALON, CHALECO Y ABRIGO"); break; case 30:P("PANTALON CORTO Y CAMISETA"); break; default:P("NO EXISTE LA OPCION"); } break; case 2:P("ESCRIBA UNA HUMEDAD \n"); S("%d",&H); switch(H) { case 90:P("PANTALON LARGO Y CAMISA"); break; case 50:P("PANTALON DE PANA Y CHALECO"); break; case 45:P("PANTALON, CHALECO Y ABRIGO"); break; case 85:P("PANTALON CORTO Y CAMISETA"); break; default:P("NO EXISTE LA OPCION"); } break; default:P("NO EXISTE LA OPCION"); } getch(); }

Page 13: Práctica 10

#include<stdio.h> #include<conio.h> #define P printf #define S scanf main () { int T,H,O; P("SELECCIONE TEMPERATURA O HUMEDAD: \n"); P("1.TEMPERATURA \n2.HUMEDAD \n"); S("%d",&O);

if (O==1) { P("ESCRIBA UNA TEMPERATURA \n"); S("%d",&T); if (T==25) { P("PANTALON LARGO Y CAMISA"); } else { if (T==10) { P("PANTALON DE PANA Y CHALECO"); } else { if (T==2) { P("PANTALON, CHALECO Y ABRIGO"); } else { if (T==30) { P("PANTALON CORTO Y CAMISETA"); } } } } }

else { if (O==2) { P("ESCRIBA UNA HUMEDAD \n"); S("%d",&T); if (T==90) { P("PANTALON LARGO Y CAMISA"); } else { if (T==50) { P("PANTALON DE PANA Y CHALECO"); } else { if (T==45) { P("PANTALON, CHALECO Y ABRIGO"); } else { if (T==85) { P("PANTALON CORTO Y CAMISETA"); } } } } } } getch(); return 0; }

12.- Repetir el ejercicio anterior utilizando

la sentencia de control if-else.

Page 14: Práctica 10

13. Realizar un programa en el que el usuario introduce un número entero y el programa responde si el número es par o impar /* Decir si un número Par e Impar */ #include <conio.h> #include <stdio.h> void main(void) { int b; clrscr(); printf("Dame un numero entero:"); scanf("%d",&b); if((b%2)==0) { printf("El numero %d es par",b); } else { printf("El numero %d es impar",b); } getch(); }

Page 15: Práctica 10

14. Realizar un programa que pida dos números y muestre en pantalla un menú con las cuatro operaciones básicas. El usuario debe elegir una opción y el programa mostrar el resultado de la operación realizada. /* Realizar un programa que muestre un menú con las cuatro operaciones básicas */ #include <conio.h> #include <stdio.h> void main(void) { int opc; float a,b,r; opc=0; while (opc!=5) { clrscr(); printf("1.-Suma\n2.-Resta\n3.-Multiplicación\n4.-Division\n5.-Salir"); printf("\nOpcion:"); scanf("%d",&opc); clrscr(); if(opc>=1 && opc<=4) { printf("Dame el valor de a:"); scanf("%f",&a); printf("Dame el valor de b:"); scanf("%f",&b); } clrscr(); switch(opc) { case 1:r=a+b; printf("Suma %3.3f + %3.3f = %3.3f",a,b,r); getch(); break;

Page 16: Práctica 10

case 2:r=a-b; printf("Resta %3.3f - %3.3f = %3.3f",a,b,r); getch(); break; case 3:r=a*b; printf("Multiplicación %3.3f * %3.3f = %3.3f",a,b,r); getch(); break; case 4:if(b!=0) { r=a/b; printf("Division %3.3f / %3.3f = %3.3f",a,b,r); } else { printf("La division %3.3f / %3.3f no está definida",a,b); } getch(); break; } }

Page 17: Práctica 10

break; } } }

15. Mejorar el programa anterior para los casos en los que el usuario elige una opción distinta de las cuatro posibles. /* Realizar un programa que muestre un menú con las cuatro operaciones básicas */ #include <conio.h> #include <stdio.h> void main(void) { int opc; float a,b,r; opc=0; while (opc!=5) { clrscr(); printf("1.-Suma\n2.-Resta\n3.-Multiplicación\n4.-Division\n5.-Salir"); printf("\nOpcion:"); scanf("%d",&opc); clrscr(); if(opc>=1 && opc<=4) { printf("Dame el valor de a:"); scanf("%f",&a); printf("Dame el valor de b:"); scanf("%f",&b); } else { if(opc!=5) printf("Opcion %d no valida",opc); getch(); } clrscr(); switch(opc) {

Page 18: Práctica 10

case 1:r=a+b; printf("Suma %3.3f + %3.3f = %3.3f",a,b,r); getch(); break; case 2:r=a-b; printf("Resta %3.3f - %3.3f = %3.3f",a,b,r); getch(); break; case 3:r=a*b; printf("Multiplicación %3.3f * %3.3f = %3.3f",a,b,r); getch(); break; case 4:if(b!=0) { r=a/b; printf("Division %3.3f / %3.3f = %3.3f",a,b,r); } else { printf("La división %3.3f / %3.3f no está definida",a,b); } getch();

Page 19: Práctica 10

16. Plantear un programa que sirva para calcular el cateto de un triángulo rectángulo a partir del otro cateto y la hipotenusa. /* Realizar un programa para calcular el cateto de un triangulo */ #include <conio.h> #include <stdio.h> #include <math.h> void main(void) { float a,b,c; clrscr(); printf("Dame el valor de la hipotenusa:"); scanf("%f",&c); printf("Dame el valor de un cateto:"); scanf("%f",&a); if(a>c) { printf("El cateto no puede ser mayor a la hipotenusa"); } else { b=sqrt((c*c)-(a*a)); printf("El valor del otro cateto es %5.3f",b); } getch(); }

Page 20: Práctica 10

17. Realizar un programa que muestre un menú para calcular el área de un triángulo o un rectángulo o un círculo, a través de un menú de opciones. /* Realizar un programa que calcule el área de un triangulo, un rectángulo y un circulo */ #include <conio.h> #include <stdio.h> void main(void) { int opc; float a,b,c; opc=0; while (opc!=4) { clrscr(); printf("1.-Area Triangulo\n2.-Area Rectangulo\n3.-Area Circulo\n4.-Salir"); printf("\nOpcion:"); scanf("%d",&opc); clrscr(); switch(opc) { case 1:printf("Dame la longitud de la base:"); scanf("%f",&a); printf("Dame la longitud de la altura:"); scanf("%f",&b); c=(a*b)/2; printf("El area del triangulo es %5.3f",c); getch(); break; case 2:printf("Dame la longitud de la base:"); scanf("%f",&a);

Page 21: Práctica 10

printf("Dame la longitud de la altura:"); scanf("%f",&b); c=a*b; printf("El area del rectangulo es %5.3f",c); getch(); break; case 3:printf("Dame la longitud del radio:"); scanf("%f",&a); c=a*a*(3.14159); printf("El area del circulo es %5.3f",c); getch(); break; } } }

Page 22: Práctica 10

18. Mejorar el programa anterior para los casos en los que el usuario elija una opción diferente de las 3posibles. /* Realizar un programa que calcule el área de un triangulo, un rectángulo y un circulo */ #include <conio.h> #include <stdio.h> void main(void) { int opc; float a,b,c; opc=0; while (opc!=4) { clrscr(); printf("1.-Area Triangulo\n2.-Area Rectangulo\n3.-Area Circulo\n4.-Salir"); printf("\nOpcion:"); scanf("%d",&opc); if(opc>=1 && opc<=3) { clrscr(); switch(opc) { case 1:printf("Dame la longitud de la base:"); scanf("%f",&a); printf("Dame la longitud de la altura:"); scanf("%f",&b); c=(a*b)/2; printf("El area del triangulo es %5.3f",c); getch(); break; case 2:printf("Dame la longitud de la base:");

Page 23: Práctica 10

scanf("%f",&a); printf("Dame la longitud de la altura:"); scanf("%f",&b); c=a*b; printf("El area del rectangulo es %5.3f",c); getch(); break; case 3:printf("Dame la longitud del radio:"); scanf("%f",&a); c=a*a*(3.14159); printf("El area del circulo es %5.3f",c); getch(); break; } } else { clrscr(); if(opc!=4) printf("La opcion %d no es valida",opc); getch();

} } }

Page 24: Práctica 10

19. En un supermercado se va poner en marcha la “promoción Bolitas”, la cual consiste en que al llegar a la caja el

cliente y proceda a efectuar el pago correspondiente a sus compras, se le invita a sacar una bolita, al azar de una

caja virtual y dependiendo del color de la bolita obtendrá un descuento aplicable al total de su cuenta.

Color Descuento

Negro 10%

Verde 25%

Amarillo 50%

Azul 75%

Rojo 100%

Realizar el programa con las siguientes características:

El cliente debe sacar una bolita de la caja (totalmente al azar).

El sistema debe mostrarle al cliente la bolita e indicarle el porcentaje del descuento obtenido.

El sistema le solicita a la cajera teclear el importe de la cuenta total del cliente.

El sistema debe aplicar el descuento correspondiente a la cuenta del cliente e indicar cuál es la cantidad a

pagar.

/* Fecha: 01/11/2011 Objetivo: Hacer un programa que elija una bolita de cierto color al azar, esta equivaldrá a un descuento de cierto porcentaje en la cuenta total de la compra en supermercado. */

Page 25: Práctica 10

#include <conio.h> #include <stdio.h> #include <stdlib.h> void main(void) { int color; float real, des; clrscr(); printf ("\nIngresa la cantidad total a pagar"); scanf ("%f",&real); printf ("\n\nEntra al sorteo para obtener un descuento \nBola amarilla= 50 por ciento de descuento \nBola azul= 75 por ciento de descuento \nBola roja= 100 por ciento de descuento"); printf ("\nBola negra= 10 por ciento de descuento \nBola verde= 25 de descuento"); printf ("\n\nPresiona cualquier tecla para sacar una bola"); getch(); color=random(4); switch (color) { case 0: des= ( real* 0.90); printf ("\nLa bolita que sacaste es negra y tu descuento es del 10%"); printf ("\nTu cuenta original es:%f",real); printf ("\nLa cantidad a pagar con el descuento%f", des); getch(); break; case 1: des= (real* 0.75); printf ("\nLa bolita que sacaste es verde y tu descuento es del 25%"); printf ("\nTu cuenta original es:%f",real); printf ("\nLa cantidad a pagar con el descuento%f", des); getch();

Page 26: Práctica 10

break; case 2: des= (real* 0.50); printf ("\nLa bolita que sacaste es amarillo y tu descuento es del 50%"); printf ("\nTu cuenta original es:%f",real); printf ("\nLa cantidad a pagar con el descuento%f", des); getch(); break; case 3: des= (real* 0.25); printf ("\nLa bolita que sacaste es azul y tu descuento es del 75%"); printf ("\nTu cuenta original es:%f",real); printf ("\nLa cantidad a pagar con el descuento%f", des); getch(); break; case 4: des= (real* 0.0); printf ("\nLa bolita que sacaste es roja y tu descuento es del 100%"); printf ("\nTu cuenta original es:%f",real); printf ("\nLa cantidad a pagar con el descuento%f", des); getch(); break; }

}

Page 27: Práctica 10

20. Escribir un programa que permita jugar a doble o nada, en donde el jugador apuesta una cantidad y tira una

moneda. Si sale cara obtiene el doble de la cantidad apostada. Si sale cruz la pierde toda. /*Fecha: 01/11/2011 Objetivo: Escribir un programa que permita jugar a doble o nada */ #include <conio.h> #include <stdio.h> #include <stdlib.h> void main(void) { float a; int moneda; clrscr(); printf ("Doble o nada"); printf ("\nSi sale cara gana el doble de la cantidad apostado"); printf ("\nSi sale cruz pierdes todo"); printf ("\nPara jugar oprime cualquier tecla"); getch (); printf ("\nIngresa una cantidad para jugar a doble o nada"); scanf ("%f",&a); printf ("\n Vuelve a oprimir una tecla para lanzar una moneda"); getch (); moneda= random(1); switch (moneda) { case 0: printf ("\nLa cantidad apostada es %f ", a);

Page 28: Práctica 10

printf ("\nLa moneda cayó en cara, Ganas el doble %f", 2*a); getch(); break; case 1: printf ("\nLa cantidad apostada es %f ", a); printf ("\nLa moneda cayó en cruz, pierdes todo"); getch(); break; } }

21. Escribir un programa que pida un numero entero y determine si es múltiplo de 2 y 5. /* Fecha:01/11/2011 Objetivo: Dado un numero, determinar si es divisible entre 2 y 5 */ #include <conio.h> #include <stdio.h> #include <math.h> void main (void) { int a,b,x; clrscr(); printf ("Programa que verifica si un numero ingresado es divisible entre 2 y 5"); printf("\nDame un n£mero: "); scanf("%d",&x); a = ( x % 2 ) ; b = ( x % 5 ) ;

Page 29: Práctica 10

if (a==0 || b==0) { if (a==0 ) { printf ("\nEs multiplo de 2"); getch(); } if (b==0) { printf ("\nEs multiplo de 5"); getch(); } } else { printf ("\nNO es multiplo ni de 2 ni de 5"); getch(); } }

Page 30: Práctica 10

22. Escribir un programa que, dado el nombre o número del mes, y la información de si el año es bisiesto, se muestre

en la pantalla el número de días del mes. /*Fecha: 01/11/2011 Objetivo: Escribir un programa que dado el numero de un mes, y la informacion de si el a;o es bisiesto, determine el numero de dias que tiene el mes. */ #include <conio.h> #include <stdio.h> void main(void) { int opc,x; opc=0; while (opc!=13) { clrscr(); printf ("Determinar el numero de dias de un mes dado"); printf ("\nTeclea 1 si el a;o es bisiesto, si no es bisiesto teclea 0, luego teclea enter \n"); scanf ("%d",&x); clrscr(); printf("\n1.-Enero \n2.-Febrero \n3.-Marzo \n4.-Abril \n5.-Junio \n7.-Julio \n8.-Agosto \n9.-Septiempre \n10.-Octubre \n11.-Noviemdre \n12.-Diciembre \n13.-Salir"); printf("\nElige una opcion y luego da enter"); printf("\nOpcion:"); scanf("%d",&opc); clrscr();

Page 31: Práctica 10

switch(opc) { case 1: printf ("Enero"); printf ("\nEl mes tiene 31 dias"); getch(); break; case 2: printf ("Febrero"); if (x==1) { printf ("\nEl mes tiene 29 dias"); getch(); } else { printf ("\nEl mes tiene 28 dias"); getch(); } break; case 3: printf ("Marzo"); printf ("\nEl mes tiene 31 dias"); getch(); break; case 4: printf ("Abril"); printf ("\nEl mes tiene 30 dias");

Page 32: Práctica 10

getch(); break; case 5: printf ("Mayo"); printf ("\El mes tiene 31 dias"); getch(); break; case 6: printf ("Junio"); printf ("\nEl mes tiene 30 dias"); getch(); break; case 7: printf ("Julio"); printf ("\nEl mes tiene 31 dias"); getch(); break; case 8: printf ("Agosto"); printf ("\nEl mes tiene 31 dias"); getch(); break; case 9: printf ("Septiembre"); printf ("\nEl mes tiene 30 dias"); getch(); break; case 10: printf ("Octubre"); printf ("\nEl mes tiene 31 dias"); getch(); break;

Page 33: Práctica 10

case 11: printf ("Noviembre"); printf ("\nEl mes tiene 30 dias"); getch(); break; case 12: printf ("Diciembre"); printf ("\nEl mes tiene 31 dias"); getch(); break; } } }

23. Diseñar un programa que permita realizar diferentes tipos de conversiones de monedas. El usuario debe

seleccionar desde el menú principal.

Por ejemplo:

1. Dólares a pesos

2. Pesos a dólares

3. Pesos a euros

4. Euros a pesos

5. Dólares a euros

6. Euros a dólares

Page 34: Práctica 10

/*Fecha:01/11/2011 Objetivo: Dise;ar un programa que permita realizar diferentes tipos de conversiones de monedas. El usuario dene seleccionar desde el menu principal. */ #include <conio.h> #include <stdio.h> #include <stdlib.h> void main(void) { int opc; float dolar, peso, euro; opc=0; while (opc!=7) { clrscr(); printf ("Conversion de monedas"); printf("\n1.-Dolares a pesos \n2.-Pesos a dolares\n3.-Pesos a euros\n4.-Euros a pesos \n5.-Dolares a euros \n6.-Euros a dolares \n7.-Salir"); printf("\nElige una opcion y luego da enter"); printf("\nOpcion:"); scanf("%d",&opc); clrscr(); switch(opc) { case 1: printf ("Dolares a pesos"); printf ("\nIngresa la cantidad en dolares"); scanf ("%f",&dolar);

Page 35: Práctica 10

peso= (dolar*12.76); printf ("Pesos = %f",peso); getch(); break; case 2: printf ("Pesos a dolares"); printf ("\nIngresa la cantidad en pesos"); scanf ("%f",&peso); dolar = (peso/12.76); printf ("Dolares= %f",dolar); getch(); break; case 3: printf ("Pesos a euros"); printf ("\nIngresa la cantidad en pesos"); scanf ("%f",&peso); euro = (peso/18.41); printf ("Euros= %f",euro); getch(); break; case 4: printf ("Euros a pesos"); printf ("\nIngresa la cantidad en euros"); scanf ("%f",&euro); peso = (euro*18.41); printf ("Pesos= %f",peso); getch(); break; case 5: printf ("Dolares a euros"); printf ("\nIngresa la cantidad en dolares"); scanf ("%f",&dolar);

Page 36: Práctica 10

euro = (dolar* 0.71751453); printf ("Dolares= %f",euro); getch(); break; case 6: printf ("Euros a dolares"); printf ("\nIngresa la cantidad en euros"); scanf ("%f",&euro); dolar = (euro/0.71751453); printf ("Dolares= %f",dolar); getch(); break; } } }

Page 37: Práctica 10

24. Realizar un programa donde el usuario introduzca un número y se compare con el que genere el sistema al azar,

debe indicarse si ambos números son iguales o no. /*Fecha:01/11/2011 Objetivo: Realizar un programa donde el usuario introduzca un numero y se compare con uno que se genere al azar. Debe indicarse si ambos numeros son iguales */ #include <conio.h> #include <stdio.h> #include <stdlib.h> void main(void) { int numero, a; clrscr(); printf ("Comparar un nuemero dado con un numero generado al azar"); printf ("\nIngresa un numero entero y luego teclea enter\n"); scanf ("%d",&a); printf ("\n Oprime una tecla para generar un numero al azar"); getch (); numero= random(100); printf ("\nEl numero al azar es %d", numero); if (numero==a) { printf ("\nLos dos numeros son iguales"); getch(); } else { printf ("\nLos dos numeros son diferentes"); getch(); } }

Page 38: Práctica 10

Conclusiones:

Mediante esta práctica pudimos concluir que las estructuras tanto de repetición como de decisión son muy

importantes para la resolución de problemas sencillos, también reafirmamos los conocimientos acerca de un

programa básico en lenguaje c.

Utilizamos en varias ocasiones las sentencias if-else, así como switch- case, están son sentencias de decisión

solamente, la diferencia entre una y otra es que la primera es para una sola decisión que puede tener o no un caso

contrario y la segunda se utiliza cuando tenemos más de una decisión para elegir.

Esta practica también nos llevo a complementar nuestros conocimientos que teníamos del lenguaje c, con

conocimientos nuevos de algunas funciones, operadores lógicos, operadores aritméticos, pero sobretodo aprendimos

a aplicar las sentencias de repetición a un problema muy práctico y cotidiano.