Contact Us!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

| Download

Jupyter notebook guillermo.ipynb

Views: 27
Kernel: SageMath 7.5.1
""" Hola Guillermo! Aquí va mi propuesta. Primero declaramos una matriz de 3x4 para ejemplificar. El ciclo for sólo es para visualizar la matriz renglón por renglon """ A= [["a", "a", "b", "c"],["d", "e", "f", "e"],["c", "a", "b", "e"]] show(A) for renglon in A: print renglon
['a', 'a', 'b', 'c'] ['d', 'e', 'f', 'e'] ['c', 'a', 'b', 'e']
""" vamos a definir una función f que nos ayude a realizar los cambio. A es la matriz a modificar, x el caracter a reemplazar, y el nuevo caracter, mientras que i,j son las coordenadas de la entrada. Recuerda que en Python/SageMath) empezamos a contar de 0 """ def f(A,x,y,i,j): B=copy(A) N=len(A) M=len(A[0]) for k in [-1,0,1]: if (0<=i+k<=N): for l in [-1,0,1]: if (0<=j+l<=M): if not(k==0) or not(l==0): if (A[i+k][j+l]==x): B[i+k][j+l]=y #show(B) return B
B=f(A,"e","g",1,2) show(B) for renglon in B: print renglon
['a', 'a', 'b', 'c'] ['d', 'g', 'f', 'g'] ['c', 'a', 'b', 'g']