Práctica 4 Entrada y salida de datos

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