– Paso 4
Funciones y procedimientos
Valentina Lambraño Cervantes
213022A_1702 – FUNDAMENTOS DE PROGRAMACIÓN
Tutor
STEVENS MORENO OSORIO
Universidad Nacional Abierta y a Distancia-UNAD
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Junio 16 de 2024
Introducción
Elabora: Yina Alexandra González Sanabria. 1
En este taller práctico de programación en C#, exploramos la implementación
de dos programas orientados a la gestión de datos simples: uno para registrar
animales en un zoológico municipal y otro para gestionar productos en una
tienda. Ambos ejercicios se enfocan en la captura de datos por teclado, el
procesamiento de información básica y la presentación de resultados de
manera estructurada en consola.
Objetivos
Objetivo general:
Desarrollar habilidades prácticas en la programación estructurada utilizando el
lenguaje C#, aplicando conceptos fundamentales como entrada de datos,
almacenamiento en arreglos, y procesamiento de información para la
resolución de problemas simples.
Objetivos Específicos:
Implementar un programa en C# que permita registrar y mostrar un
directorio de animales para un zoológico municipal, capturando especies
y países de origen de manera eficiente.
Desarrollar un segundo programa en C# orientado a gestionar productos
en una tienda, identificando y mostrando el producto más barato y el
más costoso a partir de datos ingresados por el usuario.
SOLUCION
Ejercicio 3 Funciones y procedimientos
Elabora: Yina Alexandra González Sanabria. 2
El Zoológico municipal necesita crear un directorio de animales con
nombre y país de origen así:
• Por teclado se debe solicitar la cantidad de animales a registrar
(ejemplo si digita 5 deberá repetir los pasos siguientes 5 veces)
• Se requiere captura por teclado de especie y país de origen (Ej:
León, Ruanda / Oso pardo, USA).
• Se debe implementar una función que reciba como parámetro las
especies con sus respectivos países de origen e imprimir el total de
animales registrados con su especie y país de origen.
Identificación Descripció Entradas Resultados(salidas)
del n
Requerimient
o
R1 Solicitar la Valor numérico Cantidad de animales
cantidad de ingresado por el almacenada en una variable
animales a usuario
registrar
R2 Capturar por Texto ingresado por Lista de animales con especie
teclado la el usuario (especie y y país de origen
especie y país de país)
origen de cada
animal
R3 Implementar una Lista de animales con Impresión en consola del
función que especie y país de total de animales registrados
reciba como origen con su especie y país de
parámetro las origen
especies con sus
respectivos
países
Código:
using System;
class Program
{
// Función para capturar los datos de los animales
static string[,] CapturarAnimales(int cantidad)
{
string[,] animales = new string[cantidad, 2];
Elabora: Yina Alexandra González Sanabria. 3
for (int i = 0; i < cantidad; i++)
{
[Link]("Ingrese la especie del animal: ");
animales[i, 0] = [Link]();
[Link]("Ingrese el país de origen: ");
animales[i, 1] = [Link]();
}
return animales;
}
// Función para imprimir los animales registrados
static void ImprimirAnimales(string[,] animales, int cantidad)
{
[Link]($"\nTotal de animales registrados:{cantidad}");
for (int i = 0; i < cantidad; i++)
{
[Link]($"Especie: {animales[i, 0]}, País de Origen: {animales[i, 1]}");
}
}
static void Main(string[] args)
{
// Solicitar la cantidad de animales a registrar
[Link]("Ingrese la cantidad de animales a registrar: ");
int cantidad = [Link]([Link]());
// Capturar los datos de los animales
string[,] animales = CapturarAnimales(cantidad);
// Imprimir los animales registrados
ImprimirAnimales(animales, cantidad);
}
}
Elabora: Yina Alexandra González Sanabria. 4
Resultado de ejecución:
Ejercicio 7 Funciones y procedimientos
En la tienda se requiere un programa que permita hallar el producto
más barato y más costoso así:
• Por teclado se debe solicitar la cantidad de productos a valorar.
(ejemplo si digita 5 deberá repetir los pasos siguientes 5 veces)
• Se requiere captura por teclado de nombre del producto y valor en
pesos (siendo el valor en pesos un número entero).
• Se debe calcular el producto más barato e imprimir su nombre y
costo en pantalla. Luego calcular el producto más costoso e imprimir
su nombre y costo en pantalla.
Identificación Descripció Entradas Resultados(salidas)
del n
Requerimient
o
R1 Solicitar la Valor numérico Cantidad de productos
cantidad de ingresado por el almacenada en una variable
productos a usuario
Elabora: Yina Alexandra González Sanabria. 5
valorar
R2 Capturar por Texto ingresado por Arreglos con nombres y
teclado el el usuario (nombre valores de productos
nombre del del producto), valor
producto y su numérico ingresado
valor en pesos por el usuario
(precio)
R3 Encontrar el Arreglos con Nombre y costo del producto
producto más nombres y valores de más barato
barato productos
R4 Encontrar el Arreglos con Nombre y costo del producto
producto más nombres y valores de más costoso
costoso productos
Código:
using System;
class Program
{
// Función para capturar los datos de los productos
static void CapturarProductos(int cantidad, string[] nombres, int[] valores)
{
for (int i = 0; i < cantidad; i++)
{
[Link]("Ingrese el nombre del producto: ");
nombres[i] = [Link]();
[Link]("Ingrese el valor en pesos del producto: ");
valores[i] = [Link]([Link]());
}
}
// Función para encontrar el producto más barato
static void EncontrarProductoMasBarato(string[] nombres, int[] valores, int cantidad)
{
int minValor = valores[0];
string minProducto = nombres[0];
for (int i = 1; i < cantidad; i++)
{
if (valores[i] < minValor)
{
minValor = valores[i];
minProducto = nombres[i];
}
}
Elabora: Yina Alexandra González Sanabria. 6
[Link]($"\nProducto más barato: {minProducto}, Costo: {minValor}
pesos");
}
// Función para encontrar el producto más costoso
static void EncontrarProductoMasCostoso(string[] nombres, int[] valores, int cantidad)
{
int maxValor = valores[0];
string maxProducto = nombres[0];
for (int i = 1; i < cantidad; i++)
{
if (valores[i] > maxValor)
{
maxValor = valores[i];
maxProducto = nombres[i];
}
}
[Link]($"Producto más costoso: {maxProducto}, Costo: {maxValor}
pesos");
}
static void Main(string[] args)
{
// Solicitar la cantidad de productos a registrar
[Link]("Ingrese la cantidad de productos a valorar: ");
int cantidad = [Link]([Link]());
// Declarar arreglos para nombres y valores
string[] nombres = new string[cantidad];
int[] valores = new int[cantidad];
// Capturar los datos de los productos
CapturarProductos(cantidad, nombres, valores);
// Encontrar e imprimir el producto más barato
EncontrarProductoMasBarato(nombres, valores, cantidad);
// Encontrar e imprimir el producto más costoso
EncontrarProductoMasCostoso(nombres, valores, cantidad);
}
}
Resultado de ejecución:
Elabora: Yina Alexandra González Sanabria. 7
Conclusiones
Elabora: Yina Alexandra González Sanabria. 8
A través de este taller práctico, hemos puesto en práctica conceptos fundamentales de
programación estructurada en C#. Aprendimos a capturar y procesar datos utilizando
arreglos y bucles, así como a implementar funciones para analizar y presentar la
información relevante de manera clara y efectiva en consola. Estos ejercicios nos han
proporcionado una base sólida para continuar explorando y ampliando nuestros
conocimientos en el desarrollo de software, preparándonos para abordar problemas
más complejos y aplicaciones más avanzadas en el futuro.
Referencias Bibliográficas
Price, M. (2017). C# 7.0 All-in-One For Dummies. For Dummies.
Esposito, D. (2017). Programación en C# 6.0: Guía Completa para Desarrolladores.
Anaya Multimedia.
Alarcón, J. (2015). Aprende C# como si estuvieras en primero. Ra-Ma.
Elabora: Yina Alexandra González Sanabria. 9