Triez une liste et écrivez de l'anglais!


99

Votre patron a réussi à lire le message caché secret . Il n'a pas fini par vous virer, cependant, il vous a juste nommé secrétaire et vous a interdit d'écrire du code.

Mais tu es un programmeur. Vous devez écrire du code. Vous devez coder.

Par conséquent, votre code doit ressembler le plus possible à l'anglais, avoir un sens et aussi peu que possible au code. Votre code doit prendre une liste d'entiers (dans une fonction ou STDIN) et renvoyer cette liste triée (en le renvoyant ou STDOUT).

N'importe quelle langue peut être utilisée, mais je recherche la solution la plus créative (félicitations si votre code ressemble à une lettre commerciale).

C'est un concours de popularité!


14
des espaces à la rescousse?
Kaine

19
Ou SPL .
Dennis

4
J'ai aussi pensé à SPL, mais le chef peut aussi être amusant: P
Adriweb le

@ Dennis Ce serait presque impossible à comprendre.
Isiah Meadows

Drôle .. il n'y a pas encore de soumission de rubis! : P
Gaurav Agarwal le

Réponses:


161

GolfScript

Cher Boss Man.

J'ai remarqué que mon clavier doit être remplacé. les clés nécessaires pour écrire les
symboles ~ $ `. et} ne fonctionnent pas correctement.

C'est très difficile de travailler comme ça! Veuillez demander au service informatique d'échanger le
clavier défectueux dès que possible.

Cordialement,

Dennis

Essayez-le en ligne!

Comment ça fonctionne

  • Les jetons non définis (par exemple, la plupart des mots anglais) sont des noops dans GolfScript.

  • . ; duplique la chaîne d'entrée et ignore la copie.

  • ~ $ évalue la chaîne d'entrée et trie le tableau résultant.

  • ` inspecte le tableau (pour une jolie impression).

  • . and duplique la chaîne de sortie et rejette la copie.

  • }est un "super commentaire" puisqu'il est incomparable; tout ce qui suit est ignoré.


111
Je suppose que vous avez écrit ceci sur votre autre clavier?
Geobits

13
Peut-être l'a-t-il écrit avec le clavier de la souris caché dans le gaboodle d'accessibilité?
Tally

46
C'est un commentaire en ligne ... c'est un commentaire de bloc ... c'est un SUPER-COMMENT!
Poignée de porte

9
@Geobits: Supposons que "ne fonctionne pas correctement" se traduit par "nécessite plusieurs tentatives pour que les caractères
apparaissent

Ou il a utilisé la carte de caractère.
dan04

111

PHP

Définit une fonction appelée itemqui va trier un tableau que vous lui transmettez.

Dear Boss,
I have successfully discovered all brackets.
The ones marked with question marks are the ones which I am not sure about.
The ones marked with asterisks can be used both as an opening and closing delimiter.
(
)
{
}
[
]
>?
<?
/*
'*
"*

Thank you for reading my memo. In other news, the */ function item (#12 in the list of things that have an asterisk before them) was discovered recently, which I read on a local news site.
#12 is my favorite function item! Just thought you'd be interested. Sorry if this is too off-topic; here's some business stuff. Imagine that you had some (let's say you have a combination of $10
& $money) # of dollars (i.e. you have $10 + $money). Now, here's the important part. It's so important, I'll separate it from the rest of this message with the brackets I discovered:

{
#10 in my personal list of things to remember about money management is that you have to be careful. I still haven't been able to
sort #9 out yet (I bought the manual from someone else), but #9 also seems to be about being careful. You also have to guard the dollars
($money); #13 says that if you don't protect them by putting them in a bank or something, they might be stolen.
}

   //-----------------------\\
  //   Signed,               \\
  //   Your great employee   \\
   //-----------------------\\

Cela paraît beaucoup mieux si vous le collez dans un éditeur de texte et que vous redimensionnez la fenêtre afin de pouvoir tout voir en même temps sur votre écran.


118
"J'ai découvert avec succès tous les supports." Quelqu'un va être employé du mois!
Martin Ender

20
-1: Vous avez manqué «et». (En sérieux, +1.)
Kevin

4
Wow man. : D ne peux pas m'empêcher de rire
Ven

70

Python 2

