begin process at 2010 02 09 18:58:33
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > ALIAS $ADD : NOUS AVONS $REMOVE , $REPLACE .. ALORS POURQUOI PAS $ADD

ALIAS $ADD : NOUS AVONS $REMOVE , $REPLACE .. ALORS POURQUOI PAS $ADD


 Information sur la source

Note :
Aucune note
Catégorie :Divers Niveau :Expert Date de création :27/03/2005 Date de mise à jour :27/03/2005 10:16:51 Vu :2 420

Auteur : RasZa

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

si vous avez besoin d'ajouter une lettre ou une combinaison , peu importe :
$add(abcdefghi,wx,2,y,3) = awxbycdefghi  

Source

  • alias add {
  • if !$1 || !$2 || !$3 { halt }
  • if 2 // $0 { halt }
  • if $0 > 3 {
  • var %z 5
  • %result = $left($1,$calc($3 - 1)) $+ $2
  • while $ [ $+ [ %z ] ] {
  • %g = %z - 2
  • %y = $ [ $+ [ %z ] ] - $ [ $+ [ %g ] ]
  • %r = %r $+ $mid($1,$ [ $+ [ %g ] ],%y) $+ $ [ $+ [ $calc(%z - 1) ] ]
  • inc %z 2
  • }
  • %r = %r $+ $mid($1,$ [ $+ [ $0 ] ])
  • }
  • else { %r = $+($left($1,$calc($3 - 1)),$2,$right($1,$+(-,$calc($3 - 1)))) }
  • return %r
  • }
alias add {
  if !$1 || !$2 || !$3 { halt }
  if 2 // $0 { halt }
  if $0 > 3 {
    var %z 5
    %result = $left($1,$calc($3 - 1)) $+ $2
    while $ [ $+ [ %z ] ] { 
      %g = %z - 2 
      %y = $ [ $+ [ %z ] ] - $ [ $+ [ %g ] ]
      %r = %r $+ $mid($1,$ [ $+ [ %g ] ],%y)  $+ $ [ $+ [ $calc(%z - 1) ] ]
      inc %z 2
    }
    %r = %r $+ $mid($1,$ [ $+ [ $0 ] ])
  }
  else { %r = $+($left($1,$calc($3 - 1)),$2,$right($1,$+(-,$calc($3 - 1)))) }
  return %r
}

 Conclusion

1er bug : Si vous mettez $add(abcde,xyx,2,gh,1) ceci vous retourneras : axyxbcdghabcde
Seulement Jai une question a propo de sa ; j'devraige le halt tout simplement ou effectuer l'opération quand meme ?

OKay là , Bienvenue a toute amélioration , question ... commentaire : j'aimerait mieux en privé , svp
Aussi j'aimerait de l'optimisation le plus possible ...si vous en voyez.


 Historique

27 mars 2005 10:15:26 :
okay !!
27 mars 2005 10:16:51 :
Désoler Mauvaise Catégorie

 Sources du même auteur

PROGRAMME POUR N'ACCEPTER QUE LES IPS PROVENANT DE TEL PAYS

 Sources de la même categorie

COMMANDES FANTAISIES ( OP DEOP , VOICE DEVOICE ) ORIGINALES par Orona
Source avec Zip Source avec une capture CORRECTEUR par Orona
Source avec Zip Source avec une capture [DLL] DESSINER COMME LES PICWINS SUR UNE DIALOGBOX (BONUS: J... par uaip
Source avec Zip Source avec une capture [DLL] AJOUT D'UN CONTRÔLE RICHEDIT SCINTILLA SUR LES DIALOG... par uaip
Source avec Zip Source avec une capture WORLDDMT - GESTION DE CAISSE V 1.0 par WorldDMT

Commentaires et avis

Commentaire de RasZa le 27/03/2005 10:13:48

vraiment désoler pour cette petite erreur mais les deux dernière lignes  ne sont pas correct :

la var nommé %result devrait etre %r

Commentaire de PaDa le 27/03/2005 10:27:53

lu,
je pige absolument pas l'intérêt de séparer le cas $0 > 3 du cas ou c'est égal a 3 ...
sinon j'trouve ca assez moche niveau crochets, mais c'est un avis personnel ;)
ca peut etre utile ! bonne continuation

Commentaire de fjxokt le 27/03/2005 11:53:55

salut
alors deja tu devrai declarer tes variables par var (variables locales) au debut:
var %z 5 , %r , %g , %y , %result
de maniere a ce qu'elles soient effacées a la fin de ton code
(chez moi qd je test plusieurs fois de suite , comme la variable n'est pas effacé, j'ai droit a l'ancien resultat + le nouveau)

de plus j'ai des bugs
ex $add(abdefg,c,3,h,4) me retourne dhefg (wtf ?)
ya plein d'exemples ou ça marche pas (par contre qd on ne met qu'un seul param ça marche bien)

Enfin bref c'est un bon debut, mais tu doit corriger ts ces problemes
(euh sinon niveau expert ç'est pas un peu haut ?)

Commentaire de MaX_62 le 27/03/2005 12:47:08

if !$1 || !$2 || !$3 { halt }
devient
if (!$3) { halt }

Sinon le reste a été dit ! Niveau expert, gloups :|

Commentaire de wims le 27/03/2005 14:28:59

Je prefere utiliser les token personnelement
Et comme tu la dis ya encore des defaut
Est ce que cela marche sur les variable ?

Commentaire de PaDa le 27/03/2005 19:41:13

MaX_62 said :
"if !$1 || !$2 || !$3 { halt }
devient
if (!$3) { halt }"

C'est faux.

Alias pouet {
if (!$3) { echo -a > La condition !dollar3 est vraie }
if (!$1 || !$2 || !$3) { echo -a > La condititon !dollar1 ou !dollar2 ou !dollar3 est vraie }
}

et teste
/pouet 0 blabla2 blabla3

Ta condition ne voit rien, alors que la sienne détecte le !$1 ;)

Bref, cela dit, dans son cas je pense que c pas un raccourci approprié de toute facon, c'eût été plus judicieux de tester l'égalité à $null (cette condition empêche d'insérer la chaine "0")

Commentaire de hisoka2501 le 03/07/2009 04:23:59

niveau expert ca ? :/
je serais admin je collerais un warning a tlm qui poste des codes de débutant en catégorie expert...

je ne parlais meme pas des erreurs d'optimisation et des syntaxes BANCALES de tes if , c'est deja un miracle que ca ne error pas avec un ambiguous format...

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales