Informations

Date limite Pas de date limite
Limite de soumission Pas de limite

Etiquettes

Se connecter

[6.4] 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

Évaluation

Votre code va être compilé puis testé avec plusieurs valeurs d'entrées différentes pour vérifier qu'il fonctionne bien.

Cependant, prenez déjà l'habitude de tester votre code vous-mêmes car il n'y aura pas INGInious pour le vérifier automatiquement dans l'exercice récapitulatif.

Veuillez aussi suivre les bonnes pratiques suivantes car INGInious ne sait pas les vérifier automatiquement mais elles seront vérifiées dans l'exercice récapitulatif :

  • Les noms des variables, constantes, paramètres et fonctions créés sont-ils pertinents ? Correspondent-ils vraiment à ce qu'ils doivent contenir ?
  • Est-ce que le code est correctement factorisé ? Est-ce qu'il est possible de déplacer du code en dehors des sélections ou de créer des fonctions pour avoir moins de code dupliqué ?
  • Est-ce que les sélections et conditions sont correctement organisées ? Est-ce qu'il est possible de changer l'ordre des sélections ou des conditions pour diminuer leur nombre ?
  • Est-ce que toutes les fonctions sont bien spécifiées avec des préconditions et postconditions claires ?

Le code