'''''''''''''''''''''''''''''''''''''''''''''
One of the phones in the office seems to be broken, so it needs to be fixed.

''''''''''''''''''''
This memo was made while testing the functionality of its buttons since
some of them didn't seem to work.
''''''''
1 (no alphabets) working with no problem
''''''''
abc working with no problem
'''''''''
def working (partially):
 please                                              =( 'o" :\
 at least I figured out that this was a problem!     :')
 # list (phone number list) was missing as well, so I need to:

 #1
 print (please, sorted (partially)) [1] # list, and [2] the memo
 #2
 return
 #3
 check (making-sure, ghi-jkl-etc. works)

''''''''''''''''''

44
+1 aime la façon dont tu t'es faufilé defpour signifier 'les lettres de la touche de téléphone 3'.
AJMansfield

68

Python 2

'''
                        5th of September 2014

Dear Boss,

I  am writing    this Mail because     i want to discuss  
 the recent   incident.
I am Thankful    that you did not fire   me, and gave me a secretary position instead.
I dont have any    experience in being a     sec retary and I am not very. good at   writing mail,
so please   excuse any spelling,   grammar or   formating   errors  in     this mail.

I will       certainly     try to improve  and do   my best in my new job      and will'''
'from now on strictly ';exec'''ute your orders.   =
Firstly      i want to    sincerly        apologize my   dumb behaviour,it was  idiotic ( and childish ).
I   really  ;apologize  to you. it  wont  .happen again, sir. If   i   could  
 only   reverse   the  timeline       (to undo it all). Then i would;
I   really   promise to never  write  code in any form

Can i talk about that   in   a   meeting with  you?
  Maybe    today at'''[4::15]#in the afternoon?

Trouver les mots justes était une vraie douleur.

Entrée: [1,7,4,3]
Sortie: [1,3,4,7]


48
Cela ressemble à ces courriels que je reçois du Nigeria lol
Chris Cirefice Le

6
@ChrisCirefice Eh bien, ces mails contiennent probablement aussi du code caché;) L'espacement et la formulation quelque peu médiocre dans mon code sont dus au fait que chaque 15ème caractère de la chaîne après l'exécutable forme une nouvelle chaîne qui est ensuite exécutée. Donc, l'ensemble du programme est essentiellementexec"y=input();y.sort();print y"
Markuz

