[déplacé VB6 -> VBS] pair et impair

Résolu
chawkiste Messages postés 5 Date d'inscription mercredi 16 mai 2007 Statut Membre Dernière intervention 12 octobre 2009 - 12 oct. 2009 à 01:01
chawkiste Messages postés 5 Date d'inscription mercredi 16 mai 2007 Statut Membre Dernière intervention 12 octobre 2009 - 12 oct. 2009 à 22:49
Bonjour,
Soit le tableau suivant : Numeros = array(1,2,3,4,5,6,7,8,9)
Créer deux autres tableaux « Pair » et « Impair » pour accommoder les numéros pairs et ceux impairs du tableau Numeros. En utilisant la boucle « FOR » et la conditionnelle « IF ELSE », afficher les données de ceux deux tableaux.
et voici ce que j'ai fais ,, est ce que c'est juste ?? svp je suis coincé

dim numeros
numeros= array(1,2,3,4,5,6,7,8,9)
dim impaire(6) 
dim pair(5)
dim i
for i=1 to UBound(numeros)
If i Mod 2 = 0 Then
   impaire =i 
Wscript.Echo "pair: "   &impaire(6) 
 Else 
    pair =i
Wscript.Echo "impair: " &pair(5)
 End If
next

6 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
12 oct. 2009 à 08:52
salut,

non plus, sinon on aura 2 tableaux de N indices au lieu de N/2, sans compter que si le contenu de NUMEROS change, le résultat sera le même !


'liste
Dim numeros
numeros = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)

'resultats
Dim pair(), index_pair
Dim impair(), index_impair
index_pair = -1
index_impair = -1



Dim i
For i = LBound(numeros) To UBound(numeros)
    If (numeros(i) And 1) = 0 Then
        index_pair = index_pair + 1
        ReDim Preserve pair(index_pair)
        pair(index_pair) = numeros(i)
    
        wscript.echo "pair: " & numeros(i)
    
    Else
        index_impair = index_impair + 1
        ReDim Preserve impair(index_impair)
        impair(index_impair) = numeros(i)
    
        wscript.echo "impair: " & numeros(i)
        
    End If
Next



voilà du tout cuit, instructif ??


PS : ATTENTION AUX THèMES DU FORUM, déplacé vers VBS !

++
[hr]
3
cs_Ayr Messages postés 221 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 13 décembre 2009 2
12 oct. 2009 à 07:30
Salut,

Ha ben non, ce n'est pas juste, sinon tu ne demanderai pas hein

Voilà plutôt :

dim numeros
numeros= array(1,2,3,4,5,6,7,8,9)
dim impaire()
dim pair()
dim i
for i=0 to ubound(numeros) + 1
  if (i Mod 2) = 0 then
      redim preserve impaire(i)
      impaire(i)=i 
      wscript.echo "pair: " & impaire(i) 
    else
      redim preserve pair(i)
      pair(i)=i
      wscript.echo "impair: " & pair(i)
  end if
next i


A+
0
cs_Ayr Messages postés 221 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 13 décembre 2009 2
12 oct. 2009 à 11:09
Tout à fait PCPT, erreurs impardonnables ,
dues à la précipitation ou pas.

Merci de veiller au grain

(vais encore être obligé de me fouetter... )
0
chawkiste Messages postés 5 Date d'inscription mercredi 16 mai 2007 Statut Membre Dernière intervention 12 octobre 2009
12 oct. 2009 à 18:19
Merci beaucoup AYR et PCPT pour votre attention,, juste deux petites questions j'ai pas piger pourquoi vous avez fait ça :index_pair = -1
index_impair = -1
ma deuxième question si par exemple on veux ajouter une valeur a chacune des variables on peux faire une boucle for c.a.d si on veux ajouter 10 pour chaque variable du tableau impair c'est correct si on fait comme ça :
dim impair
impair=array(1,3,5,7,9)
  for i=0 to UBound(impair)
   impair=i+10
   Wscript.Echo " "&impair
  Next

@ Ayr : lorsque j'exécute et je trouve une résultat je ne c pas si c correcte ou non c pour ça je pose mes questions ici mon ami car j'étudie le vbscript tt seul et je connais personnes qui connais la langage pour m'aider sauf vous
Amicalement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
12 oct. 2009 à 21:25
j'ai mis "-1" pour forcer le LBOUND à 0 sans avoir à le tester (tableau non dimensionné / indice hors de la plage)

si par exemple on veux ajouter une valeur a chacune des variables


je ne comprend pas la question, ajouter une valeur fixe à chaque fois qu'il y a un impair?
à chaque variable?? mais il n'y en a que 2, des tableaux....

compris ou non, ton code ne correspond ni à un ajout de valeur (i au lieu de impair(N)), ni au code déjà fourni


PS :
je ne c pas si c correcte ou non c pour ça(...)

merci d'éviter les SMS, les mots-clés (code) sont déjà parfois assez compliqués, en plus du "jargon informatique", pour ne pas avoir à en rajouter par une gentille couche de fainéantise
0
chawkiste Messages postés 5 Date d'inscription mercredi 16 mai 2007 Statut Membre Dernière intervention 12 octobre 2009
12 oct. 2009 à 22:49
Merci PCPT

pour ma deuxième j'ai pas bien expliquer , je veux ajouter 10 (par exemple) pour chaque case ,bref je me suis casser la tête et j'ai trouver la solution voici le code
dim impair
impair=array(1,3,5,7,9)
  for i=0 to UBound(impair)
   impair(i)=impair(i)+10
 Wscript.Echo " "&impair(i)  
  Next
0
Rejoignez-nous