publi

jueves, 3 de enero de 2019

Codigo programa para estadisticas deportivas

Hace algunos meses escribí un pequeño código para generar estadísticas de equipos deportivos en Blitz 3D, y, bueno, hoy aprovecho para crear esta entrada en mi blog para compartir el código.

Por otra parte, y, como una pequeña descripción del código, el programa permite generar las estadísticas/resultados de un equipo deportivo, y, por otra parte, ver los resultados de los partidos que ha jugado contra otro equipo.

Entonces, el código es el siguiente:

Código:
base$=CurrentDir()+"BD_eventos_deportivos\"
If FileType(base$)=0
CreateDir base$
EndIf
Cls
Locate 0,0
Print "Inserte el pais donde se realizan los partidos:"
pais$=Input()
If pais$=""
Cls
Locate 0,0
Print "No ha insertado un nombre valido."
Print "Pulse una tecla para salir del programa."
WaitKey()
End
EndIf
base$=base$+pais$+"\"
If FileType(base$)=0
CreateDir base$
EndIf
Print "Inserte el nombre del deporte:"
pais$=Input()
If pais$=""
Cls
Locate 0,0
Print "No ha insertado un nombre valido."
Print "Pulse una tecla para salir del programa."
WaitKey()
End
EndIf
base$=base$+pais$
Cls
Locate 0,0
If FileType(base$)=0 Or FileType(base$)=2
Print "No hay datos del deporte indicado."
Print "Pulse una tecla para seguir."
WaitKey()
Goto inicio
EndIf
If FileType(base$)=1
Print "Ya existe un archivo con datos del deporte indicado."
Print "Pulse una tecla para cargar los datos."
WaitKey()
fileout=ReadFile(base$)
cantidad_equipos#=ReadFloat(fileout)
cantidad_partidos#=ReadFloat(fileout)
If cantidad_equipos#=0
Goto carga_00
EndIf
cantidad_equipos#=cantidad_equipos#-1
Dim lista_equipos$(cantidad_equipos#)
For tr#=0 To cantidad_equipos#
dat$=ReadString(fileout)
lista_equipos$(tr#)=dat$
Next
cantidad_equipos#=cantidad_equipos#+1
.carga_00
If cantidad_partidos#=0
Goto carga_01
EndIf
cantidad_partidos#=cantidad_partidos#-1
Dim lista_partidos$(cantidad_partidos#,2)
Dim resultados_partidos#(cantidad_partidos#,1)
For tr#=0 To cantidad_partidos#
For trr#=0 To 2
dat$=ReadString(fileout)
lista_partidos$(tr#,trr#)=dat$
Next
For trr#=0 To 1
opciones#=ReadFloat(fileout)
resultados_partidos#(tr#,trr#)=opciones#
Next
Next
cantidad_partidos#=cantidad_partidos#+1
.carga_01
CloseFile(fileout)
Cls
Locate 0,0
Print "Los datos se han cargado."
Print "Pulse una tecla para continuar."
WaitKey()
Goto inicio
EndIf
.inicio
Cls
Locate 0,0
Print "¿Que desea hacer?."
Print "1) Crear un equipo o modificar el nombre de uno existente."
Print "2) Añadir/modificar un partido."
Print "3) Ver una lista de todos los equipos."
Print "4) Ver todos los partidos."
Print "5) Ver los partidos de un equipo."
Print "6) Modificar un partido guardado en este programa."
Print "7) Ver las estadisticas generales de un equipo." ;faltan porcentajes
Print "8) Ver las posibilidades de un partido." ;faltan porcentajes
Print "9) Salir del programa."
opciones#=Input()
If opciones#=1
Cls
Locate 0,0
Print "Inserte el nombre del equipo a crear o modificar su nombre:"
dat$=Input()
If dat$=""
Print "Ha insertado un nombre no valido."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
If cantidad_equipos#=0
Dim lista_equipos$(cantidad_equipos#)
lista_equipos$(cantidad_equipos#)=dat$
cantidad_equipos#=cantidad_equipos#+1
Cls
Locate 0,0
Print "Se ha creado el equipo con el nombre indicado."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
If cantidad_equipos#>0
cantidad_equipos#=cantidad_equipos#-1
For tr#=0 To cantidad_equipos#
If dat$=lista_equipos$(tr#)
.modificar_nombre_equipo
Cls
Locate 0,0
Print "Ya existe un equipo con el nombre indicado."
Print "¿Desea modificar su nombre? (S/N)."
dat$=Input()
If dat$="S" Or dat$="s"
Cls
Locate 0,0
Print "Inserte el nuevo nombre del equipo:"
dat$=Input()
If dat$=""
Print "Ha insertado un nombre no valido."
Print "Pulse una tecla para volver al menu inicial."
cantidad_equipos#=cantidad_equipos#+1
WaitKey()
Goto inicio
EndIf
For trr#=0 To cantidad_equipos#
If dat$=lista_equipos$(trr#)
Cls
Locate 0,0
Print "El nombre indicado ya esta en uso."
Print "Pulse una tecla para volver al menu inicial."
cantidad_equipos#=cantidad_equipos#+1
WaitKey()
Goto inicio
EndIf
Next
lista_equipos$(tr#)=dat$
cantidad_equipos#=cantidad_equipos#+1
Cls
Locate 0,0
Print "Se ha modificado el nombre del equipo."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
If dat$="N" Or dat$="n"
cantidad_equipos#=cantidad_equipos#+1
Cls
Locate 0,0
Print "No se ha modificado el nombre del equipo."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Goto modificar_nombre_equipo
EndIf
Next
Dim lista_equipos_b$(cantidad_equipos#)
For tr#=0 To cantidad_equipos#
dat_b$=lista_equipos$(tr#)
lista_equipos_b$(tr#)=dat_b$
Next
cantidad_equipos#=cantidad_equipos#+1
Dim lista_equipos$(cantidad_equipos#)
cantidad_equipos#=cantidad_equipos#-1
For tr#=0 To cantidad_equipos#
dat_b$=lista_equipos_b$(tr#)
lista_equipos$(tr#)=dat_b$
Next
cantidad_equipos#=cantidad_equipos#+1
lista_equipos$(cantidad_equipos#)=dat$
cantidad_equipos#=cantidad_equipos#+1
Cls
Locate 0,0
Print "Se ha creado el equipo con el nombre indicado."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
EndIf
If opciones#=2
Cls
Locate 0,0
If cantidad_equipos#<2
Print "Ha creado menos de 2 equipo."
Print "Debe crear 2 o mas para acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
cantidad_equipos#=cantidad_equipos#-1
Print "Inserte el nombre del 1er equipo:"
dat$=Input()
For tr#=0 To cantidad_equipos#
If dat$=lista_equipos$(tr#)
Print "Inserte el nombre del 2er equipo:"
dat_b$=Input()
For trr#=0 To cantidad_equipos#
If dat_b$=lista_equipos$(trr#)
cantidad_equipos#=cantidad_equipos#+1
.fecha_00
Cls
Locate 0,0
Print "Inserte la fecha del partido:"
daty$=Input()
Cls
Locate 0,0
Print "Inserte la puntuacion del equipo " + dat$
var_00#=Input()
Cls
Locate 0,0
Print "Inserte la puntuacion del equipo " + dat_b$
var_01#=Input()
.confirm_00
Cls
Locate 0,0
Print "Los datos del partido son los siguientes:"
Print "Fecha del partido:"
Print daty$
Print ""
Print "Nombre del 1er equipo y puntuacion:"
Print dat$ + " " + var_00#
Print ""
Print "Nombre del 2o equipo y puntuacion:"
Print dat_b$ + " " + var_01#
Print "¿Que desea hacer?."
Print "1) Reinsertar todos los datos del partido."
Print "2) Guardar los datos del partido y volver al menu inicial."
Print "3) Descartar los datos del partido y volver al menu inicial."
opciones#=Input()
If opciones#=1
Goto fecha_00
EndIf
If opciones#=2
If cantidad_partidos#=0
Dim lista_partidos$(cantidad_partidos#,2)
Dim resultados_partidos#(cantidad_partidos#,1)
lista_partidos$(cantidad_partidos#,0)=daty$
lista_partidos$(cantidad_partidos#,1)=dat$
lista_partidos$(cantidad_partidos#,2)=dat_b$
resultados_partidos#(cantidad_partidos#,0)=var_00#
resultados_partidos#(cantidad_partidos#,1)=var_01#
cantidad_partidos#=cantidad_partidos#+1
Cls
Locate 0,0
Print "Los datos del partido se han guardado."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
If cantidad_partidos#>0
cantidad_partidos#=cantidad_partidos#-1
Dim lista_partidos_b$(cantidad_partidos#,2)
Dim resultados_partidos_b#(cantidad_partidos#,1)
For trn#=0 To cantidad_partidos#
For tts#=0 To 2
dat_c$=lista_partidos$(trn#,tts#)
lista_partidos_b$(trn#,tts#)=dat_c$
Next
For tts#=0 To 1
opcs#=resultados_partidos#(trn#,tts#)
resultados_partidos_b#(trn#,tts#)=opcs#
Next
Next
cantidad_partidos#=cantidad_partidos#+1
Dim lista_partidos$(cantidad_partidos#,2)
Dim resultados_partidos#(cantidad_partidos#,1)
cantidad_partidos#=cantidad_partidos#-1
For trn#=0 To cantidad_partidos#
For tts#=0 To 2
dat_c$=lista_partidos_b$(trn#,tts#)
lista_partidos$(trn#,tts#)=dat_c$
Next
For tts#=0 To 1
opcs#=resultados_partidos_b#(trn#,tts#)
resultados_partidos#(trn#,tts#)=opcs#
Next
Next
cantidad_partidos#=cantidad_partidos#+1
lista_partidos$(cantidad_partidos#,0)=daty$
lista_partidos$(cantidad_partidos#,1)=dat$
lista_partidos$(cantidad_partidos#,2)=dat_b$
resultados_partidos#(cantidad_partidos#,0)=var_00#
resultados_partidos#(cantidad_partidos#,1)=var_01#
cantidad_partidos#=cantidad_partidos#+1
Cls
Locate 0,0
Print "Los datos del partido se han guardado."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
EndIf
If opciones#=3
Goto inicio
EndIf
Goto confirm_00
EndIf
Next
Cls
Locate 0,0
Print "No se ha encontrado ningun equipo con el nombre indicado."
Print "Pulse una tecla para volver al menu inicial."
cantidad_equipos#=cantidad_equipos#+1
WaitKey()
Goto inicio
EndIf
Next
Cls
Locate 0,0
Print "No se ha encontrado ningun equipo con el nombre indicado."
Print "Pulse una tecla para volver al menu inicial."
cantidad_equipos#=cantidad_equipos#+1
WaitKey()
Goto inicio
EndIf
If opciones#=3
Cls
Locate 0,0
If cantidad_equipos#<1
Print "No ha creado ningun equipo."
Print "Debe crear almenos 1 antes de acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
cantidad_equipos#=cantidad_equipos#-1
trr#=0
For tr#=0 To cantidad_equipos#
trr#=trr#+1
trx#=tr#+1
Print "Equipo no. " + trx# + ":"
Print lista_equipos$(tr#)
If trr#=10
Print ""
Print "Inserte R o r para volver al menu inicial y"
Print "dejar de ver equipos."
dat$=Input()
If dat$="R" Or dat$="r"
cantidad_equipos#=cantidad_equipos#+1
Goto inicio
EndIf
trr#=0
Cls
Locate 0,0
EndIf
Next
Print ""
Print "No hay mas equipos."
Print "Pulse una tecla para volver al menu inicial."
cantidad_equipos#=cantidad_equipos#+1
WaitKey()
Goto inicio
EndIf
If opciones#=4
Cls
Locate 0,0
If cantidad_partidos#=0
Print "No se ha creado ningun partido."
Print "Debe crear almenos uno antes de acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
cantidad_partidos#=cantidad_partidos#-1
trn#=0
For tr#=0 To cantidad_partidos#
trr#=tr#+1
trn#=trn#+1
Print "Numero de partido:" + trr#
Print "Fecha/referencia del partido:"
Print lista_partidos$(tr#,0)
Print ""
Print "Equipos/resultados:"
Print lista_partidos$(tr#,1) + " / " + lista_partidos$(tr#,2)
Print ""
Print resultados_partidos#(tr#,0) + " / " + resultados_partidos#(tr#,1)
Print ""
If trn#=3
trn#=0
Print "Inserte R o r para volver al menu inicial y dejar de"
Print "ver los resultados de cada partido."
dat$=Input()
If dat$="R" Or dat$="r"
cantidad_partidos#=cantidad_partidos#+1
Goto inicio
EndIf
Cls
Locate 0,0
EndIf
Next
cantidad_partidos#=cantidad_partidos#+1
Print ""
Print "No hay mas partidos para mostrar."
Print "Pulse una tecla para volver al menu inicial"
WaitKey()
Goto inicio
EndIf
If opciones#=5
Cls
Locate 0,0
If cantidad_partidos#=0
Print "No se ha creado ningun partido."
Print "Debe crear almenos uno antes de acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
cantidad_partidos#=cantidad_partidos#-1
trn#=0
Print "Indique el nombre del equipo que quiere ver sus partidos:"
dat$=Input()
trr#=0
For tr#=0 To cantidad_partidos#
If dat$=lista_partidos$(tr#,1) Or dat$=lista_partidos$(tr#,2)
trr#=tr#+1
trn#=trn#+1
Print "Numero de partido:" + trr#
Print "Fecha/referencia del partido:"
Print lista_partidos$(tr#,0)
Print ""
Print "Equipos/resultados:"
Print lista_partidos$(tr#,1) + " / " + lista_partidos$(tr#,2)
Print ""
Print resultados_partidos#(tr#,0) + " / " + resultados_partidos#(tr#,1)
Print ""
If trn#=5
trn#=0
Print "Inserte R o r para volver al menu inicial y dejar de"
Print "ver los resultados de cada partido."
dat$=Input()
If dat$="R" Or dat$="r"
cantidad_partidos#=cantidad_partidos#+1
Goto inicio
EndIf
EndIf
EndIf
Next
cantidad_partidos#=cantidad_partidos#+1
If trr#=0
Cls
Locate 0,0
Print "El equipo que ha indicado no ha jugado ningun partido."
.retorno_menu_inicial
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Print ""
Print "El equipo indicado no ha jugado mas partidos."
Goto retorno_menu_inicial
EndIf
If opciones#=6
Cls
Locate 0,0
If cantidad_partidos#=0
Print "No se ha creado ningun partido."
Print "Debe crear almenos uno antes de acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Print "Inserte el numero del partido que se ha"
Print "guardado en este programa:"
Print "(Inserte un valor menor a 1 o mayor a " + cantidad_partidos#
Print " para volver al menu inicial.)"
opciones#=Input()
If opciones#<0 Or opciones#>cantidad_partidos#
Goto inicio
EndIf
tr#=opciones#-1
.confirmacion_mod_partido
Cls
Locate 0,0
Print "Datos del partido:"
Print "Numero de partido:" + opciones#
Print "Fecha/referencia del partido:"
Print lista_partidos$(tr#,0)
Print ""
Print "Equipos/resultados:"
Print lista_partidos$(tr#,1) + " / " + lista_partidos$(tr#,2)
Print ""
Print resultados_partidos#(tr#,0) + " / " + resultados_partidos#(tr#,1)
Print "¿Esta seguro que desea modificar el resultado de este partido? (S/N)."
dat$=Input()
If dat$="S" Or dat$="s"
.confirm_new_result_01
Cls
Locate 0,0
Print "Inserte el resultado del equipo " + lista_partidos$(tr#,1)
var_00#=Input()
Print "Inserte el resultado del equipo " + lista_partidos$(tr#,2)
var_01#=Input()
.confirm_new_result_00
Cls
Locate 0,0
Print "Numero del partido: " + opciones#
Print "El resultado actual del partido " + lista_partidos$(tr#,1) + " / " + lista_partidos$(tr#,2)
Print "es el siguiente:
Print var_00# + " / " + var_01#
Print ""
Print "El nuevo resultado del partido " + lista_partidos$(tr#,1) + " / " + lista_partidos$(tr#,2)
Print "es el siguiente:
Print resultados_partidos#(tr#,0) + " / " + resultados_partidos#(tr#,1)
Print ""
Print "¿Que desea hacer?."
Print "1) Modificar el nuevo resultado."
Print "2) Descartar el nuevo resultado."
Print "3) Guardar el nuevo resultado."
options#=Input()
If options#=1
Goto confirm_new_result_01
EndIf
If options#=2
Goto inicio
EndIf
If options#=3
resultados_partidos#(tr#,0)=var_00#
resultados_partidos#(tr#,1)=var_01#
Cls
Locate 0,0
Print "Resultado modificado."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Goto confirm_new_result_00
EndIf
If dat$="N" Or dat$="n"
Goto inicio
EndIf
Goto confirmacion_mod_partido
EndIf
If opciones#=7
Cls
Locate 0,0
If cantidad_equipos#<2
Print "Ha creado menos de 2 equipos."
Print "Debe crear 2 o mas para acceder a esta opcion."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
If cantidad_partidos#=0
Print "No hay datos sobre ninguno de los equipos insertados,"
Print "ya que ninguno ha jugado ningun partido."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Cls
Locate 0,0
Print "Inserte el nombre del equipo para ver sus datos:"
dat$=Input()
cantidad_partidos#=cantidad_partidos#-1
Dim estadistica#(10)
For tr#=0 To cantidad_partidos#
If dat$=lista_partidos$(tr#,1)
opciones#=estadistica#(0)
opciones#=opciones#+1
;partidos jugados
estadistica#(0)=opciones#
opciones_b#=estadistica#(1)
opciones_c#=resultados_partidos#(tr#,0)
opciones_b#=opciones_b#+opciones_c#
estadistica#(1)=opciones_b#
opciones_b#=estadistica#(3)
opciones_c#=resultados_partidos#(tr#,1)
opciones_b#=opciones_b#+opciones_c#
estadistica#(3)=opciones_b#
opciones_b#=resultados_partidos#(tr#,0)
opciones_c#=resultados_partidos#(tr#,1)
If opciones_b#>opciones_c#
opciones_e#=5
EndIf
If opciones_b#=opciones_c#
opciones_e#=6
EndIf
If opciones_b#<opciones_c#
opciones_e#=7
EndIf
opciones_d#=estadistica#(opciones_e#)
opciones_d#=opciones_d#+1
estadistica#(opciones_e#)=opciones_d#
EndIf
If dat$=lista_partidos$(tr#,2)
opciones#=estadistica#(0)
opciones#=opciones#+1
;partidos jugados
estadistica#(0)=opciones#
opciones_b#=estadistica#(3)
opciones_c#=resultados_partidos#(tr#,0)
opciones_b#=opciones_b#+opciones_c#
estadistica#(3)=opciones_b#
opciones_b#=estadistica#(1)
opciones_c#=resultados_partidos#(tr#,1)
opciones_b#=opciones_b#+opciones_c#
estadistica#(1)=opciones_b#
opciones_b#=resultados_partidos#(tr#,0)
opciones_c#=resultados_partidos#(tr#,1)
If opciones_b#>opciones_c#
opciones_e#=7
EndIf
If opciones_b#=opciones_c#
opciones_e#=6
EndIf
If opciones_b#<opciones_c#
opciones_e#=5
EndIf
opciones_d#=estadistica#(opciones_e#)
opciones_d#=opciones_d#+1
estadistica#(opciones_e#)=opciones_d#
EndIf
Next
;media de goles
opciones#=estadistica#(0)
opciones_b#=estadistica#(1)
opciones_b#=opciones_b#/opciones#
estadistica#(2)=opciones_b#
opciones_b#=estadistica#(3)
opciones_b#=opciones_b#/opciones#
estadistica#(4)=opciones_b#
opciones#=estadistica#(0)
For txx#=0 To 2
txr#=txx#+5
txn#=txx#+8
opciones_b#=estadistica#(txr#)
opciones_b#=opciones_b#/opciones#
opciones_b#=opciones_b#*100
estadistica#(txn#)=opciones_b#
Next
Cls
Locate 0,0
Print "Nombre del equipo: " + dat$
Print "Partidos jugados: " + estadistica#(0)
Print "Puntos totales marcados: " + estadistica#(1)
Print "Media de puntos totales marcados: " + estadistica#(2)
Print "Puntos totales que le han marcado: " + estadistica#(3)
Print "Media de puntos totales que le han marcado: " + estadistica#(4)
Print "Partidos ganados: " + estadistica#(5)
Print "Partidos perdidos: " + estadistica#(6)
Print "Partidos empatados: " + estadistica#(7)
Print "Posibilidades generales de ganar: " + estadistica#(8)
Print "Posibilidades generales de empatar: " + estadistica#(9)
Print "Posibilidades generales de perder: " + estadistica#(10)
Print ""
Print "No hay mas datos que mostrar."
Print "Pulse una tecla para volver al menu inicial."
cantidad_partidos#=cantidad_partidos#+1
WaitKey()
Goto inicio
EndIf
If opciones#=8
Cls
Locate 0,0
opciones_d#=0
If cantidad_partidos#=0
Print "No hay datos sobre partidos, ya"
Print "que ninguno ha jugado ningun partido."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
EndIf
Dim equipos_00$(1)
Cls
Locate 0,0
Print "Inserte el nombre del 1er equipo:"
dat$=Input()
equipos_00$(0)=dat$
cantidad_equipos#=cantidad_equipos#-1
For tr#=0 To cantidad_equipos#
If dat$=lista_equipos$(tr#)
cantidad_equipos#=cantidad_equipos#+1
Goto busquedas_equipos_var_nn
EndIf
Next
cantidad_equipos#=cantidad_equipos#+1
Print "No se ha encontrado ningun equipo con el 1er nombre."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
.busquedas_equipos_var_nn
Cls
Locate 0,0
Print "Inserte el nombre del 2o equipo:"
dat$=Input()
cantidad_equipos#=cantidad_equipos#-1
equipos_00$(1)=dat$
var#=0
Cls
Locate 0,0
For tr#=0 To cantidad_equipos#
If dat$=lista_equipos$(tr#)
cantidad_equipos#=cantidad_equipos#+1
Goto busquedas_equipos_var
EndIf
Next
cantidad_equipos#=cantidad_equipos#+1
Print "No se ha encontrado ningun equipo con el 2o nombre."
Print "Pulse una tecla para volver al menu inicial."
WaitKey()
Goto inicio
.busquedas_equipos_var
cantidad_partidos#=cantidad_partidos#-1
Dim estadistica_b#(1,10)
For trx#=0 To 1
dat$=equipos_00$(trx#)
For tr#=0 To cantidad_partidos#
If dat$=lista_partidos$(tr#,1)
opciones#=estadistica_b#(trx#,0)
opciones#=opciones#+1
;partidos jugados
estadistica_b#(trx#,0)=opciones#
opciones_b#=estadistica_b#(trx#,1)
opciones_c#=resultados_partidos#(tr#,0)
opciones_b#=opciones_b#+opciones_c#
estadistica_b#(trx#,1)=opciones_b#
opciones_b#=estadistica_b#(trx#,3)
opciones_c#=resultados_partidos#(tr#,1)
opciones_b#=opciones_b#+opciones_c#
estadistica_b#(trx#,3)=opciones_b#
opciones_b#=resultados_partidos#(tr#,0)
opciones_c#=resultados_partidos#(tr#,1)
If opciones_b#>opciones_c#
opciones_e#=5
EndIf
If opciones_b#=opciones_c#
opciones_e#=6
EndIf
If opciones_b#<opciones_c#
opciones_e#=7
EndIf
opciones_d#=estadistica_b#(trx#,opciones_e#)
opciones_d#=opciones_d#+1
estadistica_b#(trx#,opciones_e#)=opciones_d#
EndIf
If dat$=lista_partidos$(tr#,2)
opciones#=estadistica_b#(trx#,0)
opciones#=opciones#+1
;partidos jugados
estadistica_b#(trx#,0)=opciones#
opciones_b#=estadistica_b#(trx#,3)
opciones_c#=resultados_partidos#(tr#,0)
opciones_b#=opciones_b#+opciones_c#
estadistica_b#(trx#,3)=opciones_b#
opciones_b#=estadistica_b#(trx#,1)
opciones_c#=resultados_partidos#(tr#,1)
opciones_b#=opciones_b#+opciones_c#
estadistica_b#(trx#,1)=opciones_b#
opciones_b#=resultados_partidos#(tr#,0)
opciones_c#=resultados_partidos#(tr#,1)
If opciones_b#>opciones_c#
opciones_e#=7
EndIf
If opciones_b#=opciones_c#
opciones_e#=6
EndIf
If opciones_b#<opciones_c#
opciones_e#=5
EndIf
opciones_d#=estadistica_b#(trx#,opciones_e#)
opciones_d#=opciones_d#+1
estadistica_b#(trx#,opciones_e#)=opciones_d#
EndIf
Next
;media de goles
opciones#=estadistica_b#(trx#,0)
opciones_b#=estadistica_b#(trx#,1)
opciones_b#=opciones_b#/opciones#
estadistica_b#(trx#,2)=opciones_b#
opciones_b#=estadistica_b#(trx#,3)
opciones_b#=opciones_b#/opciones#
estadistica_b#(trx#,4)=opciones_b#
opciones#=estadistica_b#(trx#,0)
For txx#=0 To 2
txr#=txx#+5
txn#=txx#+8
opciones_b#=estadistica_b#(trx#,txr#)
opciones_b#=opciones_b#/opciones#
opciones_b#=opciones_b#*100
estadistica_b#(trx#,txn#)=opciones_b#
Next
Next
dat$=equipos_00$(0)
dat_b$=equipos_00$(1)
opciones_d#=0
checs_00#=0
Dim media_encuentros#(1,2)
Dim partidos_final_casa#(1,3)
Dim percents_partidos_final_casa#(1,2)
Dim goles_casa#(1,3)
For tr#=0 To cantidad_partidos#
If dat$=lista_partidos$(tr#,1)
If dat_b$=lista_partidos$(tr#,2)
opciones_a#=resultados_partidos#(tr#,0)
opciones_b#=resultados_partidos#(tr#,1)
opps#=goles_casa#(0,0)
opps#=opps#+opciones_a#
goles_casa#(0,0)=opps#
opps#=goles_casa#(0,1)
opps#=opps#+opciones_b#
goles_casa#(0,1)=opps#
opciones_d#=opciones_d#+1
checs_00#=checs_00#+1
If opciones_a#>opciones_b#
opciones_c#=partidos_final_casa#(0,0)
opciones_c#=opciones_c#+1
partidos_final_casa#(0,0)=opciones_c#
opciones_c#=media_encuentros#(0,0)
opciones_c#=opciones_c#+1
media_encuentros#(0,0)=opciones_c#
opciones_c#=media_encuentros#(1,2)
opciones_c#=opciones_c#+1
media_encuentros#(1,2)=opciones_c#
EndIf
If opciones_a#=opciones_b#
opciones_c#=partidos_final_casa#(0,1)
opciones_c#=opciones_c#+1
partidos_final_casa#(0,1)=opciones_c#
opciones_c#=media_encuentros#(0,1)
opciones_c#=opciones_c#+1
media_encuentros#(0,1)=opciones_c#
media_encuentros#(1,1)=opciones_c#
opciones_c#=media_encuentros#(1,1)
opciones_c#=opciones_c#+1
media_encuentros#(1,1)=opciones_c#
EndIf
If opciones_a#<opciones_b#
opciones_c#=partidos_final_casa#(0,2)
opciones_c#=opciones_c#+1
partidos_final_casa#(0,2)=opciones_c#
opciones_c#=media_encuentros#(0,2)
opciones_c#=opciones_c#+1
media_encuentros#(0,2)=opciones_c#
opciones_c#=media_encuentros#(1,0)
opciones_c#=opciones_c#+1
media_encuentros#(1,0)=opciones_c#
EndIf
EndIf
EndIf
If dat_b$=lista_partidos$(tr#,1)
If dat$=lista_partidos$(tr#,2)
opciones_a#=resultados_partidos#(tr#,1)
opciones_b#=resultados_partidos#(tr#,0)
opciones_d#=opciones_d#+1
opps#=goles_casa#(1,1)
opps#=opps#+opciones_a#
goles_casa#(1,1)=opps#
opps#=goles_casa#(1,0)
opps#=opps#+opciones_b#
goles_casa#(1,0)=opps#
If opciones_a#>opciones_b#
opciones_c#=partidos_final_casa#(1,2)
opciones_c#=opciones_c#+1
partidos_final_casa#(1,2)=opciones_c#
opciones_c#=media_encuentros#(0,0)
opciones_c#=opciones_c#+1
media_encuentros#(0,0)=opciones_c#
opciones_c#=media_encuentros#(1,2)
opciones_c#=opciones_c#+1
media_encuentros#(1,2)=opciones_c#
EndIf
If opciones_a#=opciones_b#
opciones_c#=partidos_final_casa#(1,1)
opciones_c#=opciones_c#+1
partidos_final_casa#(1,1)=opciones_c#
opciones_c#=media_encuentros#(0,1)
opciones_c#=opciones_c#+1
media_encuentros#(0,1)=opciones_c#
media_encuentros#(1,1)=opciones_c#
opciones_c#=media_encuentros#(1,1)
opciones_c#=opciones_c#+1
media_encuentros#(1,1)=opciones_c#
EndIf
If opciones_a#<opciones_b#
opciones_c#=partidos_final_casa#(1,0)
opciones_c#=opciones_c#+1
partidos_final_casa#(1,0)=opciones_c#
opciones_c#=media_encuentros#(0,2)
opciones_c#=opciones_c#+1
media_encuentros#(0,2)=opciones_c#
opciones_c#=media_encuentros#(1,0)
opciones_c#=opciones_c#+1
media_encuentros#(1,0)=opciones_c#
EndIf
EndIf
EndIf
Next
Dim percents#(1,2)
jenova_002#=0
jenova_003#=0
For tr#=0 To 1
For trr#=0 To 2
jenova_001#=partidos_final_casa#(tr#,trr#)
jenova_002#=jenova_002#+jenova_001#
jenova_003#=jenova_003#+jenova_001#
partidos_final_casa#(tr#,3)=jenova_002#
Next
jenova_002#=0
Next
For tr#=0 To 1
For trr#=0 To 2
opciones_a#=media_encuentros#(tr#,trr#)
opciones_b#=opciones_a#/opciones_d#
opciones_b#=opciones_b#*100
percents#(tr#,trr#)=opciones_b#
opciones_a#=partidos_final_casa#(tr#,trr#)
jenova_001#=partidos_final_casa#(tr#,3)
opciones_b#=opciones_a#/jenova_001#
opciones_b#=opciones_b#*100
percents_partidos_final_casa#(tr#,trr#)=opciones_b#
Next
Next
checs_01#=opciones_d#-checs_00#
Dim goles_finales#(1,1)
For te#=0 To 1
If te#=0
opciones_e#=checs_00#
EndIf
If te#=1
opciones_e#=checs_01#
EndIf
opciones_a#=goles_casa#(te#,0)
opciones_a#=opciones_a#/opciones_e#
goles_casa#(te#,2)=opciones_a#
opciones_a#=goles_casa#(te#,1)
opciones_a#=opciones_a#/opciones_e#
goles_casa#(te#,3)=opciones_a#
Next
opciones_a#=goles_casa#(0,0)
opciones_b#=goles_casa#(1,1)
opciones_c#=opciones_a#+opciones_b#
goles_finales#(0,0)=opciones_c#
opciones_a#=goles_casa#(1,0)
opciones_b#=goles_casa#(0,1)
opciones_c#=opciones_a#+opciones_b#
goles_finales#(1,0)=opciones_c#
opciones_c#=goles_finales#(0,0)
opciones_c#=opciones_c#/opciones_d#
goles_finales#(0,1)=opciones_c#
opciones_c#=goles_finales#(1,0)
opciones_c#=opciones_c#/opciones_d#
goles_finales#(1,1)=opciones_c#
Dim ratios_partido_home#(1,2)
For tr#=0 To 1
For trr#=0 To 2
opcional#=percents_partidos_final_casa#(tr#,trr#)
opcional_b#=100/opcional#
ratios_partido_home#(tr#,trr#)=opcional_b#
If opcional#=0
ratios_partido_home#(tr#,trr#)=0
EndIf
Next
Next
Print "Datos gral. de los partidos:"
Print ""
Print "Nombres de los equipos:"
Print dat$ + " / " + dat_b$
Print ""
Print "Ratio beneficios apuesta del partido"
Print "en casa:                            " + ratios_partido_home#(0,0) + " : " + ratios_partido_home#(0,1) + " : " + ratios_partido_home#(0,2) + " / " + ratios_partido_home#(0,0) + " : " + ratios_partido_home#(0,1) + " : " + ratios_partido_home#(0,2)
Print "Total de partidos jugados:          " + jenova_003#
Print "Partidos que han jugado en casa:    " + partidos_final_casa#(0,3) + " / " + partidos_final_casa#(1,3)
Print "Partidos ganados:                   " + media_encuentros#(0,0) + " (" + percents#(0,0) + "%) / " + media_encuentros#(1,0) + " (" + percents#(1,0) + "%)"
Print "Partidos ganados en casa:           " + partidos_final_casa#(0,0) + " (" + percents_partidos_final_casa#(0,0) + "%) / " + partidos_final_casa#(1,0) + " (" + percents_partidos_final_casa#(1,0) + "%)"
Print "Partidos empatados:                " + media_encuentros#(0,1) + " (" + percents#(0,1) + "%) / " + media_encuentros#(1,1) + " (" + percents#(1,1) + "%)"
Print "Partidos empatados en casa:        " + partidos_final_casa#(0,1) + " (" + percents_partidos_final_casa#(0,1) + "%) / " + partidos_final_casa#(1,1) + " (" + percents_partidos_final_casa#(1,1) + "%)"
Print "Partidos perdidos:                 " + media_encuentros#(0,2) + " (" + percents#(0,2) + "%) / " + media_encuentros#(1,2) + " (" + percents#(1,2) + "%)"
Print "Partidos perdidos en casa:         " + partidos_final_casa#(0,2) + " (" + percents_partidos_final_casa#(0,2) + "%) / " + partidos_final_casa#(1,2) + " (" + percents_partidos_final_casa#(1,2) + "%)"
Print "Goles marcados en casa:            " + goles_casa#(0,0) + " / " + goles_casa#(1,0)
Print "Goles que le han marcados en casa: " + goles_casa#(0,1) + " / " + goles_casa#(1,1)
Print "Resultado medio en casa:            " + goles_casa#(0,2) + " - " + goles_casa#(0,3) + " / " + goles_casa#(1,2) + " - " + goles_casa#(1,3)
Print "Total goles marcados:               " + goles_finales#(0,0) + " - " + goles_finales#(1,0)
Print "Media gral. goles marcados:         " + goles_finales#(0,1) + " - " + goles_finales#(1,1)
Print ""
Print "Datos gral. de los equipos:"
Print "Nombre del equipo: " + dat$ + " / " + dat_b$
Print "Partidos jugados:               " + estadistica_b#(0,0) + " / " + estadistica_b#(1,0)
Print "Puntos totales marcados: " + estadistica_b#(0,1) + " / " + estadistica_b#(1,1)
Print "Media de puntos totales marcados: " + estadistica_b#(0,2) + " / " + estadistica_b#(1,2)
Print "Puntos totales que le han marcado: " + estadistica_b#(0,3) + " / " + estadistica_b#(1,3)
Print "Media de puntos totales que le han marcado: " + estadistica_b#(0,4) + " / " + estadistica_b#(1,4)
Print "Partidos ganados: " + estadistica_b#(0,5) + " / " + estadistica_b#(1,5)
Print "Partidos empatados: " + estadistica_b#(0,6) + " / " + estadistica_b#(1,6)
Print "Partidos perdidos: " + estadistica_b#(0,7) + " / " + estadistica_b#(1,7)
Print "Posibilidades generales de ganar: " + estadistica_b#(0,8) + " / " +estadistica_b#(1,8)
Print "Posibilidades generales de empatar: " + estadistica_b#(0,9) + " / " +estadistica_b#(1,9)
Print "Posibilidades generales de perder: " + estadistica_b#(0,10) + " / " + estadistica_b#(1,10)
Print ""
Print "No hay mas datos que mostrar."
Print "Pulse una tecla para volver al menu inicial."
cantidad_partidos#=cantidad_partidos#+1
WaitKey()
Goto inicio
EndIf
If opciones#=9
.salida_programa
Cls
Locate 0,0
Print "¿Desea guardar los datos de los equipos y sus partidos? (S/N)."
dat$=Input()
If dat$="n" Or dat$="N"
End
EndIf
If dat$="s" Or dat$="S"
If FileType(base$)=1
DeleteFile base$
EndIf
fileout=WriteFile(base$)
WriteFloat(fileout,cantidad_equipos#)
WriteFloat(fileout,cantidad_partidos#)
If cantidad_equipos#=0
Goto carga_10
EndIf
cantidad_equipos#=cantidad_equipos#-1
For tr#=0 To cantidad_equipos#
dat$=lista_equipos$(tr#)
WriteString(fileout,dat$)
Next
.carga_10
If cantidad_partidos#=0
Goto carga_11
EndIf
cantidad_partidos#=cantidad_partidos#-1
For tr#=0 To cantidad_partidos#
For trr#=0 To 2
dat$=lista_partidos$(tr#,trr#)
WriteString(fileout,dat$)
Next
For trr#=0 To 1
opciones#=resultados_partidos#(tr#,trr#)
WriteFloat(fileout,opciones#)
Next
Next
.carga_11
Cls
Locate 0,0
Print "Los datos se han actualizado."
Print "Pulse una tecla para salir del programa."
WaitKey()
End
EndIf
Goto salida_programa
EndIf
Goto inicio