 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
giovanni Guest
|
Posted: Sat Oct 28, 2006 4:34 am Post subject: reduction du prog |
|
|
comment simplifierai vous ce morceau de prg?
{if (nb_11==nb_1 || nb_11==nb_2 || nb_11==nb_3 || nb_11==nb_4 ||
nb_11==nb_5)
{if (nb_22==nb_1 || nb_22==nb_2 || nb_22==nb_3 || nb_22==nb_4 ||
nb_22==nb_5)
{if (nb_33==nb_1 || nb_33==nb_2 || nb_33==nb_3 || nb_33==nb_4 ||
nb_33==nb_5)
t123=t123+1;}}}
ce que j'ai fais ne semble pas marche en plus helas pour moi mais pas
compris pourquoi ca me semble juste pourtant
le prg doit voir si dans nb_11 il y a nombre egal a nb_1 ou nb_2 ou nb_3 ou
nb_4 ou nb_5
si non arete et continue le prg normal
si oui passe a nb_22 et fais le meme test et si oui fais encore le test
nb_33 il y a cestrois valeur me additione dans t123
sinon arete et continue le test si pas egal
au fait je doit faire nb_11=1 nb_22=2 nb_33=3
si cest chiffre sont dans la combinaison nb_1 nb_2 nb_3 nb_4 nb_5
ce que j'ai fais ne semble pas marche |
|
| Back to top |
|
 |
James Kanze Guest
|
Posted: Sat Oct 28, 2006 4:47 pm Post subject: Re: reduction du prog |
|
|
giovanni wrote:
| Quote: | comment simplifierai vous ce morceau de prg?
{if (nb_11==nb_1 || nb_11==nb_2 || nb_11==nb_3 || nb_11==nb_4 ||
nb_11==nb_5)
{if (nb_22==nb_1 || nb_22==nb_2 || nb_22==nb_3 || nb_22==nb_4 ||
nb_22==nb_5)
{if (nb_33==nb_1 || nb_33==nb_2 || nb_33==nb_3 || nb_33==nb_4 ||
nb_33==nb_5)
t123=t123+1;}}}
ce que j'ai fais ne semble pas marche en plus helas pour moi mais pas
compris pourquoi ca me semble juste pourtant
le prg doit voir si dans nb_11 il y a nombre egal a nb_1 ou nb_2 ou nb_3 ou
nb_4 ou nb_5
si non arete et continue le prg normal
si oui passe a nb_22 et fais le meme test et si oui fais encore le test
nb_33 il y a cestrois valeur me additione dans t123
sinon arete et continue le test si pas egal
au fait je doit faire nb_11=1 nb_22=2 nb_33=3
si cest chiffre sont dans la combinaison nb_1 nb_2 nb_3 nb_4 nb_5
|
Un peu d'information sur ce que tu essaies de faire réelement
aiderait. Est-ce que nb_[1-5] ne seraient pas un ensemble, et ce
que tu cherches, c'est quelque chose du genre :
if ( nb.contains( nb_11 )
&& nb.contains( nb_22 )
&& nb.contains( nb_33 ) ) {
++ t124 ;
}
Ensuite, en fonction des valeurs réelement utilisées et les
opérations les plus fréquentes, on choisira soit un bitmap, soit
un vecteur (éventuellement trié) soit std::set pour
l'implémenter.
| Quote: | ce que j'ai fais ne semble pas marche
|
Là, en revanche, je ne sais pas trop quoi te dire. Au moins
qu'il y a un typo que je ne vois pas, le code que tu as posté,
même si c'est lourd, est correct, et doit faire à peu près ce
que tu as décrit.
--
James Kanze (Gabi Software) email: james.kanze (AT) gmail (DOT) com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34 |
|
| Back to top |
|
 |
loufoque Guest
|
Posted: Sun Oct 29, 2006 4:29 am Post subject: Re: reduction du prog |
|
|
giovanni a écrit :
| Quote: | comment simplifierai vous ce morceau de prg?
{if (nb_11==nb_1 || nb_11==nb_2 || nb_11==nb_3 || nb_11==nb_4 ||
nb_11==nb_5)
{if (nb_22==nb_1 || nb_22==nb_2 || nb_22==nb_3 || nb_22==nb_4 ||
nb_22==nb_5)
{if (nb_33==nb_1 || nb_33==nb_2 || nb_33==nb_3 || nb_33==nb_4 ||
nb_33==nb_5)
t123=t123+1;}}}
|
std::tr1::array<int, 5> a = {...};
std::tr1::array<array<int, 3> 3> b = {{...}, {...}, ...}; // ou un
multi_array
bool found = false;
for(size_t i=0; i<b.size(); ++i)
{
for(size_t j=0; i<a.size(); ++i)
{
if(b[i][i] == a[j])
{
found = true;
break;
}
}
if(found)
break;
}
if(!found)
var++; |
|
| Back to top |
|
 |
Sylvain Guest
|
Posted: Sun Oct 29, 2006 7:20 am Post subject: Re: reduction du prog |
|
|
loufoque wrote on 29/10/2006 01:29:
| Quote: |
std::tr1::array<int, 5> a = {...};
std::tr1::array<array<int, 3> 3> b = {{...}, {...}, ...}; // ou un
multi_array
bool found = false;
for(size_t i=0; i<b.size(); ++i){
for(size_t j=0; i<a.size(); ++i){
j? j?
if(b[i][i] == a[j]){
ou i,j ou j,i ??
}
|
j'ai l'impression que ta boucle interne n'es pas vraiment l'équivalent
du 'contains' de James, la "matrice" à vérifier (nb_ii) étant d'ailleurs
de dimension 1.
Sylvain. |
|
| Back to top |
|
 |
loufoque Guest
|
Posted: Fri Nov 03, 2006 2:09 am Post subject: Re: reduction du prog |
|
|
Sylvain a écrit :
| Quote: | j'ai l'impression que ta boucle interne n'es pas vraiment l'équivalent
du 'contains' de James
|
Oui mon code est erroné.
L'idée principale c'était de remplacer ces variables à indice par des
tableaux et ces enchaînements de tests par des boucles. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|