Inscription / Connexion Nouveau Sujet
Niveau école ingénieur
Partager :

Algorithme écart maximal entre 2 valeurs

Posté par
Francoise
02-02-13 à 18:24

Bonjour,

Je me propose d'écrire un algorithme qui calcul le plus grand écart entre 2 valeurs d'un tableau de dimension 40lignes x 70colonnes ( l'écart est la valeur absolue de la différence de deux élements de type réel ).

Voici l'algorithme, en pseudo-code, que je propose :

Procédure diff
Var réel Tab (40,70)
Var entier H,V
Var réel i,f

Début
Pour H=0 jusqu'à 39
Pour V=0 jusqu'à 69
i=Max(Tab(H,V))
f=Min(Tab(H,V))
Fin pour
Ecart= i - f
Afficher ("l'écart maximum est : " Ecart)
Fin

Cela vous semble t-il juste? Il y a t-il un autre moyen sans utiliser Max et Min ( je ne sais pas si c'est possible de faire appel à d'autre fonctions....)

Je vous remercie d'avance pour votre aide
Cordialement

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:28

i=Max(Tab(H,V))
f=Min(Tab(H,V))

Tu calcules le maximum et le minimum d'une seule valeur? Comme disait l'autre, "Quelle est la différence entre un pigeon?"

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:31

Bref, ton algo est faux.

Citation :
min := t(0,0)
max := t(0,0)
pour i de 1 à 39
    pour j de 1 à 69
        si t(i,j) > max
            max = t(i,j)
        sinon si t(i,j) < min
            min = t(i,j)
afficher max-min


Il y a encore moyen de l'améliorer. Comment ?

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:32

Pardon, pour i de 0 à 39 et j de 0 à 79, évidemment.

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:38

Merci pour votre réponse.

i=Max(Tab(H,V))
f=Min(Tab(H,V))

Ces valeurs ne sont pas les mêmes puisque avant j'ai mis en place 2 boucles permettant de parcourir tout les couples H,V existants dans le tableau ( Pour H=0 jusqu'à 39 Pour V=0 jusqu'à 69 )
Je ne comprends pas pourquoi c'est faux...

Je vous remercie par avance,
Cordialement

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:39

Que font tes fonctions Min() et Max() ?

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:45

La fonction Max() selectionne garde la valeur maximale parmi les valeurs parcourus dans le tableau/
            Min ()                            minimale

Mais c'est vrai que c'est un peu facile de faire appel a ces fonctions...

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:46

Oui, en effet.

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:47

Ton prof n'acceptera jamais ça. Quand tu utilises une fonction auxiliaire, il faut qu'elle te soit donnée ou que tu puisses décrire son algorithme toi-même.

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:52

Ok : )

Citation :
min := t(0,0)
max := t(0,0)
pour i de 1 à 39
    pour j de 1 à 69
        si t(i,j) > max
            max = t(i,j)
        sinon si t(i,j) < min
            min = t(i,j)
afficher max-min


Je ne comprends pas bien : Imaginons que dans mon tableau il n'y a que des nombres négatifs la valeur max n'est alors jamais fixée?

Merci pour votre aide : )
Cordialement

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 18:53

max et min sont initialisées à la première valeur du tableau. (Je me suis un peu emmêlé dans mes notations, tu peux remplacer le := par un = s'il te gêne.)

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 19:13

En effet je n'avais pas pensé à faire comme ça...
Merci beaucoup : )

Pour l'amélioration , peut-être mettre si max=min alors afficher (" Toutes la valeurs sont identiques")?

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 19:15

Non, plus fondamentalement, il est possible de réduire de moitié le temps d'exécution de l'algorithme. Comment ?

Posté par
Bachstelze
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 19:34

Euh non, oublie ce que je viens de dire, j'avais autre chsoe en tête. ^^; Là, l'algorithme est optimal si on ne fait pas d'hypothèse supplémentaire sur le tableau.

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 19:34

Très honnêtement je ne vois vraiment pas...

Posté par
Francoise
re : Algorithme écart maximal entre 2 valeurs 02-02-13 à 19:35

Parfait : )
Je vous remercie pour votre aide
Cordialement



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 1719 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 !