none
IMBRICATION DE TESTS BOOLEEN RRS feed

  • Question

  • Bonjour

    peut-on condenser ces 2 tests en un seul?

    If Not Unique OrElse Not Result.Contains(Value) Then
            If EstMultipleDeCinq(Value) Then
              Result.Add(Value)
            End If
          End If
    
    If Not Unique OrElse Not Result.Contains(Value) And EstMultipleDeCinq(Value) Then
      Result.Add(Value)
    End If
    

    J'avais essayé ça mais cela ne convient pas avec le And.

    merci


    Cordialement
    Pascal
    http://www.scalpa.info
    mardi 29 mars 2011 18:03

Réponses

  • Le 29/03/2011 20:03, scalpa a écrit :
    > Bonjour
     
    Bonjour,
     
    Essaie avec ceci :
     
    If (Not Unique OrElse Not Result.Contains(Value)) AndAlso
    EstMultipleDeCinq(Value) Then
     --
    Fred
    foleide@free.fr
     
    • Marqué comme réponse scalpa mercredi 30 mars 2011 06:10
    mercredi 30 mars 2011 04:59

Toutes les réponses

  • Le 29/03/2011 20:03, scalpa a écrit :
    > Bonjour
     
    Bonjour,
     
    Essaie avec ceci :
     
    If (Not Unique OrElse Not Result.Contains(Value)) AndAlso
    EstMultipleDeCinq(Value) Then
     --
    Fred
    foleide@free.fr
     
    • Marqué comme réponse scalpa mercredi 30 mars 2011 06:10
    mercredi 30 mars 2011 04:59
  • Merci ça marche... Je révise mon algèbre de bool auquel je n'entravais pas grand chose à l'époque du lycée.... et qui me sert 30 ans plus tard! Comme quoi...

    Sur l'excellent cour de M. Plassere on trouve tout expliqué.... mais c'est quand même raide!

    un extrait:

    Les lois de composition:

    Ce sont des règles logiques qui permettent de simplifier l'écriture des expressions algébriques.

    Associativité:

    * (A And B)And C est équivalent à A And (B And C) et A And B And C

    * (A Or B) Or C est équivalent à A Or (B Or C) et A Or B Or C

    Absoption:

    * A And (A Or B) est équivalent à A

    * A Or A And B est équivalent à A

    Etc. à déguster sur place!


    Cordialement
    Pascal
    http://www.scalpa.info
    mercredi 30 mars 2011 06:16
  • Bonjour..!

    Avec une boucle do loop en éliminant les deux premières conditions sur "vrai"

    do

    si unique -> exit do

    si result...=0 -> exit do

    si not multiple de cinq > exit do

    (si les trois conditions d'exclusion sont remplies il vous reste à "result.add" et à sortir de la boucle)

    exit do

    loop 

    méfiez vous des clauses if then else et leurs dérivées les résultats peuvent être stupéfiants..!


    mercredi 13 avril 2011 15:48