Vous êtes sur la page 1sur 8

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA


Curso 301304 INTRODUCCIN A LA PROGRAMACIN

HOJA DE RUTA
Curso: 301304 - Introduccin a la Programacin

PRACTICA 2

NOMBRE DE LA PRCTICA: FUNCIONES DISEADAS POR EL PROGRAMADOR EN


LENGUAJE C++
ENTORNO DONDE SE DESARROLLA LA PRCTICA: Entorno de Aprendizaje Prctico
OBJETIVO: Aplicar parmetros, valores de retorno y llamado en funciones diseadas por el
programador, para optimizar los programas en lenguaje C++
TIPO DE ACTIVIDAD: Individual
DURACIN: 2 semanas
FECHA DE INICIO:

La establecida en la agenda del curso

FECHA DE FINALIZACIN: La establecida en la agenda del curso

DESCRIPCIN DE ACTIVIDADES:
1. Revise la documentacin correspondiente a la Unidad 2 Funciones (entorno de
conocimiento) y exprese en el foro de Prctica 2 sus impresiones sobre el material, sus
inquietudes y dudas.
2. Analice los siguientes ejercicios:
Ejercicio 1:
Problema: Se realizar una encuesta para calcular el promedio de edad y estatura por
gnero, en un grupo de N personas.
Anlisis:
Datos de entrada: edad de cada persona (edad), gnero de cada persona (genero),
estatura en centmetros (estatura).
Datos de proceso: se debe acumular las edades y las estaturas por gnero:
totalEdadMasculino = totalEdadMasculino + edad
totalEdadFemenino = totalEdadFemenino + edad
totalEstaturaMasculino = totalEstaturaMasculino + estatura
totalEstaturaFemenino = totalEstaturaFemenino + estatura
Para calcular el Promedio por gnero es necesario conocer el nmero de personas
por gnero que participan en la encuesta.
cantidadPersonasMasculino = cantidadPersonasMasculino + 1
cantidadPersonasFemenino = cantidadPersonasFemenino + 1

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

promedioEdadMasculino = totalEdadMasculino / cantidadPersonasMasculino


promedioEdadFemenino = totalEdadFemenino / cantidadPersonasFemenino
promedioEstaturaMasculino = totalEstaturaMasculino / cantidadPersonasMasculino
promedioEstaturaFemenino = totalEstaturaFemenino / cantidadPersonasFemenino
Procesos necesarios:
Almacenar en 3 variables (edad, genero y estatura) los datos correspondientes,
verificando que los valores almacenados sean correctos.
Aplicar las frmulas para calcular totalEdadMasculino, totalEdadFemenino,
totalEstaturaMasculino, totalEstaturaFemenino, cantidadPersonasMasculino,
cantidadPersonasFemenino, promedioEdadMasculino, promedioEdadFemenino,
promedioEstaturaMasculino, promedioEstaturaFemenino.
Imprimir
promedioEdadMasculino,
promedioEdadFemenino,
promedioEstaturaMasculino, promedioEstaturaFemenino.
Diseo de solucin: se puede realizar mediante diagrama de flujo pseudocdigo (para
el caso se realizar en pseudocdigo)
Pseudocdigo
Programa: Estadsticas por genero
INICIO
INICIALIZAR cantidadPersonasMasculino=0, cantidadPersonasFemenino=0;
INICIALIZAR
totalEdadMasculino=0,
totalEdadFemenino=0,
totalEstaturaMasculino=0,
INICIALIZAR totalEstaturaFemenino=0, rta='s'
HACER
LEER edad
LLAMAR FUNCION validarEdad
LEER estatura
LLAMAR FUNCION validarEstatura
LEER genero
LLAMAR FUNCION validarGenero
SI (genero=M) ENTONCES totalEdadMasculino=totalEdadMasculino+edad;
totalEstaturaMasculino=totalEstaturaMasculino+estatura;
cantidadPersonasMasculino=cantidadPersonasMasculino+1;
SI NO totalEdadFemenino=totalEdadFemenino+edad;
totalEstaturaFemenino=totalEstaturaFemenino+estatura,
cantidadPersonasFemenino=cantidadPersonasFemenino+1;
ESCRIBIR Ingresar mas datos?
LEER rta
MIENTRAS (rta='S' o rta='s')
CALCULAR
promedioEdadMasculino=totalEdadMasculino/cantidadPersonasMasculino
CALCULAR
promedioEdadFemenino=totalEdadFemenino/cantidadPersonasFemenino
CALCULAR
promedioEstaturaMasculino=totalEstaturaMasculino/cantidadPersonasMasculino

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

