s3Eva_IT2005_T2 Juego biológico

Propuesta de solución en Python:

# 3ra Evaluación I Término 2005
# Tema 2. Juego biológico
# propuesta: edelros@espol.edu.ec
# por ser similar, se usa la funcion de: 
#  plantabombas - 3ra Evaluación I Término 2006. tema 4

# TAREA: Desarrollar sobrepoblacion del enunciado

import numpy as np
import random

def plantabombas(m,n):
    campo = np.zeros(shape=(n,n),dtype=int)
    bomba = 1
    while not(bomba>m):
        fila = int(random.random()*n)+0
        columna = int(random.random()*n)+0
        if (campo[fila,columna]==0):
            campo[fila,columna] = 1
            bomba = bomba+1
    return(campo)

def porcentaje(campo):
    tamano = np.shape(campo)
    n = tamano[0]
    m = tamano[1]
    suma = 0
    fila = 0
    while not(fila>=n):
        columna = 0
        while not(columna>=m):
            suma = suma+campo[fila,columna]
            columna = columna+1
        fila = fila+1
    z = 100*suma/(n*n)
    return(z)

# PROGRAMA ---------------------
n = int(input('tamaño de matriz:'))
m = int(input('cantidad seres vivos: '))

# PROCEDIMIENTO
biologico = plantabombas(m,n)
participa1 = porcentaje(biologico)

# TAREA: Desarrollar sobrepoblacion del enunciado
# crear biologico2 aplicando lo solicitado
# participa2 = porcentaje(biologico2)

# SALIDA
print(biologico)
print('porcentaje inicial:', participa1)

# TAREA: print('porcentaje final: ', participa2)

Ejemplo de lo realizado, falta completar.:

>>> 
tamaño de matriz:5
cantidad seres vivos: 15
[[0 0 1 0 0]
 [0 1 1 1 0]
 [1 1 1 0 1]
 [1 0 1 1 0]
 [1 1 1 0 1]]
porcentaje inicial: 60.0
>>>