Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1448 connectés 

  FORUM HardWare.fr
  Programmation
  C

  probleme simple avec un tableau

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme simple avec un tableau

n°1807825
paul30
Posté le 03-11-2008 à 18:21:37  profilanswer
 

J'ai un tableau d'entier (ici, saisie_temp[k]). J'aimerais analyser chacune de ses cases, et, si elles sont toutes égales a 1, alors j'affecte 1 a la variable saisie_valide (0 sinon)
Je ne vois pas trop comment coder cela, bien que ca puisse sembler tres simple.
 
J'avais essayé le code suivant, mais le pb est que ce sera uniquement la derniere valeur de k qui décidera de celle de saisie_valide, donc cela ne marche pas.
 

Code :
  1. for (k=0; k<argc-1 ; k++)
  2.          {
  3.                 if ( saisie_temporaire[k] == 1 )
  4.                  {
  5.                   saisie_valide = 1;
  6.                   }
  7.                else
  8.                   {
  9.                   saisie_valide = 0;
  10.                   }
  11.          }


 
 
 
Pouvez vous m'aider?

mood
Publicité
Posté le 03-11-2008 à 18:21:37  profilanswer
 

n°1807828
flo850
moi je
Posté le 03-11-2008 à 18:28:19  profilanswer
 

Code :
  1. saisie_valide = 1;
  2. for (k=0; k<argc-1 ; k++)
  3. {
  4.     if ( saisie_temporaire[k] != 1 )
  5.      {
  6.            saisie_valide = 0;
  7.             break;
  8.      }
  9. }

n°1807844
paul30
Posté le 03-11-2008 à 19:08:48  profilanswer
 

effectivement, je n'y avais pas pensé.
C'est le break ici qui est interessant puisqu'a la premiere fois qu'un des éléments du tableau ne vaut pas 1, on sort de la boucle, meme si l'analyse n'est pas terminée, et saisie_valide vaut alors 0
 
Merci beaucoup

n°1807851
flo850
moi je
Posté le 03-11-2008 à 19:32:32  profilanswer
 

meme sans le break , ça marche aussi  
 
c'est juste qu'une fois que c'est pas valide, c'est pas la peine de continuer

n°1808011
kao98
...
Posté le 04-11-2008 à 10:29:24  profilanswer
 

Et autant utiliser une boucle while pour éviter d'avoir un break.

Code :
  1. saisie_valide = 1;
  2. k = 0;
  3. while (saisie_valide && k < argc-1)
  4. {
  5.       if ( saisie_temporaire[k] != 1 )
  6.       {
  7.             saisie_valide = 0;
  8.       }
  9.       k++;
  10. }


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1808023
Elmoricq
Modérateur
Posté le 04-11-2008 à 11:02:26  profilanswer
 

[:le poney de mr pink]
 
Tu peux mettre la condition pour ne pas avoir le break dans la boucle for hein, ça évite ta laide tambouille avec ton itérateur qui se retrouve éparpillé partout.
 
Et puis le break c'est pas si mal hein, c'est pas la peine de tester 1.199.999 fois si la variable est positionnée sur 1.200.000 itérations. Même si dans les deux cas je doute que la différence soit visible.

n°1808118
kao98
...
Posté le 04-11-2008 à 13:48:48  profilanswer
 

Elmoricq a écrit :


Tu peux mettre la condition pour ne pas avoir le break dans la boucle for hein, ça évite ta laide tambouille avec ton itérateur qui se retrouve éparpillé partout.


Clair, autant pour moi. :jap:
 

Elmoricq a écrit :


Et puis le break c'est pas si mal hein, c'est pas la peine de tester 1.199.999 fois si la variable est positionnée sur 1.200.000 itérations. Même si dans les deux cas je doute que la différence soit visible.


Suis alergique au break (sauf dans un switch bien sûr) :spamafote:


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  probleme simple avec un tableau

 

Sujets relatifs
INDEFORMABLE, INCASSABLE le tableauProblème morceau de code
Probleme table-cell dans Mozilla et IE7problème code php (simple, mais difficile pr moi)
Débutant, souhaite réaliser fonction simple :)Problème avec Lightbox sous Firefox
Problème d'accents après copie d'une base [résolu]fonction simple return
Problème avec IE 
Plus de sujets relatifs à : probleme simple avec un tableau


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR