javscript est menstrué ???Envoyé par Matthieu2000
ben quoi Javatwister réclamait de la poésie non ?
ok je
javscript est menstrué ???Envoyé par Matthieu2000
ben quoi Javatwister réclamait de la poésie non ?
ok je
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag
Venez sur le Chat de Développez !
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 ???
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag
Venez sur le Chat de Développez !
Revenons à la dernière solution acceptable:
Là on nage en plein rêve!Envoyé par Matthieu2000
et au maximum, 256 caractères
a mon avis JT à mieux en reserve ... il nous cache quelquechose ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag
Venez sur le Chat de Développez !
Tu exagere, tu change la regle du jeu en cours de partieEnvoyé 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
La je crois que tu peux nous poster ta soluce parcequ'on fera sans doutes pas mieux, enfin, pour moi, c'est grillé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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....'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Tant qu'a aller dans l'encapsulation...
Au passage, j'ai revula boucle for, plus courte...
Mais:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 :p
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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
hum; vous avez testé vos derniers ... euh... aménagements, là?
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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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
( 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 à entendreEnvoyé par javatwister
je vous rassure, c'est pas le with qui change les choses (25 / 25 )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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]) } }
tiens, une très différente qui fait aussi 143
je sais pas pourquoi, mais ça donne l'impression d'être facilement compressible
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager