Вы находитесь на странице: 1из 11

Informe Individual Unidad 4 – Tarea 4 Funciones

JULIAN ANDRES ARICAPA LOPEZ


CC. 1053789928
Grupo 243002A_612

Presentado a:
RAFAEL DIONISIO ORTEGA ALMEIDA

Universidad Nacional Abierta y a Distancia


Escuela de Ciencias Básicas Tecnología e Ingeniería
Programa Académico
Fecha
Introducción

Se ha desarrollado un ejercicio seleccionado en la rubrica de actividades, es esta ocasión


se trabajó la unidad 4 funciones, se abarcaron estructuras de arreglos unidimensionales
y bidimensionales, se implementaron los conceptos de punteros y se agregaron dos
funciones al mismo ejercicio de la unidad pasada. A continuación se muestra el
desarrollo del ejercicio.
Objetivos

 Aclarar términos y conceptos


 Leer y analizar el escenario del ejercicio
 Hacer una lista sistemática del análisis (datos de entrada, datos de
salida y procesos)
 Definir el ejercicio (algoritmo - código)
 Presentar resultados
Unidad 3 – Tarea Individual
Equipo de pruebas: TOSHIBA SATELLITE
Sistema Operativo: WINDOWS 7
Entorno de Desarrollo: DEV++

Ejercicio 1:

Problema Planteado:
El comité olímpico colombiano necesita implementar mejoras en el
programa que se presentó en la Unidad anterior, a partir de allí es
necesario tener presente los nuevos requerimientos:
Se necesita automatizar la evaluación de resultados de las competencias
individuales de bicicrós, para lo cual es necesario desarrollar un software
que esté en capacidad de solicitar al usuario la cantidad de deportistas que
participaron del evento (mínimo 10, máximo 100), posteriormente debe de
solicitar el puntaje obtenido por cada uno de los deportistas, su
correspondiente nombre y la categoría a la que pertenece, teniendo en
cuenta sólo existen las siguientes categorías:
 Categoría Juvenil
 Categoría Elite
 Categoría Máster
En consecuencia, se debe de llevar un registro de cuántos deportistas
participaron por cada categoría y calcular cual es el porcentaje de cada una
de ellas frente al total de participantes. Adicionalmente se debe de mostrar
un consolidado final, donde se muestre el nombre de cada deportista, la
categoría a la que pertenece y el puntaje obtenido.
Nota: Es necesario validar que los datos que está ingresando el usuario por
consola se ajusten a los rangos y categorías solicitados en el ejercicio. Para
resolver el ejercicio es obligatorio utilizar arreglos y punteros.

Requerimientos: Restricciones:
En consecuencia, se debe de llevar un
registro de cuántos deportistas
participaron por cada categoría y
calcular cual es el porcentaje de cada
una de ellas frente al total de
participantes. Adicionalmente se debe
de mostrar un consolidado final,
donde se muestre el nombre de cada
deportista, la categoría a la que
pertenece y el puntaje obtenido.
Nota: Es necesario validar que los
datos que está ingresando el usuario
por consola se ajusten a los rangos y
categorías solicitados en el ejercicio.
Para resolver el ejercicio es obligatorio
utilizar arreglos y punteros.

Datos o
Variables
Variables de Entrada Procesos Para Desarrollar variables de
Auxiliares
Salida

int #include <stdio.h>


cantidad_deportista=0;

int categoria=0;
float porcentaje(int categoria, int
int juvenil=0; cantidad_deportista);

int elite=0;

int master=0; float porcentaje(int categoria, int


cantidad_deportista){
char nombres[100]
[50]; int porcentaje_categoria =
(categoria*100)/cantidad_deportista;
int categorias[100];
return porcentaje_categoria;
int puntajes[100];
}

void salida(char tipo [12], int


categoria, float porcentaje);

void salida(char tipo [12], int


categoria, float porcentaje){

printf("La cantidad de
deportistas en categoria %s es %d
equivalente a un porcentaje de %f
\n", tipo, categoria, porcentaje);

return 0;

int main() {

printf("Comite olimpico
Colombiano \n");

int cantidad_deportista=0;

int categoria=0;

int juvenil=0;

int elite=0;

int master=0;

char nombres[100][50];

int categorias[100];

int puntajes[100];

float porcentaje_juvenil=0.0;

float porcentaje_elite=0.0;

float porcentaje_master=0.0;

etiqueta:

printf("Digite la cantidad de
deportistas que participaran (minimo
10 maximo 100) \n");

scanf("%d", &cantidad_deportista);

if (cantidad_deportista <10 ||
cantidad_deportista>100) {

printf("Ingreso un valor
equivocado \n");

goto etiqueta;

for (int x=1;


x<=cantidad_deportista; x++){

etiqueta1:

printf("Digite el nombre del


deportista %d \n", x);

scanf("%*[^\n]%*c");

scanf("%s", nombres[x]);

printf("Digite la categoria del


deportista %d, 1 para Juvenil, 2 para
Elite o 3 para Master \n", x);

scanf("%d", &categoria);

printf("Digite el puntaje del


deportista %d \n", x);

scanf("%d", &puntajes[x]);
if (categoria==1)

juvenil++;

categorias[x]=1;

if (categoria==2){

elite++;

categorias[x]=2;

if (categoria==3)

master++;

categorias[x]=3;

if (categoria <1 || categoria>3)

printf("Ingreso un valor
equivocado \n");

goto etiqueta1;

}
}

porcentaje_juvenil =
porcentaje(juvenil,
cantidad_deportista);

porcentaje_elite = porcentaje(elite,
cantidad_deportista);

porcentaje_master =
porcentaje(master,
cantidad_deportista);

salida ("juvenil", juvenil,


porcentaje_juvenil);

salida ("elite", elite,


porcentaje_elite);

salida ("master", master,


porcentaje_master);

for (int x=1;


x<=cantidad_deportista; x++){

printf("EL deportista llamado %s


esta en la categoria %d (1 juvenil, 2
elite, 3 master) y su puntaje fue de
%d \n", nombres[x], categorias[x] ,
puntajes[x]);

}
return 0;

Ejecución del Programa


(Paso a Paso, agregar tantas filas como lo requiera la ejecución de su programa)

Paso 1

Pantallazo: Descripción:

Paso 2

Pantallazo: Descripción:
Conclusiones

En general Podemos aplicar este tipo de arreglos a los algoritmos


que se hayan desarrollado por nuestra propia autoría, es decir que
les podemos dar un plus con las mejoras que les podamos hacer.

Вам также может понравиться