INTRODUCCIÓN A LAPROGRAMACIÓN CÓDIGO: 301304 Fase 3 Administrar datos en arreglos Presentado a: MIRIAN DEL CARMEN BENA
Views 139 Downloads 0 File size 1MB
INTRODUCCIÓN A LAPROGRAMACIÓN CÓDIGO: 301304
Fase 3 Administrar datos en arreglos
Presentado a: MIRIAN DEL CARMEN BENAVIDES Tutora
Entregado por: Jairo Alonso Beltrán Jiménez Código: 80378088 Andres Rene Vargas Robles Código: 1049633545 Leidy Johana Rincon Código: 1003619042 Omar Yesid Quinche Código: 1069262168
Grupo: 301304_3
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA - UNAD ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA NOVIEMBRE DE 2018
INTRODUCCIÓN En programación es muy importante la utilización de los arreglos que nos permiten utilizar un espacio de memoria con gran capacidad de almacenamiento para los datos a utilizar, es muy importante identificar las cantidades correctas para no presentar inconsistencias en la ejecución del programa, de acuerdo a esto un arreglo o array es una estructura de datos que contienen variables o elementos a los que se acceden a través de un índice identificados todos de un mismo tipo, enfocados en la información y apoyándonos en las referencias bibliográficas de esta unidad el estudiante estará en capacidad de estructurar una solución implementado clases métodos y lo nuevo conocido como array o arreglo de esta forma se quiere que se aplican todo los conceptos y conocimientos adquiridos en las unidades anteriores y se complementen en el desarrollo de y ejecución de problemas planteados en la unidad.
CONTENIDOS
ARREGLOS
Los arreglos son estructuras de datos que contienen variables a los cuales se pueden acceder por índices
Los arreglos manejan más de una dimensión y cada una de ellas maneja diferente cantidad de índices
Arreglos bidimensionales rectangulares
Arreglos multidimensionales o matrices rectangulares
CONCEPTOS BASICOS DE ARREGLOS
Clases
Dentro de las clases Se pueden declarar variables, propiedades, métodos, delegados, eventos, etc. Cada elemento puede tener un modificador de acceso. Un modificador de acceso especifica quienes están autorizados a “ver” ese elemento. Si no se especifica ningún modificador de acceso, se asume que se trata de un elemento “private”.
tener un modificador de acceso. Un modificador de acceso especifica quienes están autorizados a “ver” ese elemento. Si no se especifica ningún modificador de acceso, se asume que se trata de un elemento “private”.
Métodos
Contienen instrucciones para ejecutar al momento de ser invocados. Un método contiene: Modificador de Acceso (Determina su visibilidad) Tipo de dato (Devuelto al finalizar su ejecución) Identificador (Nombre con el cual se invoca) Parámetros (Cero o mas variables que recibe el método)
Propiedades Son mecanismos para acceder a los valores (variables) que poseen los objetos. Algunos autores las consideran sinónimos de los datos, sin embargo no siempre lo son (solamente en el caso de las propiedades autoimplementadas). Se pueden implementar: Declarando la variable como public No sería posible especificarla como Solo-Lectura o Solo-Escritura No se puede implementar código adicional asociado a la Lectura o Escritura de la variable. Declarando un
EJERCICIO REALIZADO POR JAIRO ALONSO BELTRAN A. En una ciudad de Colombia, se necesita registrar los accidentes que ocurren en una semana, incluyendo identificación del conductor, edad y género. Con la información obtenida, se debe obtener: Porcentaje de conductores menores de edad Porcentaje de conductores de género femenino Porcentaje de conductores de género masculino comprendidas entre 19 y 25 años.
con
edades
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; /*En una ciudad de Colombia, se necesita registrar los accidentes que ocurren en una semana, incluyendo identificación del conductor, edad y género. Con la información obtenida, se debe obtener: Porcentaje de conductores menores de edad Porcentaje de conductores de género femenino Porcentaje de conductores de género masculino con edades comprendidas entre 19 y 25 años.*/
;
namespace arreglos_accidentes_de_trancito //llamaremos a la clase accidentes //con atributos genero edad cantidad de datos //con metodos registrar datos, imprimir datos y porcentaje de accidentes {//diseño de clases denominada accidentes public class accidentes {//asignamos atributos a la clase "accidentes" public int [] genero = new int[20]; public string[] nombre = new string[20] public string [] dia = new string[20]; public int[] edad = new int[20]; public int cantidad, menoredad, masculino19a25,femenino,masculino;
//nombramos el primer metodo el cual registrara los datos public void registrardatos() { int i;
Console.WriteLine("**********Registrar datos********"); //se solicita al usuario ingreszar la cantidad de datos ocurridos en la semana Console.Write("ingrese catidad de datos; "); // se verifica la cantidadd e datos y se procedea continuar o rengrezar cantidad correcta do { cantidad = int.Parse(Console.ReadLine()); if ((cantidad < 20) && (cantidad > 0)) Console.WriteLine(""); else Console.Write("Cantidad incorrecta ... digite nuevamente: "); } while ((cantidad < 0) || (cantidad > 20)); Console.WriteLine(); for (i = 0; i < cantidad; i++) { //solicita al usuario ingrezar datos por día de la semana Console.WriteLine("dijite dia de la semana; "); dia[i] = Console.ReadLine(); //solicita identiad del conductor y edad del mismo Console.Write("dijite el nombre y apellido del conductor: "); nombre[i] = Console.ReadLine(); Console.WriteLine("digite edad del conductor involucrado en el accidente; "); //valida la
edad que esten dentro de los parametros o debuelve mensaje de error
do { edad[0] = int.Parse(Console.ReadLine()); if ((edad[0] < 65) && (edad[0] >10)) Console.Write(""); if (edad[0] < 18) Console.WriteLine("menor de edad"); else Console.WriteLine("mayor de edad");
} while ((edad[0] < 10) || (edad[0] > 65)); if (edad[0] < 18) menoredad = menoredad + 1; if ((edad[0] > 18) && (edad[0] < 26)) masculino19a25 = masculino19a25 + 1; if (genero[0] == femenino) femenino = femenino + 1; if (genero[0] == masculino) masculino = masculino + 1; Console.Write("dijite el genero (1 pra masculino) y (2 para fenenimo) ;"); genero[i] = int.Parse(Console.ReadLine()); if (genero[2] == femenino) Console.WriteLine("femenino"); if (genero[1] == masculino) Console.WriteLine("masculini"); } } // segundo metodo llamado imprimir datos public void ImprimirDatos() { int i; Console.WriteLine("\n\n\t\tINFORME DE ACCIDENTES POR SEMANA\n"); } // tercer metodo porcentaje
public void Porcentajedeaccidentes() { int i, porcentaje = 0; // Console.WriteLine("\n\n\t\tPORCENTAJE DE ACIDENTES
DE UNA SEMANA\n");
//solicita el porcentaje de menores de edad, porcentaje = menoredad * 100 / cantidad; Console.WriteLine("El porcentaje de conductores menores de edad es de " + porcentaje);
//solicita el porcentaje de masculinos entre 19 y 25 años porcentaje = masculino19a25 * 100 / cantidad ; if(cantidad==masculino) porcentaje = masculino19a25 * 100 / cantidad; Console.WriteLine("el porcentaje de conductores masculinos entre 19 a 25 años es de " + porcentaje);
{ porcentaje = femenino * 100 / cantidad; Console.WriteLine("el porcentaje de mujeres conductoras es de"+porcentaje); } } } } // Codificación de la clase Program namespace arreglos_accidentes_de_trancito { class program { static void Main(string[] args) { accidentes registro = new accidentes(); registro.ImprimirDatos(); registro.registrardatos(); registro.Porcentajedeaccidentes(); Console.ReadKey(); } } }
REALIZO ANDRES RENE VARGAS ROBLES CODIGO: 1049633545 using using using using using
System; System.Collections.Generic; System.Linq; System.Text; System.Threading.Tasks;
/* Se requiere un programa que registre la lectura actual de cada usuario, calcule el consumo del mes por diferencia de lecturas y muestre para cada usuario: nombre, consumo y valor a pagar. El valor de un kilovatio en Colombia es: Estrato 1 …………..$ 110 Estrato 2 …………. $ 120 Estrato 3 …………. $ 124 Estrato 4 …………. $ 126 .*/ namespace Tercer_taller_ejercicio_e { class servicioEnergia { string nombre; int estrato; int lectura; int numEstrato; public servicioEnergia(string nombre, int lectura, int estrato, int numEstrato) { this.nombre = nombre;
this.lectura = lectura; this.estrato = estrato; this.numEstrato = numEstrato;
} public string getNombre() { return nombre; } public int getlectura() { return lectura; } public int getEstrato() { return estrato; } public int getNumEstrato() { return numEstrato; }
public String toString() { string msj = "\n=================\n"; msj += "\nNombre: " + this.nombre; msj += "\nConsumo de kilovatio: " + this.lectura; msj += "\nNumero de Estrato: " + this.numEstrato; msj += "\nConsumo del mes: VaLor a pagar: " + this.lectura * this.estrato; return msj;
+ "
//return "Nombre :" + nombre + " " + "Numero de Estrato :"+numEstrato + " }
" + "Consumo de kilovatio :" + lectura + " " + "VaLor a pagar " + lectura*estrato ;
} class consumoEnergia { servicioEnergia[] CantPersonas; int cantMax = 5; int cont; public consumoEnergia(int cantMax) { this.cantMax = cantMax; this.cont = 0; this.CantPersonas = new servicioEnergia[cantMax]; } public void agregar(string nombre, int lectura, int estrato, int numEstrato) { CantPersonas[cont] = new servicioEnergia(nombre, lectura, estrato, numEstrato); cont++; }
"
public int buscar(String nombre) { int bandera = -1; for (int i = 0; i < cont; i++) { if (CantPersonas[i].getNombre().Equals(nombre)) { bandera = i; break; } } return bandera; } public int ConsumoMes() { int valorPagar = 0; for (int i = 0; i < cont;i++) { if (cont > 0) { valorPagar += CantPersonas[i].getlectura() * CantPersonas[i].getEstrato();
Console.WriteLine(CantPersonas[i].toString()); } else { Console.WriteLine("No hay usuarios registrados"); Console.ReadLine(); } } return valorPagar; } public int { return } public int { return }
getCont() cont; getCantMax() cantMax;
} class Program { static consumoEnergia registros = null; public static void Menu() { Console.Clear(); Console.WriteLine("Empresa de energia XYZ"); Console.WriteLine("1.Registrar consumo de kilovatio por persona"); Console.WriteLine("2.Mostrar consumo del mes");
Console.WriteLine("3.salir"); Console.WriteLine("Digite su opción"); } public static void agregar() { if (registros.getCont() < registros.getCantMax()) { string nombre; int estrato = 0; int lectura; int numEstrato=0; Console.WriteLine("Digite nombre"); nombre = Console.ReadLine(); int res = registros.buscar(nombre); if (res == -1) { do { int op; Console.WriteLine("Digite su estrato"); Console.WriteLine("1.Estrato 1 …………..$ 110 Console.WriteLine("2.Estrato 2 …………. $ 120 Console.WriteLine("3.Estrato 3 …………. $ 124 Console.WriteLine("4.Estrato 4 …………. $ 126 op = int.Parse(Console.ReadLine());
por por por por
kilovatio"); kilovatio"); kilovatio"); kilovatio");
switch (op) { case 1: estrato = 110; numEstrato = 1;
break; case 2: estrato = 120; numEstrato = 2; break; case 3: estrato = 124; numEstrato = 3; break; case 4: estrato = 126; numEstrato = 4; break; } } while (estrato==0); Console.WriteLine("Digite el consumo de kilovatio lectura = int.Parse(Console.ReadLine());
");
registros.agregar(nombre, lectura, estrato, numEstrato); Console.WriteLine("Registro agregado"); } else { Console.WriteLine("El registro ya se encuetra agregado"); } } else { Console.WriteLine("Capacidad excedidad"); } } static void Main(string[] args) { int op = 0; registros = new consumoEnergia(5); registros.getCantMax(); Console.WriteLine("Por favor digite los 5 usuarios con sus respectivos estratos y lecturas del mes anterior"); Console.WriteLine("Presione una tecla para continuar"); Console.ReadLine(); do { Menu(); op = int.Parse(Console.ReadLine()); switch (op) { case 1: Console.Clear(); agregar(); Console.ReadLine(); break; case 2: Console.Clear(); Console.WriteLine("El consumo del mes de todos los usuarios fue de : " + registros.ConsumoMes()); Console.WriteLine("\n=================\n"); Console.ReadLine(); break; } } while (op != 3);
}
} }
REALIZADO POR: LEIDY JOHANA RINCON RIVERA CODIGO: 1003619042
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; //En una entrevista para contratar personal para un cargo X se tienen en cuenta los //siguientes criterios: edad y educación formal. Los puntajes son: //Para edades entre 18-24 años, 10 puntos; entre 25 – 30 años, 20 puntos; entre 31 - 40 años, //15 puntos; mayores de 40 años, 8 puntos. //Para estudios de bachillerato 5 puntos, tecnológicos 8 puntos, profesionales 10 puntos, postgrado 15 puntos. //se requiere calcular el puntaje total para 3 personas entrevistadas e informar, quién es el mejor candidato para el cargo.
//AUTORA: LEIDY JOHANA RINCON RIVERA //CODIGO: 1003619O42 namespace EJERCICIO_B { class Program { static void Main() { Menu(); } static void Menu() { char opcion; //se crea un menu de tres obsiones de seleccion do { Console.Clear(); Console.WriteLine("\t******************************************"); Console.WriteLine("\t************ CONTRATO PERSONAL ***********"); Console.WriteLine("\t******************************************"); Console.WriteLine("\n"); Console.WriteLine("\t* [1] Selección de datos para menores de 31 años Console.WriteLine("\n"); Console.WriteLine("\t* [2] Selección de datos para mayores de 31 años Console.WriteLine("\n"); Console.WriteLine("\t************************"); Console.WriteLine("\t* [3] Salir *"); Console.WriteLine("\t************************"); Console.WriteLine("\n"); Console.Write("Elige la opcion: "); do { opcion = Console.ReadKey(true).KeyChar; } while (opcion < '0' || opcion > '3'); Console.WriteLine(opcion + "\n");
"); ");
switch (opcion) { //obseiones de seleccion para conocer el puntaje case '1': { char opcion2; do { Console.Clear(); Console.WriteLine("\t****************************************************"); Console.WriteLine("\t*** Selecciona los datos para conocer su puntaje ***"); Console.WriteLine("\t****************************************************"); Console.WriteLine("\n"); Console.WriteLine("\t*********************************"); Console.WriteLine("\t* [1] De 18-24 años con bachillerato realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [2] De 25-30 años con bachillerato realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [3] De 18-24 años con bachillerato y tecnologico realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [4] De 25-30 años con bachillerato y tecnologico realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [5] De 18-24 años con bachillerato, tecnologico y profesional realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [6] De 25-30 años con bachillerato, tecnologico y profesional realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [7] De 18-24 años con bachillerato, tecnologico, profesional y postgrado realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [8] De 25-30 años con bachillerato, tecnologico, profesional y postgrado realizado "); Console.WriteLine("\n"); Console.WriteLine("\t*********************************"); Console.WriteLine("\t* [9]- SALIR ");
Console.WriteLine("\t************************"); Console.Write("Elegir opcion: "); do { opcion2 = Console.ReadKey(true).KeyChar; } while ((opcion2 < '0') || (opcion2 > '9')); Console.WriteLine(opcion2 + "\n"); switch (opcion2) { case '1': { Console.WriteLine("\n"); Console.WriteLine("\n");
Console.WriteLine("SU PUNTAJE ES: Console.ReadLine(); break;
15
");
25
");
} case '2': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: Console.ReadLine(); break; } case '3': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 23 Console.ReadLine(); break;
");
} case '4': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 33 "); Console.ReadLine(); break; } case '5': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: Console.ReadLine(); break; }
33 ");
case '6': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 43 Console.ReadLine(); break;
");
} case '7': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 48 Console.ReadLine(); break; } case '8': {
");
Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 58 Console.ReadLine(); break;
");
} } } while (opcion2 != '9'); break; } //se realiza para seleccionar los datos
para conocer el respectivo
puntaje case '2': { char opcion3; do { Console.Clear(); Console.WriteLine("\t****************************************************"); Console.WriteLine("\t*** Selecciona los datos para conocer su puntaje ***"); Console.WriteLine("\t****************************************************"); Console.WriteLine("\n"); Console.WriteLine("\t*********************************"); Console.WriteLine("\t* [1] De 31-40 años con bachillerato realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [2] De Mayor de 40 años con bachillerato realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [3] De 31-40 años con bachillerato y tecnologico realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [4] De Mayor de 40 años con bachillerato y tecnologico realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [5] De 31-40 años con bachillerato, tecnologico y profesional realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [6] De Mayor de 40 años con bachillerato, tecnologico y profesional realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [7] De 31-40 años con bachillerato, tecnologico, profesional y postgrado realizado "); Console.WriteLine("\n"); Console.WriteLine("\t* [8] De Mayor de 40 años con bachillerato, tecnologico, profesional y postgrado realizado "); Console.WriteLine("\n"); Console.WriteLine("\t*********************************"); Console.WriteLine("\t* [9]- SALIR "); Console.WriteLine("\t************************"); Console.Write("Elegir opcion: "); // se genera los casos para arrojjar el puntaje do { opcion3 = Console.ReadKey(true).KeyChar; } while ((opcion3 < '1') || (opcion3 > '9'));
Console.WriteLine(opcion3 + "\n"); switch (opcion3) { case '1': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 20 Console.ReadLine(); break; } case '2': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 13 Console.ReadLine(); break; }
");
");
case '3': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 28 Console.ReadLine(); break;
");
} case '4': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 21 Console.ReadLine(); break; } case '5': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 38 Console.ReadLine(); break; } case '6': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 31 Console.ReadLine(); break; } case '7': { Console.WriteLine("\n");
");
");
");
Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 53 Console.ReadLine(); break;
");
} case '8': { Console.WriteLine("\n"); Console.WriteLine("\n"); Console.WriteLine("SU PUNTAJE ES: 46 Console.ReadLine(); break; } } } while (opcion3 != '9'); break; } case '3': { Console.Write(""); break; } } } while (opcion != '9'); } } }
");
CONCLUSIONES
Gracias al desarrollo de las actividades se logra que el estudiante aprenda a analizar diferentes tipos de problemas planteando las soluciones de manera analítica y creativa en editor de código generando respuesta atreves compiladores. Dentro de los conceptos aprendidos dentro de la unidad se utilizan métodos que permiten almacenar información de cantidades para distribuirlas por medio de índices contenidos en arreglos mejorando la codificación de los ejercicios.
REFERENCIAS BIBLIOGRAFICAS
Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 1 - 9). Madrid, ES: McGraw-Hill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=18 Programación orientada a objetos: fundamentación del paradigma de programación orientada a objetos. Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 9 - 12). Madrid, ES: McGraw-Hill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=18 El primer programa: explicaciones para desarrollar programas en lenguaje C# Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 12 - 35). Madrid, ES: McGrawHill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=18 Palabras claves del lenguaje: contiene la lista de los términos reservados del lenguaje, que no pueden ser utilizados como nombres de variables, clases o métodos. Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 35 - 38). Madrid, ES: McGrawHill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=18 Tipos de datos y operadores: descripción y ejemplos del manejo de diferentes tipos de datos y operadores Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 39 - 80). Madrid, ES: McGrawHill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=56 Condicionales y ciclos: ejemplos de manejo de condicionales y ciclos Schildt, H. (2010). Fundamentos de C# 3.0. (pp. 81 - 117). Madrid, ES: McGrawHill España. Recuperado dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=1051 5217&ppg=56