2013-04-26 5 views
17

Update:
überrascht, dass es so stark Downvoted wird ...Was ist der Ursprung der magischen Zahl 42, unentbehrlich in der Codierung?

Die Frage ist Codierung bezogenen und bevor diese Frage ich für „42“ in Kombination mit gegoogelt haben:

  • Website: msdn.micrsoft.com
  • "Codebeispiel"
  • "C#"
  • "magische Zahl"

Und ich bin kein Experte/Fan der westlichen Kultur/Literatur.

auch gefunden, Why are variables “i” and “j” used for counters? [duplicate], die nicht geschlossen wurde, aber auch geschützt.


Ich glaube, dass jeder weiß es, außer mir ...

Was die Herkunft der allgegenwärtigen Magie Ziffer 42 alle über die Code-Beispiele und Proben verwendet wird?

Wie kommst du mit 42? weil ich nicht immer gekommen sind oder jemals

Nach einiger Suche verwendet, fand ich MSDN doc darauf: Magic Numbers: Integers:

  • „Abgesehen von einem Nachschlagewerk/Film, verwenden Entwickler oft dies als ein beliebiger Wert "

Nun, das hat mir nichts erklärt.

Welche Filme und Bücher habe ich all die Jahre vermisst von in der Entwicklung, Codierung und Programmierung beteiligt und rund um Tätigkeiten im Zusammenhang mit wie rwquirements Analyse, Systemverwaltung, etc ??

Einige Hinweise auf einige Texte mit Code-Schnipsel mit 42 (nur C# -related):

Jérôme Laban.C# Async Tips and Tricks, Part 3: Tasks and the Synchronization Context

var t = Task.Delay(TimeSpan.FromSeconds(1)) 
       .ContinueWith 
       (
        _ => Task.Delay(TimeSpan.FromSeconds(42)) 
       ); 

MSDN Asynchronous Agents Library

send(_target, 42); 

Quickstart: Calling asynchronous APIs in C# or Visual Basic

Office.context.document.setSelectedDataAsync(
     "<html><body>hello world</body></html>", 
     {coercionType: "html", asyncContext: 42}, 
     function(asyncResult) { 
      write(asyncResult.status + " " + asyncResult.asyncContext); 

Asynchronous Programming in C++ Using PPL

task<int> myTask = someOtherTask.then([]() { return 42; }); 

Boxing and Unboxing (C# Programming Guide)

Console.WriteLine(String.Concat("Answer", 42, true)); 

How To: Override the ToString Method (C# Programming Guide)

int x = 42; 

Trace Listeners

// Use this example when debugging. 
    System.Diagnostics.Debug.WriteLine("Error in Widget 42"); 
    // Use this example when tracing. 
    System.Diagnostics.Trace.WriteLine("Error in Widget 42"); 

|| Operator (C# Reference

// The following line displays True, because 42 is evenly 
    // divisible by 7. 
    Console.WriteLine("Divisible returns {0}.", Divisible(42, 7)); 

    // The following line displays False, because 42 is not evenly 
    // divisible by 5. 
    Console.WriteLine("Divisible returns {0}.", Divisible(42, 5)); 

    // The following line displays False when method Divisible 
    // uses ||, because you cannot divide by 0. 
    // If method Divisible uses | instead of ||, this line 
    // causes an exception. 
    Console.WriteLine("Divisible returns {0}.", Divisible(42, 0)); 

WikiPedia C Sharp (programming language)

int foo = 42;   // Value type. 
+12

Ich würde dir sagen, aber dann müsste ich dich töten ... – Arun

+5

+1 für die beste Frage aller Zeiten: D –

+0

Ich habe das seltsame Gefühl, dass diese Frage hier nicht gehört, aber ich bin mir nicht sicher wohin es bewegt ... –

Antwort

14

Die Antwort ist, wie die Leute schon gesagt haben, The Hitchhiker's Guide to the Galaxy.

machte ich ein kleines Experiment und legte ein paar Zahlen in das Suchfeld ein, und das sind die Ergebnisse:

enter image description here

Es ist wie 42 deutlich seine Nachbarn schlägt scheint, aber es kann nicht berühren normale Zahlen wie 40, 45 und 50, egal wie magisch es ist.

Es wäre interessant, die gleiche Suche in Quellcode nur zu tun.

+1

"50" ist über-verwendet, weil es mit fünfzig-fifty (stats, Glücksspiel), Münzen usw. verwandt ist, aber nicht mit Codierung Styling –

+1

"0" ergibt 1.892.567 Ergebnisse und "1" 2.354.125;) –

+0

Ich liebe "117 ". Liebe ist blind und unvernünftig –

22

Es ist von The Hitch Hiker's Guide to the Galaxy.

In Per Anhalter durch die Galaxis (1979 veröffentlicht), besuchen Sie die Zeichen der legendären Planeten Magrathea, die Heimat der jetzt zusammengeklappten Planeten-Bauindustrie, und treffen Slartibartfast, eine Planeten Küste Designer, war verantwortlich für die Fjorde von Norwegen. Durch Archivaufnahmen erzählt er die Geschichte einer Rasse von hyperintelligenten, pan-dimensionalen Wesen, die einen Computer namens Deep Thought zur Berechnung der Antwort auf die Ultimate Question of Life, das Universum und Everything, gebaut haben. Als die Antwort zu 42 enthüllt wurde, erklärte Deep Thought, dass die Antwort unverständlich sei, weil die Wesen nicht wussten, was sie verlangten. Es fuhr fort, vorherzusagen, dass ein anderer Computer, der leistungsfähiger als selbst wäre, und entworfen wurde, um die Frage für die Antwort zu berechnen. (Später, diese Referenzierung, würde Adams schaffen die 42 Puzzle, ein Puzzle, auf vielfältige Weise angegangen werden konnte, wodurch man die ganze Antwort 42.)

+1

Für Bonuspunkte ... _why_ hat Douglas Adams 42 gewählt? –

+4

@PaulCager: [Ich saß an meinem Schreibtisch, starrte in den Garten und dachte '42 wird es tun 'Ich tippte es aus.] (Https://groups.google.com/d/msg/alt.fan.douglas- adams/595nPukE-Jo/koaAJ3tPBtEJ) – Andomar

+0

Also, "42", wie es in [MSDN docs] (http://msdn.microsoft.com/en-us/library/ee621251.aspx) gesetzt wurde, ist ein Synonym von "willkürlich Wert". Ich dachte immer vorher, dass "arbitrary" synonym zu "random" sei und nichts mit "pre-selected", "fixed" oder "ULTIMATE" zu tun habe. R ** –

4

Dies ist von Die Wanderer Hitch durch die Galaxis und ist:

die Antwort auf die entscheidende Frage nach dem Leben, dem Universum und alles

WikiLink

6

prüfen this aus.42 ist die ultimate answer to the ultimate question of life the universe and everything