Nombre parfait

Anna -  
 Anna -
Bonjour,

Mon enseignant nous a corrigé l'exercice suivant :

Ecrire un algorithme qui affiche tous les nombres parfaits inférieurs à 1000

sa correction :

Algorithme parfaits
Variables
i, n, s, j : Entier
Début
Pour i de 1 à 1000 Faire
s<-- 0
Pour j de 1 à (i Div 2) Faire
Si((i Mod j) = 0) Alors
s <-- s + j
FinSi
FinPour
Si(s = i) Alors
Ecrire(i,” est un nombre parfait”)
FinSi
FinPour
Fin.

Ce que je n'ai pas compris pourquoi il a mis " i Div 2 " ? si je prend i = 3 alors 3 Div 2 = 1.5
ça veut dire : pour j de 1 à 1.5 ? qui peut m'expliquer ça SVP

1 réponse

Utilisateur anonyme
 
Bonjour

Div représente ici la division entière. Donc 3 Div 2 donne 1 et non pas 1.5.

On peut aussi dire que "Pour j de 1 à x" signifie "Tant que j est inférieur ou égal à x", ce qui ne pose pas de problème avec x=1.5

En fait, le pseudo langage utilisé pour décrire les algorithmes n'est à ma connaissance pas normalisé, et les difficultés de ce genre n'existent pas avec les vrais langages de programmation, où le sens de chaque instruction ou opérateur est clairement défini.
0
Anna
 
Merci bien
0