Bienvenida

Hola, bienvenidos a un espacio donde podrán ver los programas básicos que te han provocado más de un dolor de cabeza. Los programas están hechos mediante dos editores de textos de programación, uno es C++ y el otro es PythonG, éstos son conocidos por su simplicidad y facilidad para poder entrar al mundo de la programación. También agregaremos comentarios explicativos para cada programa con el fin de dejar más comprensible la lectura de éstos.

Esperamos les sea de utilidad y puedan despejar todas sus dudas.

viernes, 13 de agosto de 2010

Matriz, saltos de una rana en una habitacion

Aquí veremos la creación de una matriz y a la vez el cambio de los datos de cada matriz.
La rana, se mueve de forma vertical y horizontal, donde los movimientos son al azar, también se consideran los saltos que se dirigen contra la pared de la habitación.


from random import randint
from time import sleep
def salto(i,j,habitacion):
  x=randint(1,4)
  if x==1:
    i=i+1
  if x==2:
    i=i-1
  if x==3:
    j=j+1
  if x==4:
    j=j-1
  if i<0:
    i=i+1
  if j>len(habitacion[0])-1:
    j=j-1
  if j<0:
    j=j+1
  if i>len(habitacion)-1:
    i=i-1
  return i,j
def listo(habitacion):
  j=0
  sum=0
  while j!=len(habitacion):
    i=0
    while i!=len(habitacion[0]):
      sum=sum+habitacion[j][i]
      i=i+1
    j=j+1
  return sum
def imprime_matriz(m):
  i=0
  while i<len(m):
    print m[i]
    i+=1
m=int(raw_input("columnas:"))
n=int(raw_input("filas:"))
h=0
habitacion=[]
while h!=n:
  habitacion.append([0]*m)
  h=h+1
saltos=0
baldosas=0
j=0
i=0
while listo(habitacion)!=m*n:
  if habitacion[i][j]==0:
    baldosas=baldosas+1
    habitacion[i][j]=1
  i,j=salto(i,j,habitacion)
  saltos=saltos+1
  imprime_matriz(habitacion)
  sleep(0.1)
  clear_output()
  
print "saltos:%d\nbaldosas:%d"%(saltos,baldosas)

No hay comentarios:

Publicar un comentario