Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio PROGRAMA EDUCATIVO PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE TRONCO COMUN 2009-2 11214 PROGRAMACION PRÁCTICA No. LABORATORIO DE 4 NOMBRE DE LA PRÁCTICA DURACIÓN (HORAS) Licenciado en Sistemas Computacionales Programas de entrada y salida de datos 2 1. INTRODUCCIÓN Además de los procesos de asignación y la salida de datos, es elemental en los problemas que se plantearan para dar una solución que exista una entrada de datos, en el lenguaje de programación C existen diferentes funciones para la lectura de datos, dependiendo del tipo de dato que se quiera leer, en esta práctica utilizaremos las funciones printf y scanf que se encuentran en la biblioteca stdio.h. También haremos un leve recordatorio de la práctica anterior para retomar la salida de datos. 2. OBJETIVO (COMPETENCIA) Aplicar las principales instrucciones de entada y salida, mediante la elaboración de programas secuénciales básicos, para la solución de problemas reales en el área de ingeniería. Con disposición para trabajar en forma individual y responsabilidad en el uso del equipo cómputo del laboratorio 3. FUNDAMENTO Ya hemos visto en las practicas anteriores como se representan las salidas y entradas de datos, como un recordatorio podremos un ejemplo de un diagrama de flujo y su código en lenguaje C: Formuló Revisó M.C. EVA HERRERA RAMIREZ M.C. ARACELI JUSTO LOPEZ Autorizó DR. DAVID ISAIAS ROSAS ALMEIDA Nombre y Firma del Maestro Nombre y Firma del Responsable de Programa Educativo Nombre y Firma del Director / Representante de la Dirección Código: GC-N4-017 Revisión: 4 Página 1 de 6 Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio INICIO Figura 1 “Matricula” Mat “Calificaciones” c1,c2 En este ejemplo se está pidiendo como dato de entrada la matrícula de un alumno y 2 calificaciones, se está calculando el promedio e imprimiendo el resultado del promedio calculado junto con la matricula. En la práctica anterior se vio la función printf que se utiliza para la salida de datos a pantalla, para lo que es la lectura o entrada de datos utilizaremos la función scanf. Pr= (c1+c2)/2 Mat,Pr Fin La entrada de datos a un programa puede tener diversas fuente, teclado, archivos en disco. La entrada que consideramos ahora es a través del teclado, asociado al archivo estándar de entrada stdin. La función más utilizada, por su versatilidad, para entrada formateada es scanf( ). El archivo de cabecera stdio.h de la biblioteca C proporciona la definición (el prototipo) de scanf( ), así como de otras funciones de entrada o de salida. La forma general que tiene la función scanf( ) scanf(cadena_de_control, var1, var2, var3, . . .) cadena_de_control contiene los tipos de datos y se desea su anchura. var1, var2, . . . variables de tipo de los códigos de control. Los tipos de datos se listaron en la práctica anterior, listamos los más utilizados: Cadena de control %c %s %d o %i %f %lf Descripción Caracteres Cadenas de caracteres Enteros Flotantes Doubles También tenemos el : long %l unsigned %u los cuales los podemos combinar con enteros y doubles Código: GC-N4-017 Revisión: 4 Página 2 de 6 Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio Ejemplos: scanf(“%c”,&caracter); scanf(“%s”,cadena); scanf(“%d”,&entero); scanf(“%f”,&flotante); scanf(“%lf”,&Double); Se pueden leer también varios datos en un solo scanf, pero para mayor claridad en el código se recomienda un dato por scanf. Lectura de carácter Lectura de cadena de caracteres Lectura de entero Lectura de flotante Lectura de doublé scanf(“%d %f”,&a,&b); Ahora vamos a hacer la codificación en lenguaje C del diagrama de flujo que resolvimos en la Figura 1: #include <stdio.h> void main() { char Mat[10]; float c1,c2,Pr; Las variables de tipo cadena es decir char y con dimensión no llevan el & antes de la } printf(“Da la matricula “); variable. scanf(“%s”, Mat); printf(“Da las dos calificaciones “); Se pueden leer 2 o más datos en un mismo scanf, pero es recomendable utilizar un scanf por scanf(“%f,%f”,&c1,&c2); dato para una mayor claridad en el código. Pr=(c1+c2)/2; printf(“La matricula es %s con un promedio de %.2f”,Pr); getchar(); Indica que solo apareceran 2 decimales Funciones matemáticas. La biblioteca math.h es un archivo de cabecera de la biblioteca estándar del lenguaje de programación C está diseñada para operaciones matemáticas básicas. Muchas de sus funciones incluyen el uso de números en coma flotante. Funciones trigonométricas incluidas en math.h sin(double x): devuelve un double con el valor del seno de x cos(double x): devuelve un double con el valor del coseno de x tan(double x): devuelve un double con el valor de la tangente de x asin(double x): devuelve un double con el valor del arco seno de x acos(double x): devuelve un double con el valor del arco coseno de x atan(double x): devuelve un double con el valor del arco tangente de x sinh(double x): devuelve un double con el valor del seno hiperbólico de x Código: GC-N4-017 Revisión: 4 Página 3 de 6 Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio cosh(double x): devuelve un double con el valor del coseno hiperbólico de x tanh(double x): devuelve un double con el valor de la tangente hiperbólica de x Los ángulos de estas funciones están expresados en radianes, no en grados. Otras funciones: sqrt(double x): devuelve un double con el valor de la raíz cuadrada de x exp(double x): devuelve un double con el valor del número e elevado a la potencia x pow(double x, double y): devuelve un double con el valor de x elevado a y abs(int x): devuelve un int con el valor absoluto de x ceil(double x): devuelve un double con el valor de x redondeado al entero próximo mayor floor(double x): devuelve un double con el valor de x redondeado al entero próximo menor Ejemplo de cómo se utilizan las funciones matemáticas: #include <stdio.h> #include <math.h> void main() { double numero, seno, coseno, tangente; printf("Teclea un número"); scanf("%lf",&numero); seno = sin(numero); coseno = cos(numero); tangente = tan(numero); printf("Seno: %.4lf\nCoseno: %.4lf\nTangente: %.4lf\n", seno, coseno, tangente); return 0; } Si queremos el resultado en grados tenemos que multiplicar el número por 180/π. 4. PROCEDIMIENTO (DESCRIPCIÓN) A) EQUIPO NECESARIO Computadora con Visual Studio instalado MATERIAL DE APOYO Práctica B) DESARROLLO DE LA PRÁCTICA Código: GC-N4-017 Revisión: 4 Página 4 de 6 Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio Días Martes y Miércoles 1. Se tiene una habitación de x metros cuadrados de alto por y metros cuadrados de alto y z metros cuadrados de fondo, con una ventada de 1 metro cuadrado y una puerta de 1.80 metros cuadrados, la habitación requiere pintura y el costo del trabajo incluyendo la pintura es de 125 pesos por metro cuadrado. Escriba un programa que pidiendo los datos de entrada necesarios obtenga e imprima cuanto costaría pintar las paredes de la habitación en pesos y en dólares. 2. Un automóvil circula a una velocidad de x km/seg , si quiere recorrer una distancia de D km, escriba el programa que pida la velocidad y la distancia e imprima el tiempo que tardaría en segundos y minutos. Recuerde la formula de la velocidad que es igual a distancia sobre tiempo. 3. Escriba un programa que pida como dato de entrada el numerador y denominador de dos fracciones, realice la suma e imprima el resultado también en fracción. 4. Hacer un programa para obtener la diagonal de un octaedro Formula = √a²+b²+c² Días Jueves y Viernes 1. Elena quiere comprar un automóvil el cual tiene un costo de $x dll, lo pagara en un año y se le cobrara un interés del 12% + el 16% de IVA sobre el costo más el interés. Escriba un programa que pida como dato de entrada el costo del automóvil e imprima lo que pagara en total. 2. Escriba un programa que pida como dato de entrada el numerador y denominador de dos fracciones, realice la multiplicación e imprima el resultado también en fracción. 3. Calcular y mostrar el volumen y el área de una esfera, utilizando las siguientes fórmulas: Area= 4πr² Volumen=4/3 πr³ Código: GC-N4-017 Revisión: 4 Página 5 de 6 Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Formato para Prácticas de Laboratorio 4. Si la Fuerza es igual a masa por aceleración, ¿qué fuerza se necesita aplicar para lanzar un cuerpo con una masa de X kg con aceleración de y km/seg? Escriba un programa que pida los datos de masa y aceleración e imprima la fuerza que se necesita aplicar. C) CÁLCULOS (SI APLICA) Y REPORTE El alumno verificará que el programa esté libre de errores de compilación y ejecución además de validarlo dando diferentes valores a las variables. 5. RESULTADOS Y CONCLUSIONES El maestro revisará el programa comprobando su correcta ejecución y cuestionando la elaboración del código del mismo. 6. ANEXOS No aplica. 7. REFERENCIAS 1. Luis Joyanes Aguilar “Fundamentos de programación: Algoritmos, estructuras de datos y objetos” McGraw-Hill, 4ta edición 2008. 2. Luis Joyanes Aguilar, Ignacio Zahonero Programación en C: metodología, algoritmos y estructura de datos. McGraw-Hill Interamericana de España. 2006. Código: GC-N4-017 Revisión: 4 Página 6 de 6
© Copyright 2024