[Debutant] Determiner le mode d'une suite de nombre.
9 réponses
Olivier BURELLI
Bonjour,
Je ne souhaite pas abuser de votre patience, mais ne sais vers qui me
tourner. Vivi, j'ai du mal =C3=A0 assimiler les boucles... :p
Devant determiner le MODE d'une suite de nombres plac=C3=A9e dans un
vector, apr=C3=A8s l'avoir tri=C3=A9e, j'ai r=C3=A9alis=C3=A9 le code sis e=
n bas du
pr=C3=A9sent post.
apr=C3=A8s avoir saisie la suite : 1, 1, 2, 3, 3, 3, 4
je n'obtiens pas le r=C3=A9sultat attendu, je reviens sans arret sur mon al=
go
mais tatillone. ne comprenant pas la sortie suivante :
Entrer une suite de nombres pour alimenter le vector v : 1
Entrer une suite de nombres pour alimenter le vector v : 1
Entrer une suite de nombres pour alimenter le vector v : 2
Entrer une suite de nombres pour alimenter le vector v : 3
Entrer une suite de nombres pour alimenter le vector v : 3
Entrer une suite de nombres pour alimenter le vector v : 3
Entrer une suite de nombres pour alimenter le vector v : 4
Entrer une suite de nombres pour alimenter le vector v : ^D
boucle N=C2=B0 1
Lecture de v[0] et v[1]
Compteur d'occurence temporaire : 0
Nouvelle occurence > Ancienne Occurence : 1 > 0
boucle N=C2=B0 1
Lecture de v[3] et v[4]
Compteur d'occurence temporaire : 1
boucle N=C2=B0 2
Lecture de v[4] et v[5]
Compteur d'occurence temporaire : 1 <-- devrait =C3=AAtre modifi=C3=A9
il y a 1 nombres identiques
le mode vaut : 1 <--- Il devrait valoir trois.
Lorsque la suite ne se termine pas par le chiffre 4, le r=C3=A9sultat
attendu est correct.
Probl=C3=A8me d'algo ou de traduction en code ?
Par avance, merci.
voici Le code de la boucle traitant les occurences :
vector<unsigned int> v; // vector stockant la suite de chiffre.
int mode=3D0; // variable stockant la valeur de l'occurence
// trouve a l instant t
int compteur =3D 1; // compteur des occurence
int temp_mode =3D 0; // variable temporaire stockant le nombre d'occurence
// jusqu'=C3=A0 trouver une occurence plus grande=20
// Stocker alors le nombred'occurence
temp_mode =3D compteur;
=09
// r=C3=A9initialiser le compteur d'occurence
compteur =3D 0;
// stocker la valeur de cette occurence
mode =3D v[j];
}
=09
}
=09
=09
// Sinon si la position du vector n est la derni=C3=A8re position
else if (j =3D=3D v.size() - 1)
{
// Si compteur de boucle > nbre d'occurence precedente
// ET que valeur de n-1 =3D=3D valeur du dernier n
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode à la fin (dans backup_occurrence) ? Que se passe-il avec la suite 1 2 2 2 2 3 3 3 ?
-- Alain.
P/S: je te laisse continuer seul, on est largement hors-charte ici.
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode Ã
la fin (dans backup_occurrence) ? Que se passe-il avec la suite
1 2 2 2 2 3 3 3 ?
-- Alain.
P/S: je te laisse continuer seul, on est largement hors-charte ici.
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode à la fin (dans backup_occurrence) ? Que se passe-il avec la suite 1 2 2 2 2 3 3 3 ?
-- Alain.
P/S: je te laisse continuer seul, on est largement hors-charte ici.
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode à la fin (dans backup_occurrence) ? Que se passe-il avec la suite 1 2 2 2 2 3 3 3 ?
je vais continuer seul oui merci,
je pense effectivement qu'il faut tester si l'occurence est paire ou impaire effectivement g des pb sur le nb d'occurrence. mais cette suite me donne bien le mode 2.
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode Ã
la fin (dans backup_occurrence) ? Que se passe-il avec la suite
1 2 2 2 2 3 3 3 ?
je vais continuer seul oui merci,
je pense effectivement qu'il faut tester si l'occurence est paire ou
impaire effectivement g des pb sur le nb d'occurrence. mais cette
suite me donne bien le mode 2.
T'es sûr ? Est-ce que tu as bien le bon nombre d'occurrences du mode à la fin (dans backup_occurrence) ? Que se passe-il avec la suite 1 2 2 2 2 3 3 3 ?
je vais continuer seul oui merci,
je pense effectivement qu'il faut tester si l'occurence est paire ou impaire effectivement g des pb sur le nb d'occurrence. mais cette suite me donne bien le mode 2.