{"id":1887,"date":"2014-09-04T17:05:00","date_gmt":"2014-09-04T22:05:00","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/icm00794\/?p=1887"},"modified":"2026-04-05T18:25:19","modified_gmt":"2026-04-05T23:25:19","slug":"s3eva2005ti_t2-juego-biologico","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-s3eva10\/s3eva2005ti_t2-juego-biologico\/","title":{"rendered":"s3Eva2005TI_T2 Juego biol\u00f3gico"},"content":{"rendered":"\n<p><em><strong>Ejercicio<\/strong><\/em>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-3eva10\/3eva2005ti_t2-juego-biologico\/\" data-type=\"post\" data-id=\"2532\">3Eva2005TI_T2 Juego biol\u00f3gico<\/a><\/p>\n\n\n\n<p>Resultado esperado:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tama\u00f1o de matriz nxn:5\ncantidad seres vivos: 20\n&#091;&#091;1 1 1 1 0]\n &#091;1 1 1 0 1]\n &#091;0 1 1 1 1]\n &#091;1 1 1 1 1]\n &#091;0 0 1 1 1]]\nporcentaje inicial: 80.0\nnueva matriz:\n&#091;&#091;1 1 1 1 0]\n &#091;1 0 1 0 1]\n &#091;0 1 0 1 1]\n &#091;1 1 1 0 1]\n &#091;0 0 1 1 1]]\nporcentaje final: 68.0\n&gt;&gt;&gt; <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Algoritmo en Python<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# ICM00794-Fundamentos de Computaci\u00f3n - FCNM-ESPOL\n# 3Eva_IT2005_T2 Juego biol\u00f3gico\n# propuesta: edelros@espol.edu.ec\n# por ser semejante, se usa la funcion de: \n#  3Eva_IT2006_T4 Juego planta bombas (buscaminas)\nimport numpy as np\nimport random as rnd\n\ndef plantabombas(m,n):\n    campo = np.zeros(shape=(n,n),dtype=int)\n    bomba = 1\n    while not(bomba&gt;m):\n        fila = int(rnd.random()*n)+0\n        columna = int(rnd.random()*n)+0\n        if (campo&#x5B;fila,columna]==0):\n            campo&#x5B;fila,columna] = 1\n            bomba = bomba + 1\n    return(campo)\n\ndef porcentaje(campo):\n    tamano = np.shape(campo)\n    n = tamano&#x5B;0]\n    m = tamano&#x5B;1]\n    suma = 0\n    fila = 0\n    while not(fila&gt;=n):\n        columna = 0\n        while not(columna&gt;=m):\n            suma = suma + campo&#x5B;fila,columna]\n            columna = columna + 1\n        fila = fila + 1\n    z = 100*suma\/(n*n)\n    return(z)\n\n# PROGRAMA  literal a ------------------\nn = int(input('tama\u00f1o de matriz nxn:'))\nvivos = int(input('cantidad seres vivos: '))\n\n# PROCEDIMIENTO\nbiologico  = plantabombas(vivos,n)\nparticipa1 = porcentaje(biologico)\n\n# SALIDA\nprint(biologico)\nprint('porcentaje inicial:', participa1)\n\n# PROGRAMA  literal b ------------------\nfila = 1 # desde segunda fila\nwhile not(fila&gt;=(n-1)): # hasta penultima fila\n\n    columna = 1 # desde segunda columna\n    while not(columna&gt;=(n-1)): # hasta penultima columna\n\n        # suma celda izquierda y derecha\n        suma = biologico&#x5B;fila-1,columna]+ biologico&#x5B;fila+1,columna]\n        # suma celda arriba y abajo\n        suma = suma + biologico&#x5B;fila,columna-1]+biologico&#x5B;fila,columna+1]\n        \n        if suma &gt;=4: # sobrepoblacion, en la celda no se sobrevive\n            biologico&#x5B;fila,columna] = 0\n            \n        columna = columna + 1\n        \n    fila = fila + 1\n\nparticipa2 = porcentaje(biologico)\nprint('nueva matriz:')\nprint(biologico)\nprint('porcentaje final:', participa2)\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 3Eva2005TI_T2 Juego biol\u00f3gico Resultado esperado: Algoritmo en Python<\/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":[138],"tags":[58,157],"class_list":["post-1887","post","type-post","status-publish","format-standard","hentry","category-fp-s3eva10","tag-ejemplos-python","tag-fundamentos-programacion"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/1887","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=1887"}],"version-history":[{"count":5,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/1887\/revisions"}],"predecessor-version":[{"id":23736,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/1887\/revisions\/23736"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=1887"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=1887"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=1887"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}