from random import randrange import os time def

  • Slides: 7
Download presentation
from random import randrange import os, time def adauga 1(m): x=randrange(len(m)*len(m)) r=x//len(m); c=x%len(m) m[r][c]=1

from random import randrange import os, time def adauga 1(m): x=randrange(len(m)*len(m)) r=x//len(m); c=x%len(m) m[r][c]=1 return m def adaug(m): for r in range(len(m)): m[r][len(m)//2]=1 return m def afis(m): #os. system('clear') R, C=len(m), len(m[0]) for r in range(R): for c in range(C): print(m[r][c], end=' ') print('n') # time. sleep(0. 3) Game of life def vecini(m, i, j): suma=-m[i][j] for r in range(-1, 2): for c in range(-1, 2): suma+=m[(i+r)%len(m)][(j+c)%len(m)] return suma a=[[0]*5 for i in range(5)] a=adauga 1(a) a=adaug(a) afis(a) def life(m): …… count=10 while count>0: a=life(a) afis(a) count-=1

def life(m): nextm=[[0]*len(m[0]) for i in range(len(m))] R, C=len(m), len(m[0]) for r in range(R):

def life(m): nextm=[[0]*len(m[0]) for i in range(len(m))] R, C=len(m), len(m[0]) for r in range(R): for c in range(C): v=vecini(m, r, c) if v<2 or v>3: nextm[r][c]=0 elif v==3 and m[r][c]==0: nextm[r][c]=1 else: nextm[r][c]=m[r][c] return nextm

a=[[1, 2, 3], [4, 5, 6], [7, 8, 9]] def afis(m): R, C=len(m), len(m[0])

a=[[1, 2, 3], [4, 5, 6], [7, 8, 9]] def afis(m): R, C=len(m), len(m[0]) for r in range(R): for c in range(C): print(m[r][c], end=' ') print('n') afis(a) def det(a): p 1=a[0][0]*a[1][1]*a[2][2] p 2=a[0][1]*a[1][2]*a[2][0] p 3=a[0][2]*a[1][0]*a[2][1] p 4=a[0][2]*a[1][1]*a[2][0] p 5=a[0][1]*a[1][0]*a[2][2] p 6=a[0][0]*a[1][2]*a[2][1] return p 1+p 2+p 3 -(p 4+p 5+p 6) print(det(a)) def BB(a, b, k): bb=[[0]*len(a[0]) for i in range(len(a))] R, C=len(a), len(a[0]) for r in range(R): for c in range(C): bb[r][c]=a[r][c] if c==k-1: bb[r][c]=b[r] return bb a=[[2, 2, 3], [4, 5, 6], [7, 8, 9]] b=[-1, -2] afis(BB(a, b, 1)) x 1=det(BB(a, b, 1)))/det(a) x 2=det(BB(a, b, 2)))/det(a) x 3=det(BB(a, b, 3)))/det(a) print(x 1, x 2, x 3)

def minor(a, n, cc): ac=[[0]*(n-1) for i in range(n-1)] for r in range(n-1): for

def minor(a, n, cc): ac=[[0]*(n-1) for i in range(n-1)] for r in range(n-1): for c in range(n-1): ccc=c+1 if c<cc: ccc=c ac[r][c]=a[r][ccc] return ac def dett(a, n): if n==1: return a[0][0] else: suma, p = 0, 1 for c in range(n): suma+=p*a[0][c]*dett(minor(a, n, c), n-1) p*=-1 return suma print(dett(a, 3)) Determinantul prin recursivitate

https: //2048 game. com/ matrice=[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10,

https: //2048 game. com/ matrice=[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]] def afis(m): for r in range(4): for c in range(4): print('{0: 4 d}'. format(m[r][c]), end=' ') print('n') #afis(matrice) from random import randrange def adauga 2(m): p=1 for x in range(16): r=x//4; c=x%4; p*=m[r][c] if p>0: print('Game over!') m[0][0]=-1 return m while True: x=randrange(16) r=x//4; c=x%4; #print(x, r, c) if m[r][c]==0: m[r][c]=2 #print(r, c) break return m #matrice=adauga 2(matrice) #afis(matrice)

def stanga(m): for r in range(4): if sum(m[r])>0: while m[r][0]==0: m[r][0]=m[r][1]=m[r][2]=m[r][3]=0 if sum(m[r][1: 4])>0:

def stanga(m): for r in range(4): if sum(m[r])>0: while m[r][0]==0: m[r][0]=m[r][1]=m[r][2]=m[r][3]=0 if sum(m[r][1: 4])>0: while m[r][1]==0: m[r][1]=m[r][2]=m[r][3]=0 if m[r][2]==0 and m[r][3]>0: m[r][2]=m[r][3]=0 for c in range(3): if m[r][c+0]==m[r][c+1]: m[r][c+0]*=2 if c==0: m[r][1]=m[r][2] if c<=1: m[r][2]=m[r][3]=0 return m #matrice=[[0, 0, 0, 2], [4, 8, 0, 2], [0, 2, 0, 2]] #matrice=[[2, 2, 0, 0], [4, 2, 2, 0], [4, 8, 2, 2], [4, 4, 2, 2]] #afis(matrice) #matrice=stanga(matrice) #afis(matrice)

def schimb(m, char): if char=='a': m=stanga(m) """ if char=='d': m=dreapta(m) if char=='w': m=sus(m) if

def schimb(m, char): if char=='a': m=stanga(m) """ if char=='d': m=dreapta(m) if char=='w': m=sus(m) if char=='s': m=jos(m) """ m=adauga 2(m) afis(m) return m def joc 2048(): m=[[0, 0, 0, 0], [0, 0, 0, 0]] m=adauga 2(m) afis(m) while True: char=input('introdu litera (a/w/s/d): ') m=schimb(m, char) if m[0][0]<0: break joc 2048()