1
La '''chaîne multiligne au sommet est un cadeau mort, malheureusement, mais +1 pour "désormais strictement" exécuter "vos ordres." et bon effort: p
Thomas

60

NetLogo

To Manager [IT]

Let Sue sort it; then
show Sue the end to the end

Lorsque l'indentation et la capitalisation changent, le code devient clair (er). Ceci définit une fonction appelée managerqui prend une liste en entrée et imprime la liste triée.

to manager [IT]
  let sue sort IT; then (semicolons introduce a comment)
  show sue
  the
end

to the
end

7
Ne ressemble certainement pas à du code.
Dennis

1
J'aime beaucoup celui-ci.
Nathan Merrill

59

C

Entrée sous forme de liste séparée par des espaces via STDIN, sortie sous forme de liste séparée par des espaces par STDOUT.

Dear Boss, 

I have made for you a decision about my employment a t your company. At about noon 
a letter explaining this shall be presented to you, as I am a lazy person. As you 
are a fool, I will say no more. And I look forward to never seeing you again.

Insincerely, 
Steward Pitt

Ceci devrait être compilé avec:

gcc bossletter.c -o bossletter -Dam='+++' -Dwill='---' -Dthis='{' -Dhave=';' 
-Ddecision=',' -Dquit='*' -Dfor='(' -Dmy=')' -Dbrain='}' -Dlie=']' -Dnoon='-quit'
-DD='' -Dto='D' -Dyou='D' -Dfool='you' -Das='to' -Dday='D' -Dno='fool' -Dcake='Pitt'
-Dlook='you' -DPitt='the' -Dthe='as' -DBoss='a[9999 lie' -DAs='a have' -Dlazy='my' 
-Dperson='lazy have company' -Dyour='this' -DInsincerely='a' -Dcompany='b' 
-Demployment='int quit' -DDear='struct this employment a have brain b have' 
-Dbe='scanf for' -Dis='I[' -Dnever='for presented " " decision' -Dthat='4 decision' 
-Dagain="my have b" -Dt='decision quit about have' -Dshall='while for' 
-Dpresented='"%" to "d"' -Dletter='have brain' -DAt='a have return quit' 
-Dmore='have b' -DAnd='a have shall' -Dare='qsort for' -Dforward='--my printf' 
-Dexplaining='main for my' 
-Dsay='1 decision that made my day' 
-DSteward='Boss have no brain' 
-Dseeing='the cake is a lie'

Le code se développe pour:

struct{ int *a; } b;
a[9999], I;
made(a, about) int *a, *about; {
    b.a;
    return *about - *a; 
}
main(){
    while(scanf("%d", I++ + a));
    b.a;
    qsort(a, I-- - 1, 4, made);
    b.a;
    while(I--) printf("%d ", I[a]);
    b.a, a[9999];
}

41
+1 pour un abus du préprocesseur. Bien sûr, avec ce genre de chose, vous pourriez peut-être le faire lire comme n'importe quel morceau de code que vous voulez.
moelleux

12
Vous auriez dû donner un sens aux mots-clés et aux variables et utiliser uniquement le pré-processeur pour les caractères spéciaux tels que les accolades. Vous n'avez même pas fait d'effort.
bebe

3
@bebe plus l'abus, le mieux, à mon humble avis :).

9
Le codegolf suivant consiste à compiler cette "source" en une implémentation du jeu de la vie de Conway. -Dle golf!
slebetman

2
@fluffy J'adore les abus de préprocesseur dans les C occultés. Vous pouvez créer presque tout ce qu'il contient de code C valide avec suffisamment de #define/ -Ds.
Isiah Meadows

24

Python 2 et 3

Malheureusement, les employés d'aujourd'hui ne peuvent tout simplement pas arrêter d'utiliser des hashtags partout ...

#WritingALetter #Business    Dear Boss,
#SecondLine    I found this scrap of paper on the floor. It said "

def sortl(l):        # define a function
    return sorted(l) # returns the list, sorted "

#ScrapOfPaper    Just thought I should let you know.
#Honesty    From Laurence

[Vaut la peine d'essayer, je suppose?]


20
Excellente excuse pour utiliser des commentaires, mais malheureusement, il contient le code actuel

Ajouter imprimer "bonjour" à la fin
Anthony Pham

17

Brainfuck

Hey boss! This is the public key that you asked!

>,[[-[>>+<<-]>+>]<[<<]>,]+>[>+<-]>[>[>+<<->-]<[<<.>>-]<<[>>+<<-]>>+>>]

Pretty cool huh?

Note de copyright:

Remarque: je copie copié à partir d' ici. Pour autant que je sache, les codes de ce site sont protégés par les droits d'auteur cc by-sa 3.0 avec attribution. Si cette méthode est illégale, faites le moi savoir et je vais essayer de le supprimer.


4
"Votre code doit avoir le moins de code possible."
Sean Latham

27
C'est une clé publique pour le cryptage! Pas de code! Différent!
Realdeo

2
@Realdeo N'oubliez pas que, à la deuxième ligne, vous pourrez lire davantage d'entrées après le
lancement

Bonne prise! Modification
Realdeo

4
Avec brainfuck, il devrait être beaucoup plus facile d'incorporer simplement le code en texte brut. >par exemple peut être utilisé pour les guillemets (c'est comme ça que ça marche dans les emails) et ainsi de suite.
Ingo Bürk

16

JavaScript

Je ne suis pas sûr de pouvoir le déjouer, mais je peux le jeter hors de mon chemin!

/*Hello Bossman
I feel the need to alert you to a pressing matter.
Nothing Dan from Marketing's head seems to be */function/*ing anymore.
I have a lot of evidence, but not enough time to */sort/* through it.
Should I just send it to you directly */(/*although I'm sure you have about a thou*/s/*and other things to do*/)/*?
Nah, here's it in a summary:

Dan seems to be overly facinated by the */{/* key on his keyboard, and presses it many times a minute.
He */return/*ed his new Galaxy */s/*4, after trying to eat it, multiple times.*/.

/*When Dan was tasked to */sort/* through the Haberson account, he attempted to stab his computer multiple times with a ruler */(/*he was eventually deterred by Jenny)
Everyone backed off for a few days, but we all remembered.
Later, we approached him about the incident, he claimed hostile working conditions and that he was unable to */function(/*.
I think he m*/a/*y need to see a psychatrist.

None of us feel safe to approach him on the topic again*/, b/*rining up conflict is something most of us like to avoid. (except Jenny*/)
{/*Dan was then moved to a different spot in the building, in an attempt to give him a new environment.
Despite the move he */return/*ed to his old desk every day, and wrote */a - b/* on the walls of the new spot.
We all just sort of accepted that and the layout planner gave up after a week or two.

One week we got a new employee in the office. When she went to say Hi to Dan, he screamed a - b over and over.
Not sure what his fascination is there. b-c is a much superior algorithm.

We're not really sure what caused this, but one day he switched from the { key to the */}
/*key. Dan switched back the next day.

There is an ongoing betting pool on what will happen next (general categories mostly*/)
/*Currently the betting for him stabbing an actual person is at almost $20,000.

Please do something about Dan. If anything start a reality TV show from the security tapes.

On a completely unrelated note, I love this new */}/* key, it's really neat looking. Did my keyboard always have this?
Sincerely,
Zeke*/

function sort(s) { return s.sort(function(a,b) { return a-b }); }


15
L'abus de commentaires rend cela plus évident.
Isiah Meadows

14

Dogescript

C'est essentiellement anglais, non?

shh oooot! my  keyybr oad is brokn. i ne ed neew 1.
such fixs much keys
keys dose sort
wow keys

Se traduit par:

// oooot! my keyybr oad is brokn. i ne ed neew 1. 
function fixs(keys) {
    keys.sort();
    return keys;
}

15
Je pense que ton patron va te
renvoyer

10

LiveScript

Essayez de trouver celui-ci ... Il lui envoie des courriels comme celui-ci depuis le début pour permettre un copier-coller facile et plus polyvalent.

# Mr. Boss,
#
#     So, I'm done with this job. It is driving
#     me crazy. We aren't allowed to have *any*
      fun =#(. I am planning on leaving this
#     company while you all poorly attempt to
#     sort all this out. Also, I would like to
#     mention that a specific single bit in the
       sort # for your in-house algorithm gets
#     inverted. Happy hunting while I have fun
#     programming for another company far more
#     grateful than yours.
#
# Best regards,
# Your handy little programmer-turned-secretary.

1. Sa bibliothèque standard, Prelude.ls, a une fonction de tri native.
2. Notez les deux hachages manquants (commentaires). Le premier est beaucoup plus évident que le second.

Il analyse comme ceci: "fun = sort", et compile ceci: "var fun; fun = sort;"


À propos, le surligneur de syntaxe est un échec. L'un des commentaires n'est pas analysé correctement.
Isiah Meadows

10

Détour (non compétitif; -;)

Dear Boss Man
I thought I had put your recovered files on drive z.
In reality it was downloaded to the main drive, C://users/boss/recovery. Sorry for the confusion!

Interprète Permalink

Comment ça fonctionne:

La seule partie importante est ://et la ligne au- dessus, z.. :signifie "mettre entrée ici", le premier le /reflète z, ce qui est une sorte; il monte ensuite, passe au-dessus du sommet, continue de monter du bas, puis frappe /du bas, ce qui le fait rebondir de gauche à droite /, ce qui fait la même chose, sauf que cette fois-ci passe à la .sortie.

Version simplifiée:

Deviation

Dear Boss Man             
             z.
            ://

Essayez-le en ligne!


5

JavaScript (ES6)

      (a) => /*----------*\ <= (a)
       |      Announcement      |
  .   (a)    \*----------*/    (a)   .

 sort (/* YOUR DOCUMENTS BEFORE 2/5 )*/

     ($,_) => /*--------*\ <= (_,$)
      |         Warnings         |
 //  (_-$)    \*--------*/    ($-_)  //

      /*( NO SMOKING IN OFFICE */)

Essayez-le en ligne!

Oui, je sais que le patron aime les décorations de fantaisie dans ses avis, j'ai donc mis les textes en majuscule et entouré les textes de symboles fantaisistes :)

PS Pourquoi le bureau utilise-t-il toujours TELNET?

En fait, en supprimant les commentaires et les espaces vides redondants, on crée le (a)=>(a).sort(($,_)=>($-_))contenu, et c’est ce que le projet vise; P


3

√ å ı ¥ ® Ï Ø ¿

J'ai seulement écrémé l'autre réponse mais je pense toujours que la mienne est de loin la meilleure (n'est-ce pas nous tous).

isolate quickly! Then read this short story: Funny Steve Jobs
. A Short Story
 by This Guy. Steve Jobs looked at the heavy stone in his hands and felt annoyed. He walked over to the window and reflected on his sunny surroundings. He had always loved nice Silicon Valley with its huge, hurt houses. It was a place that encouraged his tendency to feel annoyed. Then he saw something in the distance, or rather someone. It was the figure of Bill Gates. Bill was a happy monster with young heads and old feet. Steve gulped. He glanced at his own reflection. He was a funny, irritating, beer drinker with skinny heads and ginger feet. His friends saw him as an abundant, average angel. Once, he had even made a cup of tea for an unusual old lady. But not even a funny person who had once made a cup of tea for an unusual old lady, was prepared for what Bill had in store today. The sun shone like coding dogs, making Steve violent. As Steve stepped outside and Bill came closer, he could see the anxious smile on his face. Bill glared with all the wrath of 9230 stupid healthy humans. He said, in hushed tones, "I hate you and I want money." Steve looked back, even more violent and still fingering the heavy stone. "Bill, you stole my idea," he replied. They looked at each other with angry feelings, like two creepy, curried cats challenging at a very sad party, which had jazz music playing in the background and two annoying uncles doing to the beat. Steve regarded Bill's young heads and old feet. "I feel the same way!" revealed Steve with a delighted grin. Bill looked sad, his emotions blushing like a charming, cheerful computer. Then Bill came inside for a nice drink of beer. THE END

2

Sensationnel

'Dear Bossman,
I finally found the formula to calculate the salary for the new employees.
In the salary software just enter the following:'
print "${(args.toList()*.toInteger()).sort()}"'
Sincerely,
Employee'

13
Vous n'êtes pas censé écrire du code. C'est du code.
Zach Mertes

7
J'aime bien celui-ci. Cacher le code à la vue de tous.

4
LOL tu devrais mettre "j'ai trouvé la formule Excel " alors. Bien que je connaisse assez bien Excel, la référence ne m'est jamais venue à l'esprit.

5
Les formules @kuroineko Excel n'ont pas cette syntaxe, n'est-ce pas?
Petit enfant

3
8 votes positifs et 9 votes négatifs? Sensationnel; c'est controversé.
Ypnypn

2

05AB1E

Dear Boss‚

I hope I{qualify for this new function. I once again want to sincerely apologize for my earlier secret message.
Thank you for giving me the opportunity to work at this apartment instead.
I must admit it's hard to resist the urge to write code, but I'll do my best.

Thank you.

Kind regards from your new secretary,
Kevin Cruijssen

Essayez-le en ligne. (TIO utilise la version précédente qui est un peu plus rapide. Fonctionne de la même manière que la nouvelle version 05AB1E.)

Explication:

Le code 05AB1E ignore les retours à la ligne et les espaces en dehors des chaînes ou des chaînes / nombres compressés (sauf lorsque vous utilisez l'instruction (if-) else que je viens de découvrir lors d'une tentative précédente de création de ce programme ..>.>), Faisons de même dans cette explication.

DearBossIhope # These are all no-ops; they do execute, but won't affect the output:
D              #  Duplicates the (implicit) input-list
 e             #  Calculates the number of permutations of each item in the list
               #  (NOTE: this might time-out depending on the values in the input-list)
  a            #  Check if these numbers are letters (becomes a list of 0s / falsey values)
   r           #  Reverse the items on the stack
    B          #  Base conversion
     o         #  Raise 2 to the power of each number
      s        #  Swap the top two items on the stack
       s       #  Swap the top two items on the stack
              #  Pair the top two items
               #  (NOTE: This is not a regular comma (,), since that would print the top of
               #   the stack to STDOUT, which we of course don't want here.)
         I     #  Push the input-list again
          h    #  Convert each value to hexadecimal
           o   #  Raise 2 to the power of each integer value
            p  #  Check for each if it's a prime
             e #  Calculate the number of permutations of each item again

I{q            # Then the actual program comes:
I              #  Push the input-list
 {             #  Sort it
  q            #  Stop the program
               #   This makes everything that comes after it no-ops
               #   And will output the top of the stack implicitly as result

Essayez-le en ligne avec le mode débogueur ajouté pour voir tout cela en action.


1
+1 pour être naturel.
HighlyRadioactive

1

Zsh

Je ne sais pas si le code ou l'écriture créative était plus difficile.

: RE: The state of the evaluation process; eval `#problems'

: While I appreciate your enthusiasm, going to `print `
: this for the world to see isn't helpful in the long run.
: Please, don't make any more enemies than you already have.
:
: > People seem to just want that `'$'`: It's a big problem
: > which needs to be resolved. People need to buy into the
: > company's team-based philosophy `'{'`: ... ''}''
:
: While I do not deny that people "just want that '$'",
: I absolutely disagree that it's a _bad_ thing. Employees
: should not be guilty for wanting to leave for greener
: pastures, so you should try and provide _some_ incentive
: to stay.
:
: > And yet everyone want's to just check "(y)" or `'(n)'`
: > without giving _any_ further feedback... You're too LAZY!
:
: I want to stop you here. Accusations like this against my
: team are _not_ to be tolerated. We do a _lot_ behind the 
: scenes which you _clearly_ aren't aware of. Please refrain
: from `'@-ing'' any of my team, and think with a bit more
: empathy next time, thank you.

-- Gamma :-}'

Essayez-le en ligne!

  • Remarque: Ceci créera des fichiers nommés "Personnes" et "Sans" dans le répertoire à partir duquel il est exécuté.

  • À partir de la première ligne, vous pouvez voir le eval, suivi de backticks.

  • # commentscontinuez jusqu'à la fin de la ligne, empêchant la résolution des guillemets ou des backticks, nous utilisons donc des :no-ops pour indenter.

  • Le modèle standard que nous utilisons tout au long de ceci est `: lots of filler text.... : more filler text, then an important `'X'` : back to the garbage

  • À la fin, il y a une exception: tout du @-ingdernier au dernier }n'est pas non-op'd.

  • Lorsque la substitution est terminée, il se lit comme suit: eval print $'${(n)@-ing any of my team, and think with a bit more\n: empathy next time, thank you.\n\n-- Gamma :-}'La corbeille qui suit @ne fait rien, ce qui équivaut à print ${(n)@}, ce qui est simplement une sorte numérique des paramètres.



0

JavaScript (Node.js)

Attachment => (

`Date: 2019/5/30

Dear my Majestic Boss,

Re: Business Trip to Japan

I'm writing to confirm itinerary for the next trip to Japan will be as follows:

`? (Tennoji, Osaka) => ("Shinsaibashi Tower", Osaka)

|| // Day 1

Tennoji [Osaka, "sort"] 
(Hotel = (JPY$14112, Taxed) => `So I will stay here for one night, and I will be charged this price:

`? JPY$14112 + (0 - Taxed) 
:`This is the total price and what I will claim afterwards.`

):0) (Attachment)

|| // Day 2

"Shinsaibashi Tower" [Conference, `NOT FOR SHOPPING`]

`I will be coming back on Day 2, so the trip will not cost too much hopefully.

Best regards,
The-former-programmer`

Essayez-le en ligne!

Ok c'est un itinéraire apparemment. Une autre réponse dans une direction différente après un an.

La partie vraiment importante est Attachment => (Tennoji => Tennoji["sort"]((JPY$14112, Taxed) => JPY$14112 - Taxed))(Attachment)


-1

C #

// Cher patron,

/*i have a */public/*shed a*/ List /*of*/ <string>/*s
to*/ Sort /*for you on our internal website
please take a look at the */(List /*of*/ <string>/*s and*/ check){
/*them for company restrictions. please also */check /*the */.Sort();/*ing of the     list*/
/*furthermore could you please */return /*an email to me in which you state your */check/*ing state*/;}

// sincerely your slave Rob

5
Mon dieu, c'est difficile à lire ...
Beta Decay

12
On dirait trop codey.
Isiah Meadows

2
Commentaires évidents :) La première ligne se lit public List <String>, sans beaucoup de tracas :)
Martijn
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.