CALCULAR
promedioEstaturaFemenino=totalEstaturaFemenino/cantidadPersonasFemenino
LLAMAR FUNCION imprimirDatos
FIN

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

Prueba de escritorio

rta
Ejecuci
n

Iteracci
n ciclo
de rta

1
1
2
3
4

s
s
S
S
n

edad

estatu
ra

gener
o

20
30
18
28

150
200
175
182

f
m
F
m

totalE
dadM
asculi
no

totalE
dadFe
menin
o

totalEst
aturaM
asculin
o

0
20

30

0
150

200
38

58

cantida
totalEstat dPerso
uraFeme nasMas
nino
culino
0

prome
dioEd
adMa
sculin
o

prome
dioEst
atura
Mascu
lino

promed
ioEdad
Femeni
nio

prom
edioE
statur
aFem
enino

29

191

19

162

Pant
alla

0
1

1
325

382

cantida
dPerso
nasFe
menino

2
2

29
19
191
162

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

Codificacin en lenguaje C++ (IDE FALCON)


//Autor: Mirian Benavides R.
#include<iostream> //Biblioteca estndar de entrada y salida, para utilizar cout y cin
#include<stdlib.h> /*Biblioteca para utilizar system("cls") limpieza de pantalla y
system("pause")
que detiene la ejecucin del programa hasta que el usuario digite una tecla */
#include<ctype.h> //Biblioteca para utilizar la funciones toupper (convierte
//un caracter a maysculas) y tolower (convierte un caracter
//a minsculas.
using namespace std; /*Indica al compilador que utilizar el espacio de nombres estandar
para no
incluirlos cada vez que se utilice cout y cin */
int validarEdad(int edad) //Funcin para validar edad
{
while(edad<0 or edad>100)
{
cout<<endl<<endl<<"La edad digitada no es valida ";
cout<<endl<<"Digite edad : ";
cin>>edad;
}
return edad;
}
int validarEstatura(int estatura) //Funcin para validar estatura
{
while(estatura<70 or estatura>220)
{
cout<<endl<<endl<<"La estatura digitada no es valida ";
cout<<endl<<"Digite estatura en cms : ";
cin>>estatura;
}
return estatura;
}
char validarGenero(char genero) //Funcin para validar genero
{
genero=toupper(genero); //Convierte un caracter a mayscula
while(genero!='M' and genero!='F')
{
cout<<endl<<endl<<"El genero digitado no es valido ";
cout<<endl<<"Digite genero (m/f) : ";
cin>>genero;
}
return genero;
}
void imprimirDatos(floatpromedioEdadMasculino, floatpromedioEdadFemenino,
floatpromedioEstaturaMasculino, floatpromedioEstaturaFemenino) //Funcin para imprimir
los datos solicitados
{
system("cls");
cout<<"
RESULTADOS ESTADISTICOS ";
cout<<endl<<endl<<"En el grupo encuestado, se generaron los siguientes resultados:
";
cout<<endl<<endl<<"Promedio edad de Hombres : "<<promedioEdadMasculino;

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

cout<<endl<<"Promedio estatura de Hombres : "<<promedioEstaturaMasculino;


cout<<endl<<endl<<"Promedio edad de Mujeres : "<<promedioEdadFemenino;
cout<<endl<<"Promedio estatura de Mujeres : "<<promedioEstaturaFemenino;
cout<<endl<<endl;
system("pause");
}
int main() //Funcin principal
{
int edad, estatura, cantidadPersonasMasculino=0, cantidadPersonasFemenino=0;
int totalEdadMasculino=0, totalEdadFemenino=0, totalEstaturaMasculino=0;
int totalEstaturaFemenino=0;
float promedioEdadMasculino, promedioEdadFemenino, promedioEstaturaMasculino;
floatpromedioEstaturaFemenino;
char genero, rta='s';
system("cls");
cout<<"ESTADISTICAS DE EDAD Y ESTATURA"<<endl<<endl;
do
{
cout<<"Digite edad : ";
cin>>edad;
edad=validarEdad(edad); //llamada a funcin que retorna un valor
cout<<"Digite estatura : ";
cin>>estatura;
estatura=validarEstatura(estatura); //llamada a funcin que retorna un valor
cout<<endl<<"Digite genero : ";
cin>>genero;
genero=validarGenero(genero); //llamada a funcin que retorna un valor
if (genero=='M')
{
totalEdadMasculino=totalEdadMasculino+edad;
totalEstaturaMasculino=totalEstaturaMasculino+estatura;
cantidadPersonasMasculino=cantidadPersonasMasculino+1;
}
else
{
totalEdadFemenino=totalEdadFemenino+edad;
totalEstaturaFemenino=totalEstaturaFemenino+estatura,
cantidadPersonasFemenino=cantidadPersonasFemenino+1;
}
cout<<endl<<"Desea ingresar mas datos (s/n) : ";
cin>>rta;
} while(rta=='S' or rta=='s');
promedioEdadMasculino=totalEdadMasculino/cantidadPersonasMasculino;
promedioEdadFemenino=totalEdadFemenino/cantidadPersonasFemenino;
promedioEstaturaMasculino=totalEstaturaMasculino/cantidadPersonasMasculino;
promedioEstaturaFemenino=totalEstaturaFemenino/cantidadPersonasFemenino;
//llamada a funcin que NO retorna ningn valor
imprimirDatos(promedioEdadMasculino, promedioEdadFemenino,
promedioEstaturaMasculino, promedioEstaturaFemenino);
cout<<endl<<endl<<"Programa finalizado ... ";
cout<<endl<<endl;
system("pause");
return 0;
}

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

