Bienvenue invité ( Connexion | Inscription )
24 Oct 2005, 22:46
Message
#1
|
|
![]() Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 431 Inscrit : 22 Sep 2005 Lieu : X Membre no 46 478 |
En ces temps de bi-dualcores@2,5GHz, d'interfaces graphiques, de clefs USB à 1Go, je me souviens, des débuts de l'informatique familiale.
A l'époque ou les disquettes étaient souples ("dit papa, c'est quoi une disquette ?" Je me souviens d'un magazine ( Hebdogiciel) qui avait entres-autres un concours permanent : celui de l'écriture du meilleur programme de deux lignes maximum en basic. Evidemment compte-tenu des contraintes, les poke devaient être comptés et l'originalité et/ou l'humour faisait la différence.... Comme j'ai vu passé dernièrement un topic relatif aux concours sur MB, je me demandai si un concours de deuligneurs intéresserait des macbidouilleurs. Un "bon" exercice "d'obfuscation" partielle de code. Bon évidemment rien n'oblige à faire du basic (lequel d'ailleurs PS: J'ai choisi un lien "bateau" (Wikipedia), car j'avais un doute sur l'accord du site le plus représentatif avec la charte en ce qui concerne l'abandonware Un premier essai qui ne fait pas grand chose d'un uneligne en fortran90 (il me reste de la place....et j'aurai pu encore en gagner) CODE program deulignes_qui_nen_fait_qune;integer(kind=2)::i=0;do;i=i+1;if(i<0)exit;enddo;print*,i,int2(i-1);endprogram
Ce message a été modifié par Not a Number - 16 Nov 2005, 00:20. -------------------- -- ceci n'est pas une signature --
|
|
|
|
![]() |
25 Oct 2005, 12:21
Message
#2
|
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 486 Inscrit : 29 Aug 2002 Membre no 3 340 |
Certains langages sont plus ou moins avantagés pour ça, comme par exemple APL.
Ex 1 : Calcul de la moyenne d'une série de notes saisies au ternminal, ça donne: CODE +/V : rho V <-- [] APL utilise des symbôles comme quad (boîte), rho (taille d'un vecteur) ça se lit dedroite à gauche : V <-- [] // prononcer V reçoit quad, un, ça lit un vecteur au terminal rho V // longueur du vecteur +/V // somme des composantes d'un vecteur : // la division, en fait en APL c'est représenté comme certaines calculettes les deux points sont superposés au tiret. Ex2 : Tri ascendant d'une séries de notes saisies au terminal CODE V [ ordrecroissant V <-- [] ] V indicé par l'odre croissant de V qui reçoit quad L'ordre croissant est un opérateur composé du delta et de la barre verticale comme une silhouette disons de Concorde ou de Mirage. Il retourne les indices d'un vecteur qui correspond à l'ordre croissant. L'ordre décroissant existe aussi par superposisition du nabla (delta pointe vers le bas) et de la barre verticale. On l'appelle aussi la carotte. Ex 3 : Inversion de matrice CODE Domino M Le domino est la superposition du quad (boite) et du symbole de la division, qui fait ressembler le résultat au domino double As. Ex 4 : Justification d'une ligne de texte à 80 colonnes en rajoutant des espaces là où il y en a déjà un : CODE L <-- 'Une ligne de texte à formatter' L [ ordrecroissant iota rho L, (80 - rho L) rho (L iota ' ') ] L iota ' ' // retourne les indices des blancs dans L iota rho L // retourne les indices 1 .. longueur de L (80 - rho L) rho (L iota ' ') // génère un vecteur de la difference de taille entre 80 et la longueur de L, rempli des indices des blancs, en les répétant au besoin. Ensuite on concatène les 1.. longueur avec les indices des blancs, on trie le tout et on indice le vecteur L de départ avec le résultat. Si le début des indices calculés c'est : 1 2 3 4 4 4 5 6 ..., le résultat sera "Une<espace><espace><espace>li..." Si c'est si bien pourquoi on ne l'utilise plus ??? - Terminal spécial pour taper ces symbôles spéciaux. - Efficacité supérieure de certains individus doués qui chope le melon ... C'est devenu quoi ? Le langage J, franchement illisible, à mon humble avis. J-P [edit]Un clavier APL dans toute sa splendeur Une copie d'écran utilisant partiellement les symbôles APL, le rho est remplacé par le dièse Ce message a été modifié par Jaypee - 25 Oct 2005, 21:45. |
|
|
|
25 Oct 2005, 13:15
Message
#3
|
|
![]() Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 431 Inscrit : 22 Sep 2005 Lieu : X Membre no 46 478 |
QUOTE(Jaypee @ 25 Oct 2005, 12:21) Certains langages sont plus ou moins avantagés pour ça, comme par exemple APL. Ex 1 : Calcul de la moyenne d'une série de notes saisies au ternminal, ça donne: CODE +/V : rho V <-- [] APL utilise des symbôles comme quad (boîte), rho (taille d'un vecteur) ça se lit dedroite à gauche : V <-- [] // prononcer V reçoit quad, un, ça lit un vecteur au terminal rho V // longueur du vecteur +/V // somme des composantes d'un vecteur : // la division, en fait en APL c'est représenté comme certaines calculettes les deux points sont superposés au tiret. Ex2 : Tri ascendant d'une séries de notes saisies au terminal CODE V [ ordrecroissant V <-- [] ] V indicé par l'odre croissant de V qui reçoit quad L'ordre croissant est un opérateur composé du delta et de la barre verticale comme une silhouette disons de Concorde ou de Mirage. Il retourne les indices d'un vecteur qui correspond à l'ordre croissant. L'ordre décroissant existe aussi par superposisition du nabla (delta pointe vers le bas) et de la barre verticale. On l'appelle aussi la carotte. Ex 3 : Inversion de matrice CODE Domino M Le domino est la superposition du quad (boite) et du symbole de la division, qui fait ressembler le résultat au domino double As. Ex 4 : Justification d'une ligne de texte à 80 colonnes en rajoutant des espaces là où il y en a déjà un : CODE L <-- 'Une ligne de texte à formatter' L [ ordrecroissant iota rho L, (80 - rho L) rho (L iota ' ') ] L iota ' ' // retourne les indices des blancs dans L iota rho L // retourne les indices 1 .. longueur de L (80 - rho L) rho (L iota ' ') // génère un vecteur de la difference de taille entre 80 et la longueur de L, rempli des indices des blancs, en les répétant au besoin. Ensuite on concatène les 1.. longueur avec les indices des blancs, on trie le tout et on indice le vecteur L de départ avec le résultat. Si le début des indices calculés c'est : 1 2 3 4 4 4 5 6 ..., le résultat sera "Une<espace><espace><espace>li..." Si c'est si bien pourquoi on ne l'utilise plus ??? - Terminal spécial pour taper ces symbôles spéciaux. - Efficacité supérieure de certains individus doués qui chope le melon ... C'est devenu quoi ? Le langage J, franchement illisible, à mon humble avis. J-P [right][snapback]1386737[/snapback][/right] Une quote connue rom "Quick C" by Al Stevens COBOL was designed so that managers could read code. BASIC was designed for people who are not programmers. FORTRAN is for scientists. ADA comes from a committee - a government committee no less. PILOT is for teachers. PASCAL is for students. LOGO is for children APL is for martians. FORTH, LISP and PROLOG are speciality languages. C, however, is for programmers. un peu outrancier, mais comme d'habitude un fond de vérité J'avais mis le nez dans le J il y a qques années, mais je n'ai pas résisté à la complexité de la chose. Pour en revenir au topic, il faut effectivement faire un choix de langage. Le C (ou l'objective C) me parai[t/ssent] pas mal. Dès que j'ai le temps, je soumet un xligne (x = ?) en opengl pour donner qquechose d'un peu plus conséquent à voir. -------------------- -- ceci n'est pas une signature --
|
|
|
|
Not a Number [deterrage] retour des deulignes ? 24 Oct 2005, 22:46
schlum C'est de la triche les ";" Sinon, ... 25 Oct 2005, 09:35
Not a Number QUOTE(schlum @ 25 Oct 2005, 09:35)C'est d... 25 Oct 2005, 11:51
docphil ce concours m'énervait au plus au point étan... 25 Oct 2005, 12:21
Not a Number Comme "promis", ci-dessous un petit prog... 25 Oct 2005, 19:13
Cochonou Allez, pour ceux qui ne connaissent pas ce que c... 25 Oct 2005, 13:13
Jaypee Y' a pas besoin de le faire tourner, il sait f... 25 Oct 2005, 19:23
Not a Number QUOTE(Jaypee @ 25 Oct 2005, 19:23)Y' a pa... 25 Oct 2005, 19:31
schlum Le programme OpenGL tourne très bien, mais les li... 25 Oct 2005, 19:43
Not a Number QUOTE(schlum @ 25 Oct 2005, 19:43)Le programm... 25 Oct 2005, 19:58
schlum QUOTE(Bus Error @ 25 Oct 2005, 20:58)Je ne sa... 25 Oct 2005, 20:13
schlum QUOTE(Bus Error @ 25 Oct 2005, 20:58)J'ut... 25 Oct 2005, 22:22
Not a Number QUOTE(schlum @ 25 Oct 2005, 22:22)QUOTE(Bus E... 25 Oct 2005, 22:24
schlum QUOTE(Bus Error @ 25 Oct 2005, 23:24)PS: les ... 25 Oct 2005, 22:30
Not a Number QUOTE(schlum @ 25 Oct 2005, 22:30)QUOTE(Bus E... 25 Oct 2005, 22:31
schlum QUOTE(Bus Error @ 25 Oct 2005, 23:31)C'es... 26 Oct 2005, 12:00
Jaypee Juste une dernière couche d'APL, après j... 25 Oct 2005, 22:05
Not a Number QUOTE(Jaypee @ 25 Oct 2005, 22:05)Juste une d... 25 Oct 2005, 22:18
schlum QUOTE(Jaypee @ 25 Oct 2005, 23:05)Juste une d... 25 Oct 2005, 22:20
SuperCed Les nombres permiers en perl :
CODE
perl -le ... 26 Oct 2005, 08:29
Not a Number QUOTE(SuperCed @ 26 Oct 2005, 08:29)Les nombr... 26 Oct 2005, 09:37
f_cam C'est sympa le python, j'en ai fait tres p... 26 Oct 2005, 12:10
SuperCed Oui, c'est ça.
J'en ai fait un tout petit... 26 Oct 2005, 13:02
Not a Number Quelqu'un aurait un xlignes (x<8) à propos... 26 Oct 2005, 13:15
schlum QUOTE(Bus Error @ 26 Oct 2005, 14:15)Au passa... 26 Oct 2005, 13:28
Not a Number QUOTE(schlum @ 26 Oct 2005, 13:28)QUOTE(Bus E... 26 Oct 2005, 13:36
schlum QUOTE(Bus Error @ 26 Oct 2005, 14:36)QUOTE(sc... 26 Oct 2005, 13:45
SuperCed QUOTE(schlum @ 26 Oct 2005, 13:45)après avoi... 26 Oct 2005, 13:56

schlum QUOTE(SuperCed @ 26 Oct 2005, 14:56)QUOTE(sch... 26 Oct 2005, 15:12
Not a Number QUOTE(schlum @ 26 Oct 2005, 13:45)J'ai fa... 26 Oct 2005, 14:04
Cochonou QUOTEschlum tu peux donc maintenant révéler au m... 26 Oct 2005, 14:21
Not a Number QUOTE(Cochonou @ 26 Oct 2005, 14:21)QUOTEschl... 26 Oct 2005, 14:31
schlum QUOTE(Cochonou @ 26 Oct 2005, 15:21)QUOTEschl... 26 Oct 2005, 15:09
Not a Number QUOTE(schlum @ 26 Oct 2005, 15:09)QUOTE(Cocho... 26 Oct 2005, 15:23
Not a Number Oyé, Oyé braves programmeurs de MB , je propose... 30 Oct 2005, 01:32
Not a Number Suite à une demande nombreuse () et particulière... 16 Nov 2005, 00:18
Not a Number Parce que je voulais avoir très vite une idée de... 29 Jan 2006, 00:04
Jaypee Pourrais-tu élaborer un peu stp ?
Tu dis: en nat... 29 Jan 2006, 18:04
Not a Number CITATION(Jaypee @ 29 Jan 2006, 18:04) 153... 30 Jan 2006, 19:48
Not a Number Avec le nouveau MacBook à 2GHz en fréquence effe... 23 May 2006, 22:12
franzou Sur le mac mini solo et sa brave GMA 950 : 97% de ... 23 May 2006, 22:39
Not a Number Avec les Intel Core, il vaut mieux s'assurer q... 23 May 2006, 23:02![]() ![]() |
| Nous sommes le : 6th November 2025 - 02:48 |