Você está na página 1de 15

UNIDAD 3 - FASE 3 ADMINISTRAR DATOS EN ARREGLOS

FASE 3 ADMINISTRAR DATOS EN ARREGLOS

Presentado por:
OSCAR ANTONIO CARDONA
JUAN GUILLERMO CLEVES

MARLIO RIVERA GARCÍA

Tutor:
OCTAVIO ROJAS

INTRODUCCIÓN A LA PROGRAMACIÓN
Grupo: 301304_44

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA

ABRIL DE 2018
Tabla de contenido
INTRODUCCIÓN .............................................................................................................3
OBJETIVOS ......................................................................................................................4
Objetivo general ............................................................................................................ 4
Objetivos específicos .................................................................................................... 4
DESARROLLO DE LA ACTIVIDAD .............................................................................5
CONCLUSIONES ...........................................................................................................14
REFERENCIAS ..............................................................................................................15
INTRODUCCIÓN
En este documento se presenta la apropiación de los conceptos teóricos y prácticos,
correspondientes a la unidad 3 de la asignatura en la cual primeramente a nivel de grupo,
se realiza un mapa conceptual que es de autoría exclusiva de los integrantes del grupo y
que explica los conceptos básicos de arreglos. Más adelante, se presentan los ejercicios
prácticos que cada estudiante eligió y su respectiva solución en el IDE Visual Studio,
codificación de la solución en lenguaje C#, la verificación correcta de la compilación y
respectiva ejecución.
OBJETIVOS

Objetivo general

Diseñar estructuras estáticas para almacenar datos y modifica su contenido aplicando


métodos de ordenación y búsqueda.

Objetivos específicos

1. Implementar arreglos unidimensionales


2. Implementar arreglos bidimensionales
3. Manejar string y/o cadenas de caracteres
DESARROLLO DE LA ACTIVIDAD
1. A nivel de grupo, deben realizar un mapa conceptual que sea de autoría exclusiva
de los integrantes del grupo y que explique los conceptos básicos de arreglos.
Incluir los autores del mapa conceptual.

2. Cada estudiante debe elegir uno de los siguientes ejercicios y lo indica en el foro
(para evitar que 2 estudiantes presenten el mismo ejercicio).
a. Simular un sistema de votación con 3 candidatos, los usuarios elegirán su
candidato favorito registrando su voto. Al final se debe informar la
cantidad de votos recibidos por candidato y quién ganó.

SISTEMA DE VOTO ELECTRONICO POR MARLIO RIVERA G.


namespace SISTEMA_VOTO_ELECTRONICO
{ }
class Program
{
static void Main(string[] args)
{
int v1=0, v2=0, v3=0, voto, max;
Double total, ov1, ov2, ov3;
string ganador;

Console.WriteLine("(1)DUQUE (2)PETRO");
Console.WriteLine("(3)FAJARDO (4)SALIR");

do
{
Console.Write("ingrese el voto: ");
voto = int.Parse(Console.ReadLine());

if (voto == 1)
{
v1 = v1 + 1;
}

else if (voto == 2)
{ v2 = v2 + 1;
}
else if (voto == 3)
{ v3 = v3 + 1;
}

} while (voto != 4);

total = v1 + v2 + v3;
ov1 = (v1 / total) * 100;
ov2 = (v2 / total) * 100;
ov3 = (v3 / total) * 100;
Console.WriteLine("DUQUE TIENE : {0}", ov1);
Console.WriteLine("PETRO TIENE : {0}", ov2);
Console.WriteLine("FAJARDO TIENE : {0}", ov3);

max = v1;
ganador = ("DUQUE");
if (v2 > max)
{
ganador = "PETRO";

}
if (v3 > max)
{
ganador = "FAJARDO";

Console.WriteLine("EL GANADOR ES : {0}", ganador);

Console.ReadLine();

}
}

EL SIGUIENTE ES EL PANTALLAZO DEL FUNCIONAMIENTO


b. Una empresa necesita realizar un censo entre sus empleados con la
siguiente información: estado civil, número de hijos, casa propia. Se debe
establecer el porcentaje de empleados con vivienda propia, porcentaje de
casados y porcentaje de solteros.
c. Registrar cédulas y nombres de N personas. Cada vez que se registren
datos, se debe verificar que el número de cédula no se repita. Al final se
debe presentar la lista de personas registradas.
/*
* Actividad colaborativa
*Ejercicio C
* codigo de Curso 301304_44
* codigo 1110535130
* nombre JUAN GULLERMO CLEVES ANDRADE
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ejerciciofase3
{
class Program
{
static void Main(string[] args)
{
int i = 0;//contador i
int j;//contador j
int var = 0;
string temporal;
string[] nom = new string[30];//almacena los nombres
int[] cedu = new int[30];//almacena las cedulas
int[] ced = new int[30];//almacena las cedulas
string respuesta;//respuesta para validar si continua
agregando registros o no

do
{

if (i == 0)
{
Console.WriteLine("escriba el numero de
cedula");
temporal = Console.ReadLine();
ced[i] = int.Parse(temporal);
Console.WriteLine("Escriba el nombre");
nom[i] = Console.ReadLine();
}
if (i != 0)
{
var = 0;
Console.WriteLine("escriba el numero de
cedula");
temporal = Console.ReadLine();
int tempo = int.Parse(temporal);
for (j = 0; j < ced.Length; j++)//se revisa el
arreglo que ya tiene registro y se compara con el valor actual que
se esta ingresando
{
if (tempo == ced[j])//si se encuentra un
numero de cedula repetido
{
Console.WriteLine("Cedula repetida");
var = 1;
break;
}
}
if (var == 0)
{
ced[i] = tempo;
Console.WriteLine("Escriba el nombre");
nom[i] = Console.ReadLine();
}
}
Console.WriteLine("Registrar otra persona S/N");
respuesta = Console.ReadLine();
i++;
} while (respuesta == "S" || respuesta == "s");//si la
respuesta es Si continuo agragando personas

/*IMPRIMO TODO LOS REGISTROS*/


Console.WriteLine("Los Registros guardados Son: ");
for (i = 0; i < nom.Length; i++)
{
/*SI EL ARREGLO ESTA VACIO NO IMPRIMO*/
if (nom[i] != null)
{
Console.WriteLine("--------------");
Console.WriteLine("" + ced[i]);
Console.WriteLine("" + nom[i]);
}
}
Console.ReadLine();
}
}
}
d. Registrar las notas (de 0 a 5) de parcial 1, parcial 2 y parcial 3 de N
estudiantes. Calcular la nota final, teniendo en cuenta que el parcial 1
equivale al 30%, el parcial 2 al 30% y el parcial 3 al 40%. Al final se debe
imprimir toda la información.
OSCAR CARDONA