3. Escriba en el editor del IDE FALCON la codificacin anterior, compile el cdigo, ejecute el
programa con los datos y verifique los resultados. Mejore las codificacin incluyendo ms
detalles y comparta en el foro las explicaciones de las modificaciones que realiz.
4. A continuacin encontrar 5 problemas, cada estudiante debe elegir uno de ellos y desarrollar:
anlisis, diseo de solucin (diagrama de flujo pseudocdigo), prueba de escritorio y
codificacin en lenguaje C++ (IDE FALCON).
A. Realizar una funcin que genere un men de 3 opciones: 1. Calcular raz cuadrada, 2.
Elevar un nmero al cubo, 3. Salir
B. Realizar un programa con 2 funciones diseadas por el programador. La funcion1 no
utiliza parmetros y devuelve un valor. La funcion2 toma el resultado retornado por la
funcion1, verifica si es un nmero par o impar y lo indica mediante un texto.
C. Disear un programa que utilice la funcin llamada signo, que reciba la fecha de
nacimiento e indique mediante un texto a qu signo del zodiaco pertenece esa fecha. Los
datos deben estar validados.
D. Disee una funcin que registre los datos de nombre, ciudad y calcule la edad de una
persona recibiendo su fecha de nacimiento.
E. Disee una funcin que reciba los datos de total venta y calcule el descuento teniendo en
cuenta que slo se aplicar el 10% de descuento a ventas superiores a 500.000. La
funcin debe devolver el valor del descuento
5. Cada estudiante debe informar en el foro el problema que elige, para evitar que 2 estudiantes
desarrollen el mismo problema.
6. Utilice el foro para expresar sus dudas a tiempo y aprovechar las asesoras de su tutor.
PRODUCTO A ENTREGAR:
Una carpeta comprimida, en cuyo nombre incluya: Nmero de grupo, nombre completo del
estudiante y Practica2 (ejemplo: Grupo 20 - Maria Ayala Practica2)
La carpeta debe contener:
Un archivo .pdf
Introduccin
Problema.
Anlisis
Diseo de solucin (diagrama de flujo pseudocdigo)
Prueba de escritorio
El archivo .cpp
Ponderacin: 13%
CONDICIONES DE ENTREGA:
La carpeta comprimida debe ser entregada de manera individual, en el Entorno de Evaluacin y
seguimiento dentro de las fechas establecidas para la actividad, en la agenda del curso.
No se recibirn trabajos fuera de las fechas establecidas.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
Curso 301304 INTRODUCCIN A LA PROGRAMACIN

Directora
Curso 301304 Introduccin a la Programacin

Vous aimerez peut-être aussi