diff --git a/game2048/grid_2048.py b/game2048/grid_2048.py
index c93da5bd4aac8c2a51cd02d6717048870966faa3..e6f8bd00d561e6d42229ed8b15133ac07e33705e 100644
--- a/game2048/grid_2048.py
+++ b/game2048/grid_2048.py
@@ -8,7 +8,7 @@ def create_grid(n):
     game_grid = []
     for i in range(n):
         #crée le bon nombre de ligne
-        game_grid.append([' ']*n) #crée le bon nombre de colonnes
+        game_grid.append([0]*n) #crée le bon nombre de colonnes
     return (game_grid)
 
 
@@ -125,7 +125,7 @@ def del_zeros(row):
 
 def move_left_bis(row,i=0):
     n = len(row)
-    if i == n-1:
+    if i >= n-1:
         return row
     if row[i] == row[i+1]:
         row[i] = row[i]*2
@@ -195,3 +195,40 @@ def is_game_over(grid):
 
 def get_grid_tile_max(grid):
     return max(get_all_tiles(grid))
+def did_you_win (grid):
+    return (get_grid_tile_max(grid)>=2048)
+
+
+#Fonctinnalité 6
+
+def list_moove_possible (grid):
+    list_bool=move_possible(grid)
+    list_final=[]
+    if list_bool[0]:
+        list_final.append("left")
+    if list_bool[1]:
+        list_final.append("right")
+    if list_bool[2]:
+        list_final.append("up")
+    if list_bool[3]:
+        list_final.append("down")
+    return(list_final)
+
+
+def random_play():
+    #on suppose que le jeu par defaut comprend une grille de 4x4
+    grid_game=init_game(4)
+    print(grid_to_string_with_size_and_theme(grid_game,THEMES["0"],4))
+    while not is_game_over(grid_game):
+        d=rd.choice(list_moove_possible(grid_game))
+        grid_game=move_grid(grid_game,d)
+        grid_game=grid_add_new_tile(grid_game)
+        print(grid_to_string_with_size_and_theme(grid_game,THEMES["0"],4))
+        print("\n***********************************\n")
+    if did_you_win(grid_game):
+        print("CONGRATS ! YOU WON !!!")
+    else :
+        print ("YOU FAIL, TRY AGAIN")
+    return()
+
+random_play()