{"id":5385,"date":"2018-07-02T10:00:57","date_gmt":"2018-07-02T15:00:57","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/ccpg1001\/?p=5385"},"modified":"2026-04-05T17:34:07","modified_gmt":"2026-04-05T22:34:07","slug":"s1eva2018ti_t2-desempeno-de-jugadores-mundial-futbol","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-s1eva20\/s1eva2018ti_t2-desempeno-de-jugadores-mundial-futbol\/","title":{"rendered":"s1Eva2018TI_T2 Desempe\u00f1o de jugadores mundial futbol"},"content":{"rendered":"\n<p><em><strong>Ejercicio<\/strong><\/em>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-1eva20\/1eva2018ti_t2-desempeno-de-jugadores-mundial-futbol\/\" data-type=\"post\" data-id=\"5362\">1Eva2018TI_T2 Desempe\u00f1o de jugadores mundial futbol<\/a><\/p>\n\n\n\n<p>Revisar las sugerencias en el enunciado, dividir el problema y simplificar las tablas para las pruebas de algoritmos, con lo que que se obtiene:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a) el pa\u00eds con mas goles promedio:  Argentina\nb) los jugadores efectivos de:  Brasil 0\nc) jugadores amarrabalon:  &#091;'Lionel Messi']\nd) jugador con m\u00e1s pases acertados:  Lionel Messi\ne) promedios mundiales:  &#091;  33.66666667   88.33333333   64.          179.33333333]\nf) : Lionel Messi no est\u00e1 por encima del promedio mundial\n&gt;&gt;&gt; <\/code><\/pre>\n\n\n\n<p>visualizar la tabla de paises_jugadores es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;&gt;&gt; pais_jugadores\n&#091;&#091;'Cristiano Ronaldo'], \n &#091;'Neymar Jr.'], \n &#091;'Lionel Messi']]<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Algoritmo en Python<\/h2>\n\n\n\n<p>las instrucciones desarrolladas por literal son:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# CCPG1001 Fundamentos de Programaci\u00f3n FIEC-ESPOL\n# 1Eva_IT2018_T2 Desempe\u00f1o de jugadores mundial futbol\nimport numpy as np\n\n# INGRESO\ndesempeno = np.array(&#x5B;&#x5B; 32, 24, 45],\n                      &#x5B; 90, 84, 91],\n                      &#x5B; 54, 60, 78],\n                      &#x5B;187,239,112]])\n\npaises = &#x5B;'Portugal', 'Brasil', 'Argentina']\nprtgl  = &#x5B;'Cristiano Ronaldo']\nbrsl   = &#x5B;'Neymar Jr.' ]\nargntn = &#x5B;'Lionel Messi']\n\npais_jugadores = &#x5B;prtgl, brsl, argntn]\n\nanalizapais = 'Brasil'\nanalizaposeebalon = 76\nanalizajugador = 'Lionel Messi'\n\n# PROCEDIMIENTO\ntamano = np.shape(desempeno)\ntdf    = tamano&#x5B;0]\ntdc    = tamano&#x5B;1]\ntp     = len(paises)\n\n# tabla ubicapais&#x5B;unpais] = &#x5B;desde,hasta,cuantos]\nubicapais = np.zeros(shape=(tp,3),dtype=int)\ndesde  = 0\nunpais = 0\nwhile not(unpais&gt;=tp):\n    jugadores = pais_jugadores&#x5B;unpais]\n    cuantos   = len(jugadores)\n    hasta     = desde + cuantos\n    ubicapais&#x5B;unpais,0] = desde\n    ubicapais&#x5B;unpais,1] = hasta\n    ubicapais&#x5B;unpais,2] = cuantos\n    desde  = hasta\n    unpais = unpais + 1\n    \n# Agrupa jugadores\ntodosjugadores = &#x5B;]\nunpais =  0\nwhile not(unpais&gt;=tp):\n    jugadores = pais_jugadores&#x5B;unpais]\n    cuantos   = len(jugadores)\n    quien = 0\n    while not(quien&gt;=cuantos):\n        todosjugadores.append(jugadores&#x5B;quien])\n        quien = quien + 1\n    unpais = unpais +1\n\n# a) pais con mas goles promedio\nfila = 0 # fila goles anotados\ngolesanotados = desempeno&#x5B;fila]\nprmGolAnota = np.zeros(tp,dtype = float)\nunpais = 0\nwhile not(unpais&gt;=tp):\n    desde   = ubicapais&#x5B;unpais,0]\n    hasta   = ubicapais&#x5B;unpais,1]\n    cuantos = ubicapais&#x5B;unpais,2]\n    \n    golpais = golesanotados&#x5B;desde:hasta]\n    prmGolAnota&#x5B;unpais] = np.sum(golpais)\/cuantos\n    \n    unpais = unpais + 1\n    \ngoleador = np.argmax(prmGolAnota)\nnombregoleador = paises&#x5B;goleador]\n\n# b) Contar jugadores con mayor efectividad\n# al promedio de analizapais\n# donde = paises.index(buscapais)\ndonde  = -1\nunpais = 0\nwhile not(unpais&gt;=tp or donde&gt;=0):\n    if (paises&#x5B;unpais] == analizapais):\n        donde = unpais\n    unpais = unpais + 1\n\n# efectividad del pais analizado\nfila = tdf-1 # tiros al arco (\u00faltima de desempeno)\ntirosdirectos = desempeno&#x5B;fila]\n\ndesde = ubicapais&#x5B;donde,0]\nhasta = ubicapais&#x5B;donde,1]\n\nanotados = golesanotados&#x5B;desde:hasta]\ndirectos = tirosdirectos&#x5B;desde:hasta]\nefectivopais = np.sum(anotados)\/np.sum(directos)\n\n#jugadores efectivos del pais analizado\ncuentaefectivos = 0\nquien = desde\nwhile not(quien&gt;=hasta):\n    unaefectividad = golesanotados&#x5B;quien]\/tirosdirectos&#x5B;quien]\n    if (unaefectividad &gt; efectivopais):\n        cuentaefectivos = cuentaefectivos+1\n    quien = quien + 1\n\n# c) posesion bal\u00f3n\nfila = 2 # fila de posesi\u00f3n de bal\u00f3n\nposeebalon = desempeno&#x5B;fila]\namarrabalon = &#x5B;]\nquien = 0\nwhile not(quien&gt;=tdc):\n    if (poseebalon&#x5B;quien]&gt;analizaposeebalon):\n        amarrabalon.append(todosjugadores&#x5B;quien])\n    quien = quien +1\n    \n# d) jugador con m\u00e1s pases acertados\nfila = tdf-2\npasesacertados = desempeno&#x5B;fila]\nquienacierta   = np.argmax(pasesacertados)\nnombreacierta  = todosjugadores&#x5B;quienacierta]\n\n# e) promedios mundiales\npromediomundial = np.sum(desempeno,axis =1)\/tdc\n\n# f) jugadores superior a promedio mundial\n# donde = todosjugadores.index(analizajugador)\ndonde = -1\nquien = 0\nwhile not(unpais&gt;=tp or donde&gt;=0):\n    if (todosjugadores&#x5B;quien] == analizajugador):\n        donde = unpais\n    quien = quien + 1\n\n# verifica cumplimiento de par\u00e1metros\ncumple = ' est\u00e1 '\nfila = 0\nwhile not(fila&gt;=tdf):\n    caracteristica = desempeno&#x5B;fila,donde]\n    if (caracteristica&lt; promediomundial&#x5B;fila]):\n        cumple = ' no est\u00e1 '\n    fila = fila+1\nmensaje = analizajugador + cumple + 'por encima del promedio mundial'\n\n# SALIDA\nprint('a) pais con mas goles promedio: ', nombregoleador)\nprint('b) jugadores efectivos de: ', analizapais, cuentaefectivos)\nprint('c) jugadores amarrabalon: ', amarrabalon)\nprint('d) jugador con m\u00e1s pases acertados: ', nombreacierta)\nprint('e) promedios mundiales: ', promediomundial)\nprint('f) :', mensaje)\n<\/pre><\/div>\n\n\n<p><strong>Tarea<\/strong>: Realice las modificaciones necesarias para realizar las funciones para las secciones de:<\/p>\n\n\n\n<p>- crear tabla <em><strong>ubicapais<\/strong><\/em>(<em>paises_jugadores<\/em>)<\/p>\n\n\n\n<p>- <em><strong>agrupajugadores<\/strong><\/em>(<em>paises_jugadores<\/em>)<\/p>\n\n\n\n<p>use las funciones realizadas en el programa.<\/p>\n\n\n\n<p>Considerar cuando la respuesta de los algoritmos de b\u00fasqueda es -1, no se encontr\u00f3 el elemento en el conjunto. En la propuesta no se valida \u00e9sta situaci\u00f3n, por ejemplo, si se pone 'espana' y no se encuentra en la tabla.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 1Eva2018TI_T2 Desempe\u00f1o de jugadores mundial futbol Revisar las sugerencias en el enunciado, dividir el problema y simplificar las tablas para las pruebas de algoritmos, con lo que que se obtiene: visualizar la tabla de paises_jugadores es: Algoritmo en Python las instrucciones desarrolladas por literal son: Tarea: Realice las modificaciones necesarias para realizar las funciones [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-fp-ejemplos","format":"standard","meta":{"footnotes":""},"categories":[130],"tags":[58,157],"class_list":["post-5385","post","type-post","status-publish","format-standard","hentry","category-fp-s1eva20","tag-ejemplos-python","tag-fundamentos-programacion"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5385","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=5385"}],"version-history":[{"count":4,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5385\/revisions"}],"predecessor-version":[{"id":23601,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5385\/revisions\/23601"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=5385"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=5385"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=5385"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}