Lenguaje: C#
Desarrollado para: Aplicación de Consola C#
Utilización de listas (List) y cálculo de promedios con foreach
- Utilización de lista con tipos de datos primitivos y entidades de negocios.
- Cálculo de promedio de edades por cada sexo.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AplicacionColecciones2
{
public class Inicio
{
static void Main(string[] args)
{
//lista de tipo string - cadena de caracteres
List listaString = new List();
//add - agregar elementos del tipo indicado en la lista
listaString.Add("Ejemplo");
listaString.Add("Ejemplo 2");
listaString.Add("Ejemplo 3");
listaString.Add("Ejemplo 4");
//Se recorre la lista con un for común
for (int i = 0; i < 10; i++)
{
listaString.Add("Ejemplo " + i.ToString());
}
//lista de elementos de tipo int
List listaNumeros = new List();
//Se agregan 10 elementos en la lista
for (int i = 0; i < 10; i++)
{
listaNumeros.Add(i);
}
//sumatoria de los valores de la lista de número
//se utiliza el 'foreach' para recorrer una colección sin conciderar el fin de una lista
int suma = 0;
foreach (int item in listaNumeros)
{
suma = suma + item;
}
//Lista de elementos tipo Alumno - entidad de negocios
List listaAlumnos = new List();
//Se llena el listado con alumnos creados en un for
Alumno alumno = new Alumno();
for (int i = 0; i < 5; i++)
{
alumno = new Alumno();
alumno.NumeroMatricula = i;
alumno.Nombres = "Pascual" + 1.ToString();
alumno.Apellidos = "Arroyo";
alumno.FechaRegistro = DateTime.Today;
alumno.Edad = 10 + i;
alumno.Sexo = (((i + 1) % 2) == 0) ? "F" : "M";
listaAlumnos.Add(alumno);
}
Console.WriteLine("Promedio de edades por sexo");
//Se recorre el listado con un foreach para calcular el promedio de edades por sexo
double promedioF = 0.0;
double promedioM = 0.0;
int countF = 0;
int countM = 0;
foreach (Alumno al in listaAlumnos)
{
Console.WriteLine("Alumno "+al.Sexo+" - edad: "+al.Edad.ToString());
if (al.Sexo.Equals("F")) {
++countF;
promedioF += al.Edad;
}
else if (al.Sexo.Equals("M")) {
++countM;
promedioM += al.Edad;
}
}
Console.WriteLine("Promedio de edades por sexo");
Console.WriteLine("");
Console.WriteLine("Mujeres - Cantidad: "+countF.ToString() +" - Promedio: "+(promedioF/countF));
Console.WriteLine("Hombres - Cantidad: " + countM.ToString() + " - Promedio: " + (promedioM / countM));
Console.WriteLine("");
Console.ReadKey();
}
}
}
Entidad de negocios - Alumno
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AplicacionColecciones2
{
public class Alumno
{
public int NumeroMatricula { get; set; }
public string Nombres { get; set; }
public string Apellidos { get; set; }
public DateTime FechaRegistro { get; set; }
public string Sexo { get; set; }
public int Edad { get; set; }
}
}