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:
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 |
Excelente codigo para crear estadisticas deportivas.
ResponderEliminar