Título: Guardar salida de funcion en otra variable Publicado por: dennis094 en 27 Noviembre 2013, 00:57 am Buenas,
tengo este programita en c, en el que doy de alta a competidores y quiero que se cuente cuantos estan dados de alta (participan) y cuantos no participan en las pruebas. Resulta que he creado un bucle que compare el nombre de la prueba a la que se ha presentado el atleta, y si el nombre de esa prueba es igual a "vacio", que no cuente para el recuento de atletas que compiten. Al parecer esta todo bien, pero al ejecutar el programa me sale que ha dejado de funcionar, cuando intento que me muestre los participantes, la funcion me devuelve los que NO PARTICIPAN(2), y para imprimir los que SI PARTICIPAN(100 que es el maximo menos 2). participantes = maxAtletas/*100*/ - dimeNoParticipantes/*4*/ = 96 Código: /* NOTA:. Si en la funcion en vez de poner (control!=0) pongo (control==0) si que me da correctamente el numero de participantes QUE NO PARTICIPAN EN PRUEBAS, pero el numero de participantes que SI PARTICIPAN EN PRUEBAS, me da numeros muy altos y extraños Título: Re: Guardar salida de funcion en otra variable Publicado por: rir3760 en 27 Noviembre 2013, 03:21 am Cuando desarrolles un programa trata de verificar este con el menor numero de datos, por ejemplo en tu caso puedes reducir el numero de atletas a diez.
Los problemas en tu programa son dos: 1) no tomas en cuenta el numero de elementos utilizados en la lista de atletas (cinco), solo el numero máximo (cien) y 2) calculas mal el numero de elementos en el array "lista": Código Eso no dará el resultado correcto porque es el numero de bytes utilizados por el array. Para conocer el numero de elementos en el array debes utilizar: Código Con eso se soluciona el error critico en tiempo de ejecución pero se procesan de forma innecesaria todos los elementos del array, por eso deberías cambiar la función para que solo procese los elementos utilizados (indicando el numero de estos a la función con un argumento). Un saludo Título: Re: Guardar salida de funcion en otra variable Publicado por: dennis094 en 27 Noviembre 2013, 18:04 pm Ah de acuerdo,
muchas gracias ya me funciona, la verdad es que no sabia que se hacia asi para contar el numero de elementos del array, no se me hubiera ocurrido. Lo apunto, gracias de nuevo ! ;) |