Se codifica la clase Program


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ArrelgoRegistrarNotas
{
class programa
{
static void Main(string[] args)
{
String Teclado;
do
{
Console.Clear();
Console.WriteLine("MENU");
Console.WriteLine("1. Consultar nota final de n alumno");
Console.WriteLine("2. Cerrar Programa");
Console.WriteLine("");
Teclado = Console.ReadLine();

if (Teclado == "1")
{

Console.Clear();
Console.WriteLine("Digite la cantidad de alumnos a verificar
su nota final:");
Teclado = Console.ReadLine();
COMENTARIOS
//se crea un ciclo for para pedir los datos de n alumnos
//con int.parse se transforma un string a entero
for (int j = 0; j < int.Parse(Teclado); j++)
{
Console.Clear();
COMENTARIOS

//se coloca el tipo con los n []s que determinan el inicio


de un arreglo, posteriormente el nombre del arreglo, seguido del igual con el new
y el
//tipo de arreglo sumado con la cantidad de elementos del
mismo
double[] notas = new double[3];

Console.WriteLine("Por favor digite las notas del


estudiante : " + (j+1));
COMENTARIOS
//se inicia un ciclo for con la variable i, la cual inicia
en 1 y termina 3 tomando este valor, eto se hace para llenar el vector
for (int i = 1; i <= 3; i++)
{
//se solicita al usuario digitar la nota
Console.WriteLine("Digite la nota " + i + ": ");
Teclado = Console.ReadLine();
//La nota se recibe como un string, pero para guardarlo
en el array debo transformarlo a double, por tanto se utiliza la sentencia
convert.ToDouble
notas[i - 1] = Convert.ToDouble(Teclado);
}

//se crea una variable nota final


double notafinal = 0;

//nota fina es igual el parcial 1 por el 30%, el parcial 2


por el 30% y el parcial 3 por el 40%
notafinal = (notas[0] * 0.3) + (notas[1] * 0.3) + (notas[2]
* 0.4);

//Console.WriteLine("La nota final es: " + notafinal);

//se imprime el resultado de la ultima variable


Console.WriteLine("");
Console.WriteLine("La nota final del estudiante "+(j+1)+"
es: ");
Console.WriteLine(notafinal);
Console.WriteLine("");
Console.WriteLine("presione enter para pasar a la
siguiente ventana");
String Borrar = Console.ReadLine();
}

}
else if (Teclado == "2")
{
}
else
{
Console.WriteLine("Opcion no deseada");
}
}
while (Teclado != "2");

}
}
}
Programa en ejecución
e. Crear una lista con identificación, nombre, apellido y clave. El programa
debe permitir el registro de datos, sin que se repita la identificación.
También debe brindar la posibilidad de consultar nombre y apellido al
digitar la clave.
CONCLUSIONES
Los arreglos y matrices ya sean unidimensionales o bidimensionales, dependiendo de la
problemática nos permiten almacenar/manipular datos agrupados de manera efectiva. Por
lo regular, son ideales para el registro/manipulación de información que representa una
tabulación de resultados clasificados por categorías o tipos de datos. Tienen la ventaja de
que sus elementos se acceden rápidamente a través de sub-índices
REFERENCIAS
Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 153 - 160). Madrid, ES: McGraw-Hill
España. Recuperado
de http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=105
15217&ppg=170

Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 161 - 169). Madrid, ES: McGraw-Hill
España. Recuperado
de http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=105
15217&ppg=170

String – cadenas de caracteres: trabajar con el objeto string

Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 177 - 182). Madrid, ES: McGraw-Hill
España. Recuperado
de http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=105
15217&ppg=170

Benavides, M. (2016). Arreglos. Recuperado de http://hdl.handle.net/10596/10402

Ceballos, S. F. J. (2007). Microsoft C#: lenguaje y aplicaciones (2a. ed.). (pp. 161 - 204).
Madrid, ES: RA-MA Editorial. Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=110
46613&ppg=183

Você também pode gostar