javscript est menstrué ???Citation:
Envoyé par Matthieu2000
ben quoi Javatwister réclamait de la poésie non ?
ok je :arrow:
Version imprimable
javscript est menstrué ???Citation:
Envoyé par Matthieu2000
ben quoi Javatwister réclamait de la poésie non ?
ok je :arrow:
Putain, ca raccourci pas le code de l'utiliser alors je refais pas le bout de prog, mais j'avoue que je connaissai pas cette balise :
Comme quoi on apprends tous les jours et a tout age, je me demande quand meme bien a quoi ca peut vraiment servir en pratique et l'interet d'avoir inclus cette daube dans les standards...Code:
1
2<bdo dir="rtl">lav ud ruemrod eL</bdo>
j'avais cherché du coté de rtl ... je l'attribuais directement à la balise html mais bdo ???
Revenons à la dernière solution acceptable:
Là on nage en plein rêve!Citation:
Envoyé par Matthieu2000
et au maximum, 256 caractères :lol:
a mon avis JT à mieux en reserve ... il nous cache quelquechose ...
Tu exagere, tu change la regle du jeu en cours de partie :haha: :haha:Citation:
Envoyé par javatwister
Allez, je reprend ma boucle pour inverser la chaine, on est encore sous les 200 et plus de limites à la longueur de la chaine :D
La je crois que tu peux nous poster ta soluce parcequ'on fera sans doutes pas mieux, enfin, pour moi, c'est grillé :haha: :haha:Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 function R(c){ v=c.getElementsByTagName('div') i=v.length while(i){ p=v[--i].firstChild q=p.data r=""; for(j=0;j<q.length;j++) {r=q.charAt(j)+r} p.data=r; c.appendChild(v[i]) } }
Aaaaargh, posté trop vite, on peut encore gagner qq chars (mais franchement, je parle pas de la lisibilité à l'arrivée, remarque, arrivé a ce niveau, c'est tres accessoire) dans la boucle for...
Mais franchement, si qq me demande de debugger un truc pareil, la reponse sera 'va te faire....' :haha: :haha:Code:
1
2
3
4
5
6
7
8
9
10
11 function R(c){ v=c.getElementsByTagName('div') i=v.length while(i--){ r='' for(j=0;j<(q=(p=v[i].firstChild).data).length;r=q.charAt(j++)+r); p.data=r c.appendChild(v[i]) } }
Noter le ; tout a fait indispensable apres le for, à ne pas enlever de la longueur du code donc :haha:
Tant qu'a aller dans l'encapsulation...
Au passage, j'ai revula boucle for, plus courte...
Mais:Code:
1
2
3
4
5
6
7 function R(c){ i=(v=c.getElementsByTagName('div')).length while(i--){ for(j=(q=(p=v[i].firstChild).data).length,r='';j--;r+=q.charAt(j));p.data=r c.appendChild(v[i]) } }
1// Tes encapsulaton te font perdre un char par encapsulation ( si dans le décompte on oublie des char blancs ( " ", "\n", "\r", "\t', etc )
Donc vu qu'il a dit qu'il comptait pas les chars blancs, je change ça.
2// L'optimisation forstChild=>lastChil est tjs valable, ce qui nous donne donc ( et en plus libile ):
Au suivant :pCode:
1
2
3
4
5
6
7
8
9
10
11 function R(c){ v=c.getElementsByTagName('div') i=v.length while(i--){ p=v[i].lastChild q=p.data for(j=q.length,r='';j--;r+=q.charAt(j)); p.data=r c.appendChild(v[i]) } }
Quoique.. je suis pas sur que le for soit une bonne idée.
Si quelqu'un a un script pour compter les chars sous la main, comparez avec
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 function R(c){ v=c.getElementsByTagName('div') i=v.length while(i--){ p=v[i].lastChild q=p.data j=q.length r='' while(j--)r+=q.charAt(j) p.data=r c.appendChild(v[i]) } }
Oui, c'est vrai... Avec le ; facultatif, on s'en sort mieux sans encapsuler, et la boucle for fait gagner 2 chars en partant de la fin, mais du coup, de la fin, les 2; gagnes par le while font que ca a la meme longueur, mais on gagne le ; apres la boucle for, donc -1 char... [edit] Je viens de me relire, c'est presque aussi incompréhensible que le code[/edit]
Quel bordel ceci dit... Tout ce qu'il ne faut pas faire en prog ;)
attention Fred! je donnais juste la longueur du code de Matthieu! c'était pas une nouvelle contrainte :lol:
hum; vous avez testé vos derniers ... euh... aménagements, là? http://javatwist.imingo.net/sm12.gif
Moi yop... ceux de Calak, saispo, mais ils me semblent ok... Pour le code commun, il fait moins de 156 cars tu voulais dire ;) Ceci dit, j'aimerai bien ta soluce avant mon WE qui va commender (exceptionnelement) a 17h ;)
bah, vous avez explosé les pronostics les gars; tu peux partir tranquille :lol:
Allez, au passage pour compter les chars, un petit script vite fait:
http://calak.free.fr/tool/dacount.php
les 3 codes de mon dernier message font respectivement 166, 162 et 160 char et ils marchent tous ( je poste pas sans tester hein ;) ) ;)
Par contre, vais essayer de mettre le split()... pour voir si ca change qqc :p
[€dit]
Voila, avec mon compteur et ce code, j'arrive à 144 char ^_^
[Re€dit]Code:
1
2
3
4
5
6
7
8
9 function R(c){ v=c.getElementsByTagName('div') i=v.length while(i--){ p=v[i].lastChild p.data=p.data.split('').reverse().join('') c.appendChild(v[i]) } }
Un point virgule à la poubelle, qui nous fait passer à 144 :P
( attention, dans les 144 je ne compte pas les retours à la ligne obligatoires, donc on doit taper dans les 150 )
Un homage à un travail d'equipe qui fait plaisir à entendreCitation:
Envoyé par javatwister
:yaisse:
:lahola:
143 avec le même :haha:
je vous rassure, c'est pas le with qui change les choses (25 / 25 :haha: )Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 function R(c){ v=c.getElementsByTagName('*') i=v.length while(i--){ with(v[i].lastChild) data=data.split('').reverse().join('') c.appendChild(v[i]) } }
pas con le ('*') ^^;
tiens, une très différente qui fait aussi 143
je sais pas pourquoi, mais ça donne l'impression d'être facilement compressible http://javatwist.imingo.net/sm19.gifCode:
1
2
3
4
5
6
7
8
9
10 function R(c){ v=c.childNodes i=v.length while(i--){ try{with(v[i].lastChild) data=data.split('').reverse().join('')} catch(e){} c.appendChild(v[i]) } }
marchera pas sous FF ( pas testé là )
car avec FF, dans childNode il y a 2 fois plus de 'cases' que de balises.
t'auras un truc tupe '#text', 'DIV', '#text', etc...
C'est ça qui m'avais posé le plus de probs lors de mon essais de code.
D'où le passage par .GetElementsByTagName