Que fais ces algos???

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

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    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. 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é.
    2. effectivement quand je verifie c'est i+1.... mais jusque là je sais pas à quoi sert cet algorithme. quelqu'un aurait une idée
    3. Modérateur
      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 !
  2. je suis en première année info et çà fait une semaine que j'essaye de comprendre mais rien!!!!!
    1. Contributeur
      Ben commentes ce que tu as compris, les spécialistes en algo se feront une joie de te corriger/compléter ;-))
      1. 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.