Partage
  • Partager sur Facebook
  • Partager sur Twitter

creer une matrice de 0 et de 1

    24 avril 2017 à 12:10:33

    Bonjour,

    J'aimerais de l'aide pour creer une matrice de 0 et de 1 MAIS que je choisisse le nombre de 1 que va comporter la matrice de n par n.

    voila le debut de mon code pour une matrice de n par n remplie de 0

    maintenant comment mettre par exemple x "1" dans la matrice?

    merci d'avance pour l'aide apportée

    import random
    import numpy as np
    
    
    print("entrer la valeur de n")
    n = input()
    n = int(n)
    createMat = lambda line, column: [[random.randint(0,0) for i in range (column)] for j in range (line)]
    a = createMat(n,n)
    a = np.array(a)
    print("") #espace
    print("matrice :")
    print(a)



    • Partager sur Facebook
    • Partager sur Twitter
      24 avril 2017 à 13:03:22

      pour la matrice de 0 tu peux utiliser numpy.zeros()

      Ensuite a mon avis le meilleur moyen est d'appliquer un mask dessus

      • Partager sur Facebook
      • Partager sur Twitter
      HOPE
        24 avril 2017 à 13:11:49

        loumierex a écrit:

        pour la matrice de 0 tu peux utiliser numpy.zeros()

        Ensuite a mon avis le meilleur moyen est d'appliquer un mask dessus


        qu'es ce qu'un mask? il faut dire que je suis debutant
        • Partager sur Facebook
        • Partager sur Twitter
          24 avril 2017 à 13:46:24

          Hello,

          Soit n le nombre de 1 à mettre dans ta matrice, tu peux boucler tant que n est différent de 0. A chaque itération tu prends une cellule de ta matrice et si elle comporte 0, tu décrémente n de 1 et tu mets 1 sur cette cellule.

          • Partager sur Facebook
          • Partager sur Twitter
            24 avril 2017 à 13:56:48

            leo0617 a écrit:

            Hello,

            Soit n le nombre de 1 à mettre dans ta matrice, tu peux boucler tant que n est différent de 0. A chaque itération tu prends une cellule de ta matrice et si elle comporte 0, tu décrémente n de 1 et tu mets 1 sur cette cellule.


            oui c'est le but :) mais je ne sais pas trop comment l'e coder :/
            • Partager sur Facebook
            • Partager sur Twitter
              25 avril 2017 à 12:40:33

              AlexandreSpark's a écrit:

              leo0617 a écrit:

              Hello,

              Soit n le nombre de 1 à mettre dans ta matrice, tu peux boucler tant que n est différent de 0. A chaque itération tu prends une cellule de ta matrice et si elle comporte 0, tu décrémente n de 1 et tu mets 1 sur cette cellule.


              oui c'est le but :) mais je ne sais pas trop comment l'e coder :/

              from random import randint
              n = 5
              matrice = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
              
              while n != 0 :
                  x = randint(0, 2)
                  y = randint(0, 2)
                  if matrice[x][y] == 0 :
                      matrice[x][y] = 1
                      n -= 1
              Ceci insère 5 fois 1 dans ta matrice à des positions aléatoires. A toi d'adapter ce bout de code au tien pour que ça marche. Bonne chance


              • Partager sur Facebook
              • Partager sur Twitter

              creer une matrice de 0 et de 1

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown