Usuario:Amaca/proyecto

De Wikilibros, la colección de libros de texto de contenido libre.

Proyecto Copa Mustang Fútbol colombiano.[editar]

Presentación

Somos Sergio Daniel Fernández y Andrés Mauricio Arango, estudiantes de Informática Matemática de la Pontificia Universidad Javeriana de Colombia en Bogotá, estamos haciendo un proyecto que consiste en crear un software que nos permita hacer de manera automatica la tabla de posiciones de la copa Mustang según los resultados que se presenten cada fecha. Cada uno de nosotros tiene un blog o diario de campo donde escribimos lo que tenemos pensado para hacer en el proyecto:Blog de Andrés Blog de Sergio


Los items que queremos que calcule el software son: Partidos jugados, partidos ganados, partidos perdidos, partidos empatados, puntos(cada partido ganado significan 3 puntos mas, cada partido empatado suma un punto y cada partido perdido no suma puntos), goles a favor(goles que ha anotado el equipo), goles en contra(goles que ha recibido el arco defendido por cada equipo), total de goles(la suma entre goles a favor y goles en contra teniendo en cuenta que los goles en contra tienen valor negativo), tarjetas rojas y amarillas(cada tarjeta es una sanción disciplinaria que el árbitro hace al jugador cuando ha cometido faltas contra otro jugador o cuando su comportamiento es indebido).


Desarrollo


Tabla de resultados[editar]

La tabla de resultados que queremos se muestre como salida después de haber obtenido los datos es la siguiente: (éste sólo es un ejemplo, y obviamente se le podrán agregar más equipos) (PJ: Partidos Jugados, PG: Partidos Ganados, PP: Partidos Perdidos, PE: Partidos Empatados)

Tabla de equipos
Equipos PJ PG PP PE Puntos
Nacional 3 2 0 1 7
Medellín 3 2 1 0 6
América 3 1 1 1 4

Para poder realizar el proyecto, debemos saber el calendario y el sistema del campeonato; los podemos encontrar en la Página de la Asociación de clubes del fútbol colombiano

Para referencia acerca de cómo usar python, hay una páguna muy buena, una página que contiene varios manuales en español e inglés: [[1]], esperamos que sea de gran ayuda para ustedes.


Ejemplo de bucles y sentencias[editar]

Un ejemplo sencillo de cómo manejar los bucles y sentencias, que después serán de gran ayuda para manejar resultados es el siguiente:

while a<10:
  print a
  a=a+3


El proyecto será llevado a cabo desde Python. La página de descarga de DrPython es: http://drpython.sourceforge.net/, allí se encuentra lo relacionado con DrPython, como soporte técnico y descargas entre otras. La página sobre wxPython es: http://www.wxpython.org/, en donde se puede encontrar todo lo referente a wxPython.

Instalación de DrPython[editar]

Para la instalación de DrPython en windows usted necesita tener:

  1. Python 2.3.0 o mayor
  2. WxPython 2.5.2.7 o mayor


Paso 1) Instalar Python, y wxPython.

Paso 2) Descargue el archivo .zip de DPython, y descomprimalo en la ruta que especifica DrPython.

Paso 3) Busque el archivo drpython.pyw en la ruta donde descomprimió el archivo .zip y haga doble click en él.


Producto Cartesiano[editar]

El campeonato Copa Mustang del fútbol profesional colombiano, es semestral y tiene dos fases: la pimera es una ronda "todos contra todos" de ida, es decir cada equipo juega sólamente una vez contra los demás equipos inscritos en el campeonato; la segunda ronda consta de dos cuadrangulares que se arman con los 8 primeros equipos en la tabla (quienes tengan mayor número de puntos al terminarse la primera fase) la final es jugada por el gandor de cada cuadrangular en un partido de ida y vuelta(dos partidos; uno en el estadio de cada equipo).

Para poder hacer esto, utilizamos un producto cartesiano: Primero, hacemos una lista con los nombres de todos los equipos:

equipos = ['Nacional', 'Medellin'...]

Luego, hacemos que estos los equipos jueguen todos contra todos:

enfrentamientos_posibles = [(i,j) for i in equipos for j in equipos]
print enfrentamientos_posibles

Ahí muestra cada equipo jugar contra los demás.


Eliminación de parejas repetidas[editar]

Como siguiente paso eliminamos las parejas que contienen el mismo elemento, es decir, las de la forma (i, i); esto lo logramos ejecutando el siguiente código:

for i in range(len(enfrentamientos_posibles)-len(equipos)-1):
  print i
  if enfrentamientos_posibles[i][0] == enfrentamientos_posibles[i][1]:
    del enfrentamientos_posibles[i]
    print enfrentamientos_posibles


Eliminación de parejas permutadas[editar]

El código para eliminar parejas permutadas, es decir, las de la forma (i,j)-(j,i), es el siguiente:

 for i in range(len(enfrentamientos_posibles)-2):
  for j in range(len(enfrentamientos_posibles)-1):
   if i < j or i > j:
    if enfrentamientos_posibles[i][0] == enfrentamientos_posibles[j][1] and enfrentamientos_posibles[i][1] == enfrentamientos_posibles[j][0]:
     del enfrentamientos_posibles[j]
 print enfrentamientos_posibles
  • El -2 que aparece en la primera línea del anterior código cambia de valor según el número de equipos:

Relación Nº d equipos - Nº Restado

3  --> -2              
4  --> -5              
5  --> -9
6  --> -14
7  --> -20
8  --> -27
9  --> -35
10 --> -44        
11 --> -54
12 --> -65
13 --> -77
14 --> -90
15 --> -104
16 --> -119
17 --> -135
18 --> -152

Diagrama de flujo[editar]


Para más información sobre diagramas de flujo visita


¿Qué es?[editar]


Un diagrama de flujo o flujograma, consiste en representar gráficamente hechos, situaciones, movimientos o relaciones de todo tipo, por medio de símbolos y sus principales características son las de definir, analizar, medir, mejorar y controlar; y se basan en la crearividad, reunión de datos, análisis de datos, toma de desición, planeacón y trabajo en equipo.


Características de un Diagrama de Flujo[editar]


Hay muchas formas de clasificar las caractarísticas de los diagramas de flujo y varían según los autores. Aquí citamos algunas de las clasificaciones más importantes.


Primera Clasificación[editar]



Sintética[editar]

Es la capacidad de resumen que hay en él ya que los diagramas extensos dificultan la comprensión y asimilación; y por esta razón dejan de ser prácticos.


Simbolizada[editar]

Es la utiñización de símbolos que permiten anotaciones excesivas, repetitivas y confusas en la interpretación.


De forma visible a un sistema o un proceso[editar]

Los diagramas nos permiten observar todos los pasos de un sistema o proceso sin necesidad de leer notas extensas.


Segunda Clasificación[editar]


  • Permitir al analista asegurarse que ha desarrollado todos los aspectos del procedimiento.
  • Dar las bases para escribir un informe claro y lógico.
  • Es un medio para establecer un enlace con el personal que eventualmente operará el nuevo procedimiento.


Tercera Clasificación[editar]



De uso[editar]

Permite facilitar su empleo.


De destino[editar]

Permite la correcta identificación de actividades.


De comprensión e interpretación[editar]

Permite simplificar su comprensión.


De interacción[editar]

Permite el acercamiento y coordinación.


De simbología[editar]

Disminuye la complejidad y accesibilidad.


De diagramación[editar]

Se elabora con rapidez y no requiere de recursos sofisticados.