Vertyos -> désolé de remettre ça sur le tapis mais ça me paraît important :
le problème des index retournées lors de la recherche multiple avec la fonction 'test'.
En effet nous en avions déjà discuté et il se trouve que le compteur n'est pas mis à 'zéro' à chaque nouvel élément recherché.
Pour ce faire , j'utilise la fonction basic suivante :
mod( l,n ) + n * iPart( 2^( -mod( l, n ) ) ) -> mod_(l,n)
m'enfin c'est une version de la fonction modulo 'mod()' du basic mais qui ne ramène pas zéro mais n lorsqu'on fait mod(n,n)
l : liste des index trouvés retournés par 'test' lors d'une recherche de type : "test","#liste",
n : nombre d'éléments de la liste ou s'effectue la recherche.
Je voudrais savoir si c'était possible d'incorporer cela dans Vertel à défaut de pouvoir initialiser l'index de départ.
Ou mieux en faire une nouvelle fonction 'modo' différente de celle du basic un peu comme string() et 'strn'
Et puis maintenant que tu as fais 'sequ' pourquoi ne ferais-tu pas 3 fonctions supplémentaires
"ops+" : addition
"ops*" : multiplication
"ops/" : division
ça devrait pas prendre beaucoup de place non !
Zeph Le 06/07/2004 à 12:15 T'as du déjà m'expliquer mais j'ai à nouveau rien capté à ton "explication" sur la remise à zéro de l'index, t'as pas un exemple, ça irait plus vite ?
Pour les modes de seq -> non.

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
EXEMPLE: vertel("test",{1,2.3,2.4,2,3},"[STO]",{2,3},"","retr","a")
je veux rechercher la position de 2 et 3 dand la liste
on obtient quelque chose du genre a={2,4,6,10,14} au lieu de {2,4,6,3,7} tout ça parceque l'index de départ de 'test' n'est pas mis à 0 lorsque l'on utilise les TAG.
est-ce possible que tu puisse arranger cela ; parceque la fois dernière tu avais essayé le 3ème argument numérique comme indexe de départ mais cela n'a pas fonctionné.
Pour resoudre le problème , j'utilise la fonction basic suivante :
mod( l,n ) + n * iPart( 2^( -mod( l, n ) ) ) -> mod_(l,n)
l : liste des index retournés par 'test' lors d'une recherche multiple avec TAG (voir EXEMPLE)
n : nombre d'éléments de la liste dans laquelle s'effectue la recherche. (7 dans l'exemple )
cette fonction basic est une version de la fonction modulo 'mod()' du basic mais qui ne ramène pas zéro mais n lorsqu'on fait mod(n,n)
je te propose d'implémenter cette fonction 'modo' au cas où tu ne pourrais régler directement ce problème.
Zeph Le 06/07/2004 à 21:18 Hmm... Je garantis rien mais essaie quand même :
Tu veux rechercher dans la liste "list" les elements contenus dans la liste "key".
{1,2,3,4,5,6,7}->list
{2,3}->key
vertel("test",list,"»",key,0,seq(0,i,1,dim(key)),"","retr","a")

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Zeph Le 07/07/2004 à 12:44 Avec un seul element à la fois ? C'est simplement le même appel que le tien, avec remise à zéro de l'index en plus à chaque décalage dans la 2eme liste. Je ne sais même plus exactement comment les listes sont traitées, si ça ne marche pas bah... Tant pis, les modifications à ajouter pour que ça fonctionne seraient trop importantes.

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
peut-être que c'est moi mais j'ai l'impression que ce n'est pas spécifique comme problème et que c'est important de le regler.
Pour regler le problème il serait peut-être intéressant que tu fasse cette fonction modulo qui retourne n au lieu de 0 quand on fait 'mod(n,n)'.
vertel("test",{1,2.3,2.4,2,3},"»",{2,3},"","retr","a")
a={2,4,6,10,14} au lieu de {2,4,6,3,7}
Pour resoudre le problème , j'utilise la fonction basic suivante sur la liste retourné par l'appel
mod( l,n ) + n * iPart( 2^( -mod( l, n ) ) ) -> mod_(l,n)
En faisant mod_(a,2) = {2,4,6,3,7}
Mais ça rame lorsque la liste devient importante.
Peut-être connais-tu une autre façon de faire cela en basic vu que je suis quasiment certain que ma requête d'implémentation d'une nouvelle fonction (soit disante trop spécifique alors qu'elle vient regler un problème) n'aboutira pas.
En fait, faudrait que vertel remette a 0 le compteur de position chaque fois que qu'elle passe à l'élément suivant dans la liste d'élément à recherché.

Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.
Aussi peu de résultat, quand même...
Si on reprend mon exemple :
vertel("test",{1,2,3},"»",{1,2},"","retr","a")
si g bien suivit, renverrat a=={1,3} ce qui est faux.

Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.
Eh oui ! faut pas faire de recherche multiple mais seulement unique et dans une boucle For.
C'est la seule solution
Et en passant l'index en globale et en le remettant à 0 quand y a un changement dans la liste de test (je c pas trés jolie, mais bon, ça devrait pas faire grossir la lib de plus d'une10-aines d'octets, je penses).

Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.
Non mod(x,n) ramène 0 si x=n donc faut passer mon petit bidule
mod( l,n ) + n * iPart( 2^( -mod( l, n ) ) ) -> mod_(l,n)
et la ça peut ralentir si la liste est importante
Zeph Le 08/07/2004 à 15:06 Ah oui merde Vertel respect les index basic qui commencent à 1... Bah "mod(plop,dim(list))+1->plop" alors.

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
ça va pas marché ! tu fait un décallage qui va se repercuté dès que tu auras atteint 'dim(list)+1'
tu vera pas le temps d'expliqué ; fait plus d'un cycle avec le TAG et tu verras !
A part la première recherche , tout le reste sera faux
Zeph Le 08/07/2004 à 16:03 Rahhh t'adaptes ! Y'a un +1, un -1 à caser quelque part, ajuste le truc la méthode est là...

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
j'ai déjà tout essayer et le seul truc rapide que j'ai trouvé c'est ça :
mod( l,n ) + n * iPart( 2^( -mod( l, n ) ) ) -> mod_(l,n)
Elle est pas mal ta fonction, je pensais à ca :
mod( l,n ) - n * floor( (mod( l, n ) -1)/n ) -> mod_(l,n)
Mais c'est seulement dans de très grandes listes que c'est un tout petit peu plus rapide...
Zeph Le 08/07/2004 à 16:33 Bon voilà :
mod(plop-1,dim(list)-1)+1->plop
Cette fois ça marche...

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Bon voyons voir si ce truc fonctionne
dans la liste {1,2,3,10,4,2,3,5,3,5}->list chercher {2,3} devrait donner plop={2,6,13,17,19}
donc mod(plop-1,dim(list)-1)+1 donne : {2,6,4,8,1} au lieu de {2,6,3,7,9}
Pour la fonction 'test' a-tu vérifié que ce que j'ai dit à propos du résultat érronné retourné par Vertel lorsqu'on fait une recherche multiple avec tag sequenciel ?
Zeph Le 13/07/2004 à 16:46 Pas besoin de vérifier, je sais très bien ce que ça donne, l'index n'est pas remis à zéro entre chaque liste, et ça je le sais très bien...
(Au fait la moindre des politesses quand on passe sur IRC c'est de dire bonjour)

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
désolé si j'ai été un peu mal poli !
J'ai un bug avec Vertel 3 Version Développeur : il fait crasher la calto qand on affiche un PIC à une coordonnée strictement supérieure à 99 en ordonnée...
Et moi une réclamation (euh, juste une proposition hein !) :
Il faudrait que dans vertel, on puisse rajouter une option à glue pour pouvoir extraire les fichiers la où l'on veut.
Je m'explique :
Si je "groupe" des fichiers en indicant leur repertoire, en les dégroupant, ils iront dans leur repertoire où ils etaient avant, or j'aimerais pouvoir tous les extraire dans le même repertoire.
Un exemple au cas où je ne serais pas compris :
Je rassemble un fichier dans main et un dans jeux :
main\vertel("glue","fichier",{"main\fichier1","jeux\fichier2"})
Au moment de l'extraction, ces fichiers iront respectivement dans main et dans jeux, or je voudrais les extraire tout les deux dans un dossier GROUP par exemple.
J'aimerais alors savoir s'il était possible de rajouter cette option.
ça devrait être faisable assez facilement, mais c'est la syntaxe qui faut définir proprement

<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)
<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant