hanye2020 | Voila j'ai essayé d'ajouter des commentaires est ce c'est comme je voudrais que vous l'améliorer un peu plus merci et je sais po comment changer de variable :s
Code :
- #include <iostream>
- using namespace std;
- int difference1_0(int ); /* declaration de ma fonction qui est en dessus de ma fonction int main */
- int main ()
- {
- bool estNegatif=true;
- int nombre_entre,nbre_suite_dif,nbre_suite_finale=0,nbre_courant=0; /* nbre_courant est le enieme nombre de la suite de difference de 1_0 */
- cout<<"Entrez un nombre : ";
- cin>> nombre_entre;
-
- for(int nbre_affichage=0 ; nbre_affichage < nombre_entre ; )
- {
- nbre_suite_dif=difference1_0(nbre_courant); /* nombre de la première suite des resultats du nombre de un moins le nombre de zero*/
- if(nbre_suite_dif==0)
- {
- nbre_suite_finale++; /* compteur du nombre d'affichage de la suite finale */
- }
-
- else
- {
- bool estNegatif2=(nbre_suite_dif<0);
- if(estNegatif==estNegatif2) /* on compare les nombres consecutifs , de la suite des resultats de la difference de 1 et 0 , entre eux */
- {
- nbre_suite_finale++;
- }
- else
- {
- cout<<nbre_suite_finale<<" ";
- nbre_suite_finale=1; /* on reinitialise le compteur du nomnbre de la suite finale */
- estNegatif=estNegatif2; /* on sauvegarde le dernier nombre pour le comparer au nombre suivant */
- nbre_affichage++;
- }
-
- }
- nbre_courant++; /* on passe au nombre suivant de la suite de difference entre 1 et 0 */
- }
- system("PAUSE" );
- }
- int difference1_0 (int nombre_entre) /* fonction qui calcule la difference de 1 et de 0 après avoir effectue une representation binaire */
- {
- int rest,zero=0,un=0,dif;
- do
- {
- rest=nombre_entre%2;
- if(rest==0)
- {
- zero++;
- }
- else if(rest==1)
- {
- un++;
- }
- nombre_entre=nombre_entre/2;
-
- }
- while(nombre_entre!=0);
- dif=(un-zero);
- return dif;
- }
|
Message édité par hanye2020 le 18-10-2008 à 19:30:16
|