Que fais ces algos???

siewe.anais Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
ajp55 Messages postés 426 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, s'il vous plait pourriez vous me dire ce que fait ces algorithmes?

algorithme algo1
debut
pour i allant de 1 à 4 faire
j <-- j+1
bool <-- j+1
ftanque
s <-- s + (j-1)
fpour
fin



algorithme algo2
debut
s <-- 0 a <-- 1 i <-- 3
repeter
i <-- 1+1
a <-- a*i
si a mod 3 = 0 alors
s <-- s+a
sinon
si a mod 3 =1 alors
s <--- s-a
fsi
fsi
jusqu'à i> 5
fin

5 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
C'est en effet difficile de comprendre l'incompréhensible...
Le premier algo est incomplet alors difficile d'en tirer quoi que ce soit
De plus marque les indentations ça t'aidera à comprendre la structure des algos.

algorithme algo1
debut
|    pour i allant de 1 à 4 faire
|    |    j <-- j+1 // que vaut j au départ ?
|    |    bool <-- j+1
|    |    ftanque // fin tant que, mais où est le début tant que ?
|    |    s <-- s + (j-1) // que vaut s au départ ?
|    fpour
fin

algorithme algo2
debut
|    s <-- 0
|    a <-- 1
|    i <-- 3
|    repeter
|    |    i <-- 1+1
|    |    a <-- a*i
|    |    si a mod 3 = 0 alors
|    |    |    s <-- s+a
|    |    sinon
|    |    |    si a mod 3 =1 alors
|    |    |    |    s <--- s-a
|    |    |    fsi
|    |    fsi
|    jusqu'à i> 5
fin
1
ajp55 Messages postés 426 Date d'inscription   Statut Membre Dernière intervention   23
 
ton algo 1 est incomplet et il ya des erreur, KX l'a souligné.
ton algo 2 ne finira jamais, puisque ta variable i restera toujours égale à 2=1+1 et n'atteindra jamais 6(>5) pour sortir de la boucle repéter.

je pense que tu as une erreur dans ton affection i<--1+1. tu devrais peut être écrire i<--i+1;sinon ton algo va tourner indéfinement

prochainement écris correctement ton algo, si t'a vraiment besoin d'aide.

j'espère t'avoir aidé.
0
siewe.anais Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   3
 
effectivement quand je verifie c'est i+1.... mais jusque là je sais pas à quoi sert cet algorithme. quelqu'un aurait une idée
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Ils ne servent à rien, outre les erreurs, il n'y a pas d'entrée, pas de sortie...
Autant dire que ça fait des calculs sans trop d'intérêts !
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
0
siewe.anais Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   3
 
ok c'est noté
0
siewe.anais Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   3
 
je suis en première année info et çà fait une semaine que j'essaye de comprendre mais rien!!!!!
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Ben commentes ce que tu as compris, les spécialistes en algo se feront une joie de te corriger/compléter ;-))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ajp55 Messages postés 426 Date d'inscription   Statut Membre Dernière intervention   23
 
si on considère i<--i+1
ton algo2 ressemblerai à cela
Pré Condition
      s=0;
      i=3;
      a=1.

dans la boucle on a
1ère itération, i=3 different de 5
     i=4      //i<--i+1   (3+1)
     a=4    //a=a*i      (1*4)
     si a mod 3=0   // 4 mod 3  =1
              faux
     sinon
            si a mod 3==1 // 4 mod 3 =1
                     vrai donc
                     s=-4     //s<--0-4=-4
            finsi
     finsi
2ème itération, i=4 different de 5
  i=5      //i<--i+1   (4+1)
     a=5    //a=a*i      (1*5)
     si a mod 3=0   // 5 mod 3  =2
              faux
     sinon
            si a mod 3==1 // 5 mod 3 =
                     faux
            finsi
     finsi
    //Ton s n'a pas changer a la deuxième itération
3ème itération, i=5, egale à 5 et non > 5 pour sortir
      i=6      //i<--i+1   (5+1)
     a=6    //a=a*i      (1*6)
     si a mod 3=0   // 6 mod 3  =0
              vrai donc
              s=2     //s=-4+6   (-4+a)
              //On n'execute pas le sinon
     finsi
 4ème itération, i=6 >5, donc la condition est vérifier  jusque i>5
on sort d boucle 


Post condition

i=6, s=2 et a=6.


Ton algo modifie les valeurs entrante i,s,a.

le problème est que tu ne fais rien avec ces variables ainsi modifier. tu ne les affiche pas, tu n'effectue aucun action sur elles. à quelles variables tu t'intéresse vraiment.
0