Vous allez écrire un programme qui affiche tous les diviseurs positifs d'un nombre entré par l'utilisateur.
Pour ce faire, remplacez le TODO du programme ci-dessous en suivant les instructions suivantes:
- Déclarez une variable de type entier et initialisez-la en demandant une valeur à l'utilisateur.
- Déclarez une variable de type entier qui sera le compteur de la boucle et initialisez-la à
1
. - Faites une boucle
while
qui a comme test (ou condition d'itération) la vérification que le compteur d'itération est plus petit ou égal à la valeur entrée par l'utilisateur. - Dans la boucle, faites une sélection
if
dont la condition est : "Est-ce que la valeur entrée par l'utilisateur est divisible par le compteur d'itération ?". - Si la condition de la sélection est vraie (ce qui signifie que la valeur entrée par l'utilisateur est divisible par le compteur d'itérations), affichez la valeur du compteur d'itération.
- Hors de la sélection, incrémentez le compteur d'itération.
Exemple
Par exemple, si l’utilisateur indique 10
, le programme devrait afficher:
1 2 5 10
Dans le cas où l'utilisateur entre un nombre négatif ou égal à zéro, rien ne devrait s'afficher.
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)
" ? - Est-ce que si l'utilisateur entre un nombre négatif ou égal à zéro, rien ne s'affiche ?
- Est-ce que si l'utilisateur entre un nombre positif, tous ses diviseurs positifs s'affichent, y compris
1
et lui-même ?
Une fois votre programme corrigé, exécutez-le ! Si tout semble correct, postez votre réponse sur Webcampus !