Inscription / Connexion Nouveau Sujet
Niveau Reprise d'études
Partager :

Algorithme

Posté par
Bandicootz
18-10-19 à 00:24

Bonsoir,

J'ai encore du mal à assimiler les algorithmes. En voilà un exemple :

fonction f(t: tableau d'entiers):
    n := longueur(t)
    Pour i allant de 0 a n−2 faire
        Si t[i] > t[i+1] alors
            retourner (faux)
        FinSi
    FinPour
    retourner (vrai)


Exécutez l'algorithme ci-dessous sur le tableau [1,4,5,8] puis sur le tableau [1,5,4,8], en détaillant les opérations effectuées à chaque tour de boucle.

En fait,  je n'arrive pas à comprendre à quoi correspond   n := longueur(t), n est un entier mais pourquoi lui attribuer longueur(t) ? Est-ce que t correspond aux entiers donnés dans l'énoncé : ([1,4,5,8]) ? Quel est le rapport

Posté par
Bandicootz
re : Algorithme 18-10-19 à 00:28

(J'ai compris qu'il s'agissait d'un algo de tri, mais le truc qui me rébute dans tous les algo que je croise c'est ce fameux n:=longeur(t) dont je ne comprends pas toujours la signification)

Posté par
Jezebeth
re : Algorithme 18-10-19 à 00:57

Bonjour

par exemple pour t = [1,4,5,8], longueur(t)=4 donc en écrivant "n:=longueur(t)", on définit n comme étant 4 tout simplement.

Posté par
Jezebeth
re : Algorithme 18-10-19 à 00:57

n n'est rien avant d'être défini, le symbolisme ":=" indique une définition ; on introduit n.

Posté par
Zrun
re : Algorithme 18-10-19 à 07:34

Ce n'est pas un algorithme de tri mais un algorithme qui vérifie si un tableau est trié ...

Posté par
alb12
re : Algorithme 18-10-19 à 08:09

salut, ce topic pourrait aussi figurer dans le forum lycee.

Posté par
Bandicootz
re : Algorithme 18-10-19 à 09:47

Merci pour vos réponses!

  Si t[i] > t[i+1] alors
            retourner (faux)

Du coup là il faut verifier pour t=0 si 1>4
Pour t=2 Si 4>5...etc ? (Je confonds tjrs le i avec le n...)

Posté par
alb12
re : Algorithme 18-10-19 à 10:03

si n=4 alors il faut regarder l'inegalite pour i de 0 à n-2=2

Posté par
Bandicootz
re : Algorithme 18-10-19 à 10:51

Donc, toujours en m'appuyant de l'exo, ça serait :

Pour n=1 :
i=0 à n-2=-1
0<-1 (faux)

Pour n=4 :
i=1  n-2=2
1<2 (vrai)

pour n=5 :
i=2 n-2=3
2<3 (vrai), etc ?

Posté par
alb12
re : Algorithme 18-10-19 à 10:55

non
soit t=[1,4,5,8]
la taille de t est 4 et ne varie pas
que vaut t[0] ? t[1] ? t[2] ? t[3] ?

Posté par
Bandicootz
re : Algorithme 18-10-19 à 11:11

t[0] = 1
t[1] = 4
t[2] = 5
t[3] = 8 ?

Je viens de comprendre que n est le nb d'éléments contenus, donc 4...

Comme on veut de i a 0 de n-2=2
Donc on ne prend en compte que jusqu'à t[2]?

L'exécution de l'algorithme serait plutot sous cette forme
t[0]=1 < 1+1=2 (vrai)

Posté par
alb12
re : Algorithme 18-10-19 à 11:23

dans la boucle:
t[0]<t[1] vrai ou faux ? si vrai on continue dans la boucle si faux on sort de la fonction avec le resultat faux
t[1]<t[2] vrai ou faux ? etc
etc

Posté par
Bandicootz
re : Algorithme 18-10-19 à 11:55

Merci d'avoir pris de ton temps pour m'expliquer, je pense que c'est rentré.

Dernière question,  

Citation :
Comme on veut de i a 0 de n-2=2
Donc on ne prend en compte que jusqu'à t[2]?
Si ça ne signifie pas ça, la donnée n-2=2 sert à quoi du coup?

Posté par
alb12
re : Algorithme 18-10-19 à 12:34

"Si t[i] > t[i+1] alors " dit ton programme
i varie de 0 à n-1 donc i+1 varie de 1 à n-1
les elements de t sont numerotes (indicés) de 0 à n-1

par ex si n=4:
on compare les elements d'indice 0 et 1
si vrai alors: (si faux on sort de la fonction)
on compare les elements d'indice 1 et 2
si vrai alors: (si faux on sort de la fonction)
on compare les elements d'indice 2 et 3
si vrai alors: (si faux on sort de la fonction) ...

Posté par
Bandicootz
re : Algorithme 18-10-19 à 12:49

Merci



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !