Evidencia 2

Nombre: Eliasib Juarez Verdugo Matrícula: 2814914 Nombre del curso: Nombre del profesor: Fundamentos de programación

Views 300 Downloads 1 File size 780KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Nombre: Eliasib Juarez Verdugo

Matrícula: 2814914

Nombre del curso:

Nombre del profesor:

Fundamentos de programación

Elvia Margarita Barragan Delgado

Módulo: 1

Actividad:

Temas 9- 15

Exidencia 2

Fecha: Martes, •

4 de Abril de 2017

Bibliografía:

• Savitch, W. (2007). Resolución de problemas con C++ (5ª ed.). México: Pearson Education. • Joyanes, L. y Zahonero, I. (2011). Programación en Java 6, Algoritmos, programación orientada a objetos e interfaz gráfica de usuario. México: Mc Graw-Hill. • Cormen, T., Leiserson, C., Rivest, R. y Stein, C. (2001). Introduction to algorithms (2a ed.). Massachusetts, Estados Unidos: McGraw-Hill. • Hernández, M. (2010). Diagramas de flujo y pseudocódigo. Recuperado de http://www.uaeh.edu.mx/docencia/P_Presentaciones/.../ • Cormen, T., Leiserson, C., Rivest, R. y Stein, C. (2001). Introduction to algorithms (2ª ed.). Estados Unidos: McGraw-Hill. • Horner, M. (2005). Pro .NET 2.0 Code and Design Standards in C#. United States. Apress. • Savitch, W. (2007). Solución de problemas con C++ (5ª ed.). México: Person Education. • Savitch, W. (2005). Java an introduction to problem solving & programming. Nueva Jersey: Pearson Prentice Hal

Desarrolla la solución de un problema realizando el análisis, diseño (pseudocódigo o diagrama de flujo) y la programación en un lenguaje computacional. Resuelve el siguiente problema:

1. En las elecciones realizadas para la región del municipio de Cancún se tuvieron los siguientes resultados de votos: Distrito Juan Montes Pedro Zapata Ana Martínez Rogelio Guerra

1 194 48

2 180 20

3 221 90

4 432 50

206 45

320 16

140 20

821 14

5 820 6 1 946 18

2. Para la definición del programa debes considerar la siguiente información, que se obtuvo de la región de Cancún con base en sus necesidades:

a. Los datos de los votos por distrito para cada candidato deben ser leídos de un archivo. Distrito 1: Juan Montes: 194 Porecentaje: 4.1613% Pedro Zapata: 48 Porecentaje: 1.0296% Ana Martínez: 206 Porecentaje: 4.4187% Rogelio Guerra: 45 Porecentaje: 0.9653% Total de votos D1: 493 Porecentaje: 10.5749%

Distrito 2: Juan Montes: 180 Porecentaje: 3.8610% Pedro Zapata: 20 Porecentaje: 0.4290% Ana Martínez: 320 Porecentaje: 6.8640% Rogelio Guerra: 16 Porecentaje: 0.3432% Total de votos D2:536 Porecentaje: 11.4972%

Distrito 3: Juan Montes: 221 Porecentaje: 4.7405% Pedro Zapata: 90 Porecentaje: 1.9305% Ana Martínez: 140 Porecentaje: 3.0030% Rogelio Guerra: 20 Porecentaje: 0.4290% Total de votos D3:471 Porecentaje: 10.1030%

Distrito 4: Juan Montes: 432 Porecentaje: 9.2664% Pedro Zapata: 50 Porecentaje: 1.0725% Ana Martínez: 821 Porecentaje: 17.6105% Rogelio Guerra: 14 Porecentaje: 0.3003% Total de votos D4:1317 Porecentaje: 28.2497%

Distrito 5: Juan Montes: 820 Porecentaje: 17.5890% Pedro Zapata: 61 Porecentaje: 1.3085% Ana Martínez: 946 Porecentaje: 20.2917% Rogelio Guerra: 18 Porecentaje: 0.3861% Total de votos D5:1845 Porecentaje: 39.5753%

Votos totales en todos los distritos:

Juan Montes: 194 Porecentaje: % Pedro Zapata: 48 Porecentaje: % Ana Martínez: 206 Porecentaje: % Rogelio Guerra: 45 Porecentaje: % Total de votos D1: 493 Porecentaje: %

b. Se debe producir un reporte de resultados que se imprima en un archivo y que contenga: i. La tabla de resultados debe estar impresa y con los títulos incluidas. ii. Se debe mostrar el cálculo del número total de votos recibidos por cada candidato y el porcentaje del total de votos emitidos. iii. Se debe mostrar el candidato más votado. iv. Si alguno de los candidatos recibe más del 50% de los votos, imprimir un mensaje en el reporte que declare al ganador de las elecciones. v. Si ningún candidato recibió más del 50% de los votos, se debe imprimir el nombre de los 2 candidatos más votados, que serán los que pasarán a la segunda ronda.

3. Una vez que se tiene la información y especificaciones para desarrollar el programa, la solución deberá contener lo siguiente: a. Análisis: examina los requerimientos y genera una lista de todas las necesidades que identifiques del sistema. Define las entradas,

procesos y salidas. Entradas:Candidatos, distritos, votos, municipio de cancun. Procesos: suma total; de votos, por municipio, candidato. sacar

porcentaje de; votos por candidato, candidato con mas de 50%, 2 candidatos con mas alto porcentaje.candidato mas votado sea declarado ganador.

Salidas:Votos totales, total de votos por municipio,total de votos por

candidato, porcentaje de votos por candidato, candidato mas votado, candidato con mas de 50% de votos sea declarado ganador, si no hay candidato con mas de 50% imprimir 2 candidatos que pasaran a la segunda ronda.

b. Diseño: plantea el algoritmo de solución general del programa y los algoritmos para la lógica de cada uno de los indicadores que pide el reporte. Deberás tomar en cuenta el diseño modular para dividir la solución en subpartes a través del uso de funciones. Genera también el diseño de casos de prueba (mínimo 5) que te permitan probar todos los escenarios que pide el programa; no olvides tomar en cuenta los casos de prueba en caso de que algún archivo no exista, o que el formato de entrada sea el incorrecto (cada prueba deberá contener un identificador, la descripción de la prueba, las entradas y las salidas esperadas). c. Codificación: programa la solución usando C++, incluye el comentario de encabezado de cada una de las funciones, en donde se muestre el objetivo de la función, la definición de parámetros y los retornos (si aplican). El programa deberá realizarse aplicando arreglos y archivos.

d. Pruebas: ejecuta las pruebas y documenta la evidencia de cada caso de prueba. Genera el reporte de la ejecución de pruebas.

4. Recuerda que el programa debe usar las mejores prácticas de documentación e indentación de código.

Municipio: Número total de votos recibidos por cada candidato: Juan Montes: 1847 Porecentaje: 39.6182% Pedro Zapata: 269 Porecentaje: 5.7701% Ana Martínez: 2433 Porecentaje: 52.1879% Rogelio Guerra: 113 Porecentaje: 2.4239%

Porcentaje del total de votos emitidos: 4662=100% 46.62=1% Candidato más votado: Ana Martínez: 2433

Más del 50% de los votos, declare al ganador de las elecciones: