Resolution algorithme

effimbra Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
 olivier -
Bonjour,
je suis un debutant en algo.aidez moi a resoudre mon problème:
on me demande d'ecrire un algo qui calcul la somme des N premiers nombres par addition successive .La valeur de N sera lue et la somme sera affichée.On utilisera la structure tant que et condition faire.
aidez moi sil vous plait .merci
A voir également:

4 réponses

cedric1989 Messages postés 261 Date d'inscription   Statut Membre Dernière intervention   37
 
J'ai du mal à comprendre ton exercice : il faut calculer la somme de n nombre premier :
exemple pour n = 7 :1+2+3+5+7+11+13
ou alors on donne un nombre 13546, et n = 3, et on doit faire 1+3+5
0
effimbra Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
revoici l'enoncé:
Ecrire un algorithme qui calcule la somme des n premiers nombres entiers par additions successives. La valeur de n sera lue et la somme sera affichée. On utilisera la structure "TANT QUE condition FAIRE…".
0
effimbra Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Les N premiers nombres entiers
0
olivier
 
Voici un algorithme qui test si un nombre et premier.

Tu n'a plus qu'a l'inclure dans ton algo de somme de la manière suivante si test est true ajouter l'entier, et passer à l'entier suivant; Sinon passer à l'entier suivant.

cordiaolement.


Fonction nombrePremier_essaisDeDivision
Déclarations
Variables i, n, racine //en entiers
Variables fini //en booléen
Début
Ecrire("Entrez un nombre : ")
Lire(n)
racine <-- partieEntiere(sqrt(n)) //On calcul la racine carré du nombre n, et on en prend la partie entière, afin d'arrêter l'algorithme à temps.
fini <-- FALSE //Prend la valeur TRUE lorsque l'algorithme est terminé.
i <-- 3

Si (n < 2)
fini <-- TRUE
SinonSi (n != 2)
Si (n MODULO 2 = 0) //Si n est pair, alors il ne peut pas être premier...
fini <-- TRUE
Sinon
TantQue((NON fini) ET (i <= racine))
Si (n MODULO i = 0) //Si n est divisible par i, alors il n'est pas premier.
fini <-- TRUE //On arrête l'algorithme
Sinon
i <-- i+2 // "+2" car il est inutile de tester la divisibilité de n avec les nombres pairs, car n n'est pas pair....
FinSinon
FinTantQue
FinSinon
FinSinonSi
Retourner (NON fini) //retourne TRUE si le nombre est premier, FALSE sinon.
Fin
0