Suite

Signaler
Messages postés
14
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
2 décembre 2007
-
soukyyy
Messages postés
4
Date d'inscription
samedi 31 mai 2008
Statut
Membre
Dernière intervention
28 juillet 2011
-
bonjour,

J'ai passer environ 4 heures a la recherche d une solution mais j ai pas trouver qlq'un peu m'aider s il vous plaît
merci
-------
On s’intéresse aux nombres entiers de n chiffres ayant la




propriété

suivante: en partant deschiffres composant ces nombres, on compose une suite en calculant la somme des n derniers

nombres de la suite pour déterminer le suivant. La suite fournit à un moment le nombre de départ.




Exemple:





K=197 (les chiffres de départ sont 1, 9 et 7).


1,9,7,17(=1+9+7),33(=9+7+17),57(=7+17+33),107(=17+33+57),197(=33+57+107)


Nous concluons donc que 197 possède la propriété énoncée plus haut puisque ce nombre se


retrouve lui-même dans la suite.





Contre-exemple :





K=25 (2 et 5 sont les chiffres de départ).


2,5,7,12,19,31...


25 n’a pas la propriété puisque 25 ne se retrouve pas dans la suite qu’il génère.


Écrivez un algorithme qui affiche tous les nombres de 4 chiffres qui respectent la propriété en


question ici.

10 réponses

Messages postés
792
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
12 juillet 2019
7
tu n'as pas le temps de le faire toi-même????

louis14
Messages postés
280
Date d'inscription
dimanche 7 septembre 2003
Statut
Membre
Dernière intervention
8 juillet 2014
3
salut

qu'est-ce qui te pose problème ??

disons que tu as ta fonction:
int tester (int nombre);
qui renvoie 1 si le nombre respecte la propriété, et 0 s'il ne la respecte

a priori ta fonction main ressemblera à ceci:

int main() {
  int i;
  for (i = 1000; i < 10000; i++) {
     if (tester(i) == 1) printf("%d\n",i);
  }
}

ensuite, pour ta fonction tester il faut que tu saches trouver les chiffres (décimaux) qui composent un nombre
tu pourras le faire avec les opérations % et /
par exemple:

int i = 125;
while(i != 0) {
  printf("%d ", i%10);
  i /= 10;
}
printf("\n");

affichera 1 2 5
Messages postés
280
Date d'inscription
dimanche 7 septembre 2003
Statut
Membre
Dernière intervention
8 juillet 2014
3
pardon ça affichera 5 2 1 bien sûr
Messages postés
542
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
Je dirais :

1104
1537
2208
2580
3684
4788
7385
7647
7909

rrk275
Messages postés
14
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
2 décembre 2007

merci
Messages postés
14
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
2 décembre 2007

Bonjour,

rrk275 comment t'as trouvé ces résultat s'il te plaît, laformule càd.

merci
Messages postés
14
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
2 décembre 2007

bonjour,
Est ce que on peut resoudre le problem sans utilise les tableaux, ni des fonctions

merci
Messages postés
542
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
#include <stdio.h>
#include <vector>
#include <map>

const int id_max = 3 ;

bool atteint( int cible , int nb[] , bool aff )
{
  if( nb[0] == cible )
    return true ;
  if( nb[0] > cible )
    return false ;
  int f = 0 ;
  for( int i = 0 ; i <= id_max ; i++ )
    {
      if(aff)
    printf( "%d " , nb[ i ] ) ;
      f += nb[ i ] ;
      nb[ i ] = nb[ i + 1 ] ;
    }
  if( aff )
    printf("\n");
  nb[ id_max ] = f ;
  return atteint( cible , nb , aff ) ;
}

bool teste( int nb , bool aff = false )
{
  int chiffres[ 5 ] ;
  int base = 1000 ;
  for( int c = 0 ; c <= id_max ; c++ )
    {
      chiffres[ c ] = (nb/base) % 10 ;
      base /= 10 ;
    }
  return atteint( nb , chiffres , aff );
}

int main()
{
   for( int nombre = 1000 ; nombre < 10 * 1000 ; nombre++ )
    if( teste( nombre ) )
      {
    //teste( nombre , true ) ;
    printf( "%d\n" , nombre ) ;
      }
  return 0;
};

rrk275
Messages postés
14
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
2 décembre 2007

vraiment un grand merci
Messages postés
4
Date d'inscription
samedi 31 mai 2008
Statut
Membre
Dernière intervention
28 juillet 2011

stp telecomakram chui debutante en programmation je cherche un mini projet sur gestion d'un service étudiant pourriez vous m'aider ??