Information

Author(s) Berg Lucas
Deadline No deadline
Submission limit No limitation

Sign in

[6.4a] Nombres amicaux

Remplacez les TODO du programme ci-dessous afin qu'il calcule si deux nombres entrés par l'utilisateur sont amicaux.

Deux nombres sont amicaux si la somme des diviseurs entiers de l'un (sauf lui-même) vaut l'autre et réciproquement.

Veillez à créer la fonction "somme_diviseurs" comme demandé dans le code !

Exemple

Par exemple, si l'utilisateur indique 220 et 284, le programme devrait afficher:

220 284
220 et 284 sont des nombres amicaux

En effet,

  • La somme des diviseurs de 220 = 1+2+4+5+10+11+20+22+44+55+110 = 284
  • La somme des diviseurs de 284 = 1+2+4+71+142 = 220

Autoévaluation

Une fois votre programme écrit, vérifiez et corrigez les points suivants:

  • Chaque instruction se termine-t-elle bien par un point virgule ?
  • La séquence d'instruction après l'accolade ouvrante est-elle alignée mais légèrement décalée vers la droite par rapport à "main" ?
  • Chaque variable est-elle déclarée ? C'est-à-dire, avez vous déterminé le type de chacune de vos variables ?
  • Avez-vous utilisé la fonction de lecture qui correspond au type de la variable dont vous voulez obtenir la valeur ? Par exemple, si vous voulez obtenir un int, avez-vous bien utilisé "scanf("%d", &votre_variable)" ?
  • Avez-vous bien créé les fonctions demandées ?

Une fois votre programme corrigé, exécutez-le ! Si tout semble correct, postez votre réponse sur Webcampus !


Le code