Page 1 sur 1

Adressage indexé

Posté : 08 nov. 2017, 20:51
par chineindo
Bonjour à tous.
Je me pose une question depuis un petit moment et je ne trouve aucune réponse sur le net.
A quoi sert l'adressage indexé ? Je sais comment cela fonctionne mais je ne trouve pas d'application concrète pour l'utiliser.
Ça doit être simple mais je ne vois vraiment pas.

Re: Adressage indexé

Posté : 08 nov. 2017, 21:23
par itasoft
Slts,
Exercice : mettre l’adresse des mots en valeurs :
Ex:
%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;
.................
.................
................
.................
%MW31999:=31999;
%MW32000:=32000;

écrire ces 32000 lignes de programme

Re: Adressage indexé

Posté : 09 nov. 2017, 07:08
par R26R
itasoft a écrit : 08 nov. 2017, 21:23 Slts,
Exercice : mettre l’adresse des mots en valeurs :
Ex:
%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;
.................
.................
................
.................
%MW31999:=31999;
%MW32000:=32000;

écrire ces 32000 lignes de programme
Excel ? :lol:

C'est vrai que c'est le meilleur exercice de base.

On peut aussi s'en servir par exemple quand on à un tableau de points par exemple
%MW1 = position x
%MW2 = position y
%MW3 = position x 2
%MW4 = position y 2
On imagine un système qui doit aller d'un point A à un point B et dès qu'on à atteint cette position, on passe à la seconde en incrémentant l'index.

Mais c'est vrai que 90% du temps on va s'en servir avec une boucle.

Re: Adressage indexé

Posté : 11 nov. 2017, 18:44
par MikeKol
Aujourd'hui je trouve que l'indexage est bien pour des taches comme évoquer ci-dessus ou pour gagner de la mémoire, mais je haie l’indexage car dans les vieux programmes c'est compliquer pour moi qui n'est pas à l'aise avec cela.

Re: Adressage indexé

Posté : 11 nov. 2017, 21:18
par chineindo
Au final je crois que j'ai pas compris l'indexage....
C'est fou que sur Internet on ne trouve pas d'info qui explique cela facilement et qui donne l'utilité d'une telle fonction.

Re: Adressage indexé

Posté : 11 nov. 2017, 21:41
par R26R
Cherche des tutoriels sur d'autres langages de programmation, et regarde au niveau des boucles et pointeurs tu va trouver pas mal d'exemple. Après la différence sera simplement la syntaxe. Ca prends peut être un peu de temps mais je pense que c'est nécessaire, je travaille pas sur des machines/process de fou, et j'en utilise / croise régulièrement.

Pour l'exemple d'itasoft, en gros il demande de faire la suite logique suivante :

%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;

Jusqu'a 32 000.
Soit tu te tape tout a la main ou avec excel jusqu'a %MW32000 := 32000;

Soit en 1 minute tu fais une boucle qui va faire 32 000 fois la même chose :
(Attention je ne connais pas la syntaxe) :

%MW0 := 1
FOR %MW0 < 32000 // On reboucle jusqu'a ce que le compteur soit >= 32 000
%MW[%MW0] := %MW0
%MW0 := %MW0 + 1; // On incrémente le compteur
NEXT;

Au premier tour de boucle %MW0 = 1, le programme va donc exécuter %MW1 := 1; et %MW0 va devenir égal à 2
Donc au second tour de boucle le programme va exécuter %MW2 := 2 etc

L'avantage : ça prend 3 lignes à écrire, c'est plus clair qu'un gros bloc, et lors des tests, tu prends 2 valeurs au hazard, et si c'est bon ton programme est validé à 100%. Parce que si tu tape tout à la main tu dois vérifier chaque valeur en théorie...

Re: Adressage indexé

Posté : 14 nov. 2017, 22:48
par chineindo
Je vais regarder ça alors :)