IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Boucle For imbriquée dans Parallel for ou Parallel for each


Sujet :

VB.NET

  1. #1
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut Boucle For imbriquée dans Parallel for ou Parallel for each
    Bonjour
    J'ai une liste de mots listdico de 10 9 8 .....2 lettres
    et une liste de combination listcomb de 10 9 8 ....2 lettres formé à partir de 10 choisis
    avec chaque mot d'une longueur(t=10) lettres je verifie si dans la liste des combinations de 10 lettres j'ai une meme combination
    si oui j'ajoute le mot à une liste

    En utilisant une boucle for imbriquée dans un parallel for each ,j'obtiens des faux résultats
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     'list de mot de 10 9 8 ....2   lettres
           private listdico As New List(Of List(Of String))
           'list de combination de 10 9 8 7 6 ....2 lettres formé à partir de 10 choisis 
           private listcomb As New List(Of List(Of String))
            Dim itemletters() As Char
            Dim combletters() As Char
            Do Until found Or t  = 1
                Parallel.ForEach(list1(t), Sub(st)
     
                                                           itemletters = st.ToCharArray
                                                           Array.Sort(itemletters)
     
                                                           For Each item In list2(t)
                                                               combletters = item.ToCharArray
                                                               Array.Sort(combletters)
                                                               If itemletters = combletters Then
                                                                   SyncLock listsolution
                                                                       listsolution.Add(st)
                                                                   End SyncLock
                                                               End If
                                                           Next
     
                                                       End Sub)
     
     
                If listsolution.Count > 0 Then
                    found = True
                Else
                    t -= 1
                End If
     
            Loop
    le résultat dans listsolution j'obtiens de faux résultats
    si je mets un point d'arret à la ligne listsolution.Add(st)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If itemletters = combletters Then
         SyncLock listsolution
              listsolution.Add(st)
           End SyncLock
     End If
    Quand l'execution stop
    je verifie la valeur de itemletters et combletters il sont différents

    merci

  2. #2
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Enfin de compte une boucle for normal suffit

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème boucle while imbriquée dans autre boucle while
    Par nattydreadnatty dans le forum Langage
    Réponses: 3
    Dernier message: 25/08/2010, 14h58
  2. optimiser une boucle while imbriquer dans une boucle for
    Par bakaratoun dans le forum MATLAB
    Réponses: 0
    Dernier message: 28/01/2010, 15h35
  3. 2 boucles for imbriquées
    Par karimphp dans le forum Langage
    Réponses: 8
    Dernier message: 02/12/2006, 14h46
  4. Batch - Deux boucle For imbriquées plus un FC
    Par Lorponos dans le forum Windows
    Réponses: 17
    Dernier message: 27/07/2006, 14h58
  5. [Syntaxe] Boucle For imbriquées en 1.5
    Par Piolet dans le forum Langage
    Réponses: 5
    Dernier message: 09/01/2005, 00h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo