Mathematica
これが書かれた順序であるため、この下から上を読みたいと思うかもしれません。また、いくつかの説明は前のスニペットを参照するか、さらに下から説明を引き受けるでしょう。
リストはかなり長くなっています。あまり興味のないスニペットを削除し始めたので、スニペットをスキップします。参照してください。改訂履歴をスニペットチェックアウト、いくつかの本物の宝石のために41までのスニペットの完全なリストについては、81、64、44、23、19、12および8を。
長さ143および144のスニペット
最後に...私はこれをしばらく待っていました(そしてそれと同じくらい長い間ゴルフをしていましたので、もっと長く待つ必要はありません)。先に述べたように、数値的に方程式を計算することもでき、微分方程式を解くこともできます。その重要な例を示したいと思いました。
ロッド上の二重振り子(つまり、別の振り子に取り付けられた振り子)を考えます。各ロッドには単位長があり、2つの振り子おもりにはそれぞれ単位質量があります。また、方程式を短縮するために単位重力を使用しました。次の143文字のスニペットは、このようなシステムのラグランジュ運動方程式を解きます(振り子の角度と角運動量に関して)。ラグランジュ力学に精通している場合、派生はこのPDFで見つけることができますが、かなり簡単な演習です。
私はそれをたくさんゴルフしなければならなかったので、それはまったく読めません:
d=θ@t-φ@t;NDSolve[{#''@t==-#4#2''[t]Cos@d-##3#2'@t^2Sin@d-Sin@#@t&@@@{{θ,φ,1,.5},{φ,θ,-1,1}},θ@0==2,φ@0==1,θ'@t==φ'@t==0/.t->0},{θ,φ},{t,0,60}]
素晴らしいのは、Mathematicaが解が大まかにどのように見えるかのミニチュアプロットをすぐに表示することです:
わかりましたが、それは少し不自由です。振り子の動きが実際にどのように見えるかを知りたい。下の振り子の軌跡をトレースしながら振り子をアニメーション化する144文字のスニペットを次に示します。
Graphics@{Line@{{0,0},p=θ~(h={Sin@#@#2,-Cos@#@#2}&)~t,p+φ~h~t},White,{0,0}~Circle~2.2}~Show~ParametricPlot[θ~h~u+φ~h~u,{u,0,t}]~Animate~{t,0,60}
結果のアニメーションは次のようになります。
少しカンニングしなければなりませんでした:を超えてプロットt = 30
するとParametricPlot
、デフォルトでは使用するプロットポイントが少なすぎて、線がギザギザになります。しかし、興味深いダイナミクスのほとんどはその後に発生PlotPoints -> 200
するため、アニメーションの後半がより滑らかに見えるようにするオプションを使用しました。それは実質的に違いはなく、前半はとにかく見分けがつかないように見えます。
本当に驚くべきことを考え出さない限り、これが最後のスニペットになると思います。これを楽しんだことを願っています!
長さ100のスニペット
GeoGraphics[{GeoStyling[Opacity[0.5]], NightHemisphere[]}, GeoBackground -> GeoStyling["ReliefMap"]]
私はGeo
100スニペットのいくつかの素晴らしい機能を考えていましたが、最終的にはTweet-a-Programで本当に気の利いたものを見つけました。上記は、レリーフマップの上に半球形の半球形の夜半球を重ねることで、現在の日時の地球の非常に見栄えの良い太陽マップを生成します。
長さ81のスニペット
CellularAutomaton[{{0,2,3,If[0<Count[#,1,2]<3,1,3]}[[#[[2,2]]+1]]&,{},{1,1}},i,n]
それが最後のセルオートマトンであることを約束します。しかし、まさに81文字のWireworldがあります。今回はルールを1つの数字にエンコードしませんでした。a)それはとてつもなく巨大だと思います(気にしませんでした)CellularAutomaton
。今回は、ルールは単純に純粋な関数として指定され、セルの近傍を受け取り、セルの新しい値を返します。これは、2つ以上の色/状態を持つセルオートマトンにとってはるかに実行可能なアプローチです。
とにかく、私はウィキペディアのサンプルi
(2つのクロックが信号を生成し、1つのXORゲート)をセットアップし、約50ステップ実行しました。
興味があれば、実際のプロットとアニメーションはスニペット77である可能性があります。
ListAnimate[ArrayPlot[#,ColorRules->{0->Black,1->Blue,2->Red,3->Yellow}]&/@w]
長さ69のスニペット
DSolve[r^2*R''[r]+2r*R'[r]-R[r]==0&&(R[r]==1&&R'[r]==2/.r->1),R[r],r]
何か役に立つものに戻りましょう。通常の方程式系とは別に、Mathematicaは微分方程式系も解くことができます。上記は技術的には境界条件を持つ微分方程式の1つにすぎませんが、3つの方程式のシステムとして提供することもできます。積分関数に似ているのDSolve
は正確な解法でありNDSolve
、システムを数値的に解きます。上記は単一のソリューションを生成します
{{R[r] -> 1/2 r^(-(1/2) - Sqrt[5]/2) (1 - Sqrt[5] + r^Sqrt[5] + Sqrt[5] r^Sqrt[5])}}
これは、今後の計算やプロットに簡単に使用できます。
長さ64のスニペット
CellularAutomaton[{224,{2,{{2,2,2},{2,1,2},{2,2,2}}},{1,1}},i,n]
もっとCellularAutomaton
魔法を約束しました!このスニペットは、ステップの初期条件でConwaysのGame of Lifeを計算し、すべての中間タイムステップの結果を提供します。i
n
パラメーターに関するいくつかの言葉2
は、セルの状態の数です。{{2,2,2},{2,1,2},{2,2,2}}
3x3近傍の9つのセルの重みを与えます。これにより、セル自体が8つの近隣の合計と区別できるようになります。{1,1}
CAルールは、いずれかの方向に1ステップ離れたセルに依存すると言います。最後224
に、単一の数値にエンコードされた実際の更新ルールがあります。この数を計算するのは少し難しいかもしれませんが、ドキュメントにはかなり有用なチュートリアルがあります。より複雑なオートマトンの場合、単一の数字ではカットされません(数字が膨大になるため)。明日そこに着くかもしれません!;)
とにかく、ランダムグリッドをにi
、そして200 にフィードn
し、アニメーション化されたを介して結果を送信すると、ArrayPlot
実際に機能していることがわかります。
長さ59のスニペット
SphericalPlot3D[Re[Sin[θ]Cos[θ]Exp[2I*φ]],{θ,0,π},{φ,0,2π}]
スニペット26の極座標を覚えていますか?3Dでも同じことができます!(実際、RevolutionPlot3D
円柱極と球極の2つの関数がありますSphericalPlot3D
。)Graphics3D
Mathematicaではすべての3次元プロットが自動的に回転できるように、前もってカメラの角度を気にする必要はありません。上記は、球面調和関数のようなもの(完全ではありません)をプロットし、次のようになります。
長さ52のスニペット
Manipulate[Plot[x^2a+x*b,{x,-3,3}],{a,.1,3},{b,0,3}]
これはかなり気の利いたものです。任意の式をManipulate
受け取り、変数の束でそれをパラメーター化してから、ウィジェットを提供します。ここで、パラメーターを調整し、式がどのように変化するかをライブで確認できます。式として、通常、ある種のプロットがあります。これは、講義でMathematicaを使用してソリューションのファミリーがパラメーターの変更にどのように応答するかを示す場合に特に役立ちます。上記は、および係数がどのように放物線をスケーリングおよびシフトするかを示しています。a
b
長さ48のスニペット
Import["http://www.google.com/doodles","Images"]
Import
非常に強力なコマンドです。ディスクとWebの両方からファイルをロードするために使用されます。非常に多くのさまざまなファイル形式を知っており、それらの一部(HTMLページなど)では、実際にデータをすぐに抽出できます。上記は、GoogleのDoodleページからすべての画像をダウンロードします。
長さ45のスニペット
EdgeDetect@ExampleData@{"TestImage","Splash"}
画像処理の時間。Mathematicaには、画像(Lenaなど)、テクスチャ、3Dモデル、オーディオスニペットなどのサンプルデータが多数付属しています。最初に、それらの1つをロードします。
エッジを検出したいですか?単一の関数呼び出しです。
長さ44のスニペット
ArrayPlot@CellularAutomaton[110,{{1},0},100]
最後に、使用CellularAutomaton
して結果をレンダリングするのに十分な文字があります。:)私が知ってCellularAutomaton
いる限りでは、CAに関連するMathematicaの唯一の関数です。しかし、Stephen Wolframはセルオートマトンに関しては自分がナンバーワンだと考えているようで、この機能は非常に強力です。上記は、最も単純な使用法を示しています。これは、100ステップの1Dセルラーオートマトンをシミュレートします。実際には、これらの各ステップでオートマトンの状態を返すため、結果は2次元になります。ルールは最初のパラメーターであり、リストを介して詳細に指定することも、単一の数値にエンコードすることもできます。この例では、かなり有名なチューリング完全ルール110を選択しました。{{1},0}
初期条件を定義します:単一1
ゼロの背景の前。CellularAutomaton
より多くのキャラクターを利用できるようになったときに、将来さらに多くの機能を披露するかもしれません。高次元で、より大きな近隣を使用して、3つ以上の状態でCAをシミュレートできます。
ArrayPlot
は、値を示す単色のグリッドとして2Dリストをプロットするだけのもう1つの便利なプロットユーティリティです。最も単純なケースで0
は、白と1
黒にマップされます。スニペットの結果は次のとおりです。
長さ43のスニペット
HighlightGraph[graph,FindVertexCover@graph]
グラフについて言及してからしばらく経ちました。優れた視覚化ツールとともに、多くの一般的なグラフ理論上の問題が組み込まれています。上記は、与えられたのgraph
場合、グラフの最小の頂点カバーを見つけ、それらの頂点をハイライトしてグラフをレンダリングします。例えばもしgraph
あるPetersenGraph[7,2]
バックスニペット18から、我々が得ます:
長さ42のスニペット
Animate[Plot[Sin[t-x],{x,0,10}], {t,0,10}]
Mathematicaで物事をアニメーション化するのは非常に簡単です(そしてそれらは画像である必要さえありません)。フレームごとに評価される式と、フレームごとに異なるパラメーターの束を与えるだけです。上記は、移動する正弦波のプロットを単純にアニメーション化します。アニメーションは次のGIFのようになります。
長さ40のスニペット
SortBy[PlanetData[#, "EscapeVelocity"]&]
SortBy
あなたが期待することをします:それは与えられた関数を各リスト要素にマッピングすることによって得られた値に基づいてリストをソートします。ただし、上記の呼び出しにはリストがまったく含まれていません。Mathematica 10以降、一部の関数のカリー化または部分適用がサポートされています。これは、より純粋な関数型言語のような言語機能ではありませんが、多くの場合に便利な多くの機能のために手動で実装されています。これは、上記のスニペットが新しい関数を返すことを意味します。この関数はリストのみを受け取り、指定された関数でソートします。これは、このソート順がコード全体でより頻繁に使用されるものである場合に非常に役立ちます。
そして、はい、別の素晴らしい*Data
機能があります-上記は惑星のエスケープ速度で惑星名をソートします。
長さ39のスニペット
f[1]=1
f[2]=1
f[n_]:=f[n]=f[n-1]+f[n-2]
フィボナッチ関数をより効率的にすることを約束しました。このスニペットは、Mathematicaで些細なメモ化がどのように行われるかを示しています。変更されるのはf[n]=
、3行目の追加部分のみです。そのf
ため、新しい値(などf[3]
)が呼び出された場合、f[3]=f[3-1]+f[3-2]
評価されます。これはを計算しf[2]+f[1]
、それをf[3]
(!=
ではなくwithで:=
)に割り当て、最終的に最初の呼び出しの値を返します。したがって、この関数を呼び出すと、この値の新しい定義が追加されます。この定義は、一般的なルールよりも明らかに具体的です。したがってf
、その値を使用した将来のすべての呼び出しに使用されます。
他のフィボナッチ関数は、30の値に対して4秒かかったことを覚えていますか?これには、300,000の値に対して3秒が必要です。
長さ37のスニペット
l//.{a___,x_,b___,x_,c___}:>{a,x,b,c}
最後のスニペットでパターンについて言及しました。これらはルールで最もよく使用されます。これは(特に)特定のパターンに一致する構造を変更するために使用できます。それでは、このスニペットを見てみましょう。
{a___,x_,b___,x_,c___}:>{a,x,b,c}
ルールです。x_
単一のアンダースコアは、単一の任意の値(それ自体がリストまたは同様のものである可能性があります)を参照するパターンです。a___
はシーケンスパターン(スニペット15も参照)で、0個以上の値のシーケンスを指します。x_
2回使用していることに注意してください。つまり、リストのこれら2つの部分は同じ値でなければなりません。したがって、このパターンは、値の2倍を含む任意のリストに一致する要素を呼び出すx
と、これら二つの要素の周りに3つのシーケンスを呼び出しa
、b
とc
。これは{a,x,b,c}
-に置き換えられx
ます。つまり、2番目は削除されます。
これで//.
、パターンが一致しなくなるまでルールが適用されます。したがって、上記のスニペットは、リストからすべての重複を削除しますl
。ただし、それよりも少し強力です//.
。すべてのレベルでルールを適用します。したがって、l
それ自体に(任意の深さまで)リストが含まれている場合、それらのサブリストからの重複も削除されます。
長さ36のスニペット
f[1]=1
f[2]=1
f[n_]:=f[n-1] + f[n-2]
新しい言語機能の時間です!Mathematicaには関数の定義に関していくつかの素晴らしい点があります。最初に、異なる名前または引数のタイプに対して、同じ名前の複数の関数定義を提供できます。パターンを使用して、定義が適用される引数の種類を説明できます。さらに、単一の値の定義を追加することもできます。Mathematicaは関数呼び出しに最も具体的な適用可能な定義を選択し、未定義の呼び出しは評価されないままにします。これにより、(特に)If
基本ケースのスイッチを使用するよりもはるかに自然な方法で再帰関数を記述できます。
上記のスニペットについて注意すべきもう1つの点は、との両方=
を使用していることです:=
。違いは=
、定義時に右側が1回だけ評価されるのに対して:=
、左側が参照されるたびに再評価されることです。実際:=
、変数を割り当てるときにも機能し、変数は動的な値を持ちます。
したがって、上記はもちろんフィボナッチ関数です。そして、それは非常に非効率的なものです。私のマシンでは、最初の30個の数値の計算に約4秒かかります。再帰的な定義を削除することなく、パフォーマンスを改善する方法については、後ほど説明します。
長さ35のスニペット
StreamPlot[{x^2,y},{x,0,3},{y,0,3}]
2Dベクトル場の流線を出力する非常にきれいなプロット。これは、各矢印がベクトル場に接しているという点で、通常のベクトルプロットに似ています。ただし、矢印は修正グリッド上に配置されるのではなく、線(流線)に結合されます。これらの線の重要性は、ベクトル場が速度場である場合、それらが粒子の軌跡を示しているということです。上記の入力は次のようになります。
長さ34のスニペット
Solve[a*x^4+b*x^3+c*x^2+d*x==0, x]
Mathematicaは方程式(または方程式系でも解くことができますが、現時点では非常に多くのキャラクターしかありません)。結果は、通常どおり、シンボリックになります。
{
{x -> 0},
{x -> -(b/(3 a)) - (2^(1/3) (-b^2 + 3 a c))/(3 a (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3)) + (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3)/(3 2^(1/3) a)},
{x -> -(b/(3 a)) + ((1 + I Sqrt[3]) (-b^2 + 3 a c))/(3 2^(2/3) a (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3)) - ((1 - I Sqrt[3]) (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3))/(6 2^(1/3) a)},
{x -> -(b/(3 a)) + ((1 - I Sqrt[3]) (-b^2 + 3 a c))/(3 2^(2/3) a (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3)) - ((1 + I Sqrt[3]) (-2 b^3 + 9 a b c - 27 a^2 d + Sqrt[4 (-b^2 + 3 a c)^3 + (-2 b^3 + 9 a b c - 27 a^2 d)^2])^(1/3))/( 6 2^(1/3) a)}
}
解決策はルールとして与えられていることに注意してください。これについては、今後のスニペットで詳しく説明します。
長さ33のスニペット
Dynamic@EdgeDetect@CurrentImage[]
このアイデアをbenwaffleに感謝します。CurrentImage[]
ウェブカメラの現在の画像を読み込みます。EdgeDetect
画像を白黒の画像に変換します。エッジは白で、残りは黒です(例についてはスニペット45を参照)。本当に楽しいのはDynamic
、式自体を更新することです。そのため、この結果は実際にウェブカメラから画像をストリーミングし、それらに対してライブエッジ検出を行います。
長さ32のスニペット
NumberLinePlot[x^2<2^x,{x,-2,5}]
かなり珍しいタイプのプロット。ポイントや間隔など、数直線に沿ってさまざまなものをプロットできます。条件を指定することもできます。その条件が当てはまる地域が表示されます。
矢印は、領域が無限に続くことを示します。白い円は、それらが開いた間隔であることを示します(終点は間隔の一部ではありません)。閉端の場合、円は塗りつぶされます。
長さ28のスニペット
Graphics3D@{Sphere[],Cone[]}
いくつかの3Dグラフィックスの時間。上記は、クリスタルボールのように見えるデフォルトのパラメーターでスーパーインポーズされた球と円錐をレンダリングします。
Mathematicaでは、実際にこの小さなウィジェットをクリックしてドラッグし、回転させることができます。
長さ27のスニペット
CountryData["ITA", "Shape"]
もっと*Data
!CountryData
かなりクレイジーです。国の形を取得することは、氷山の一角でもありません。国に関するデータは非常に多いので、おそらくこの機能に関する本全体を書くことができます。など...がありFemaleLiteracyFraction
ます。さまざまな時点でそのデータを照会することもできます。完全なリストについては、リファレンスを参照してください。
長さ26のスニペット
PolarPlot[Sin[5θ],{θ,0,π}]
より興味深いプロットの時間です。PolarPlot
極座標での単純なプロットです。特定のxにyを指定する代わりに、特定の角度θに半径rを指定します。
長さ25のスニペット
{{1,5},{2,3},{7,4}}.{8,9}
私たちはついに、いくつかのベクトル計算に十分な文字を取得しました。上記は、2x3行列と行2ベクトルの行列乗算を計算します。
{53, 43, 92}
長さ23のスニペット
Rotate[Rectangle, Pi/2]
へえ。へへ。これが何をするのか知っていると思います。しかし、あなたはしません。Rectangle
それ自体は単なる名前付き関数です。実際に長方形を表すオブジェクトを取得するには、いくつかのパラメーターを指定してその関数を呼び出す必要があります。回転しようとするとどうなると思いますRectangle
か?この:
長さ22のスニペット
30~ElementData~"Color"
別の組み込み*Data
関数。はい、化学元素については、原子番号、融点、名前などだけでなく、実際に室温で色を取得できます。上記は、亜鉛の色を示しています。
SlateGray
長さ21のスニペット
Integrate[E^(-x^2),x]
少し前に差別化がありました。統合の時間。Mathematicaは定積分と不定積分の両方を扱うことができます。特に、Integrate
正確なソリューションを提供し、標準的な積分と積分技術のトンを扱うことができます(数値結果のために、がありますNIntegrate
)。あなたの計算を知っているなら、上のガウス積分は実際に閉じた形式の不定積分を持たないことに気づくでしょう... エラー関数の閉じた形式を考慮しない限り、それはそうです。Mathematicaは以下を返します:
1/2 Sqrt[π] Erf[x]
長さ20のスニペット
"Sun"~StarData~"Age"
組み込みデータに戻ります。*Data
考えられるすべてのものに対して、少なくとも20個の関数が必要です。それぞれが、データを取得したいものの識別子と、取得するプロパティ(またはプロパティのリスト)を受け取ります。上記はSun
、Star
で取得できる最短の1つであり、Age
すべてが非常に短いため、この機能を表示するのを待つことができませんでした。
そうそう、そしてMathematica(9以降)が単位付きの数量をサポートしていることを言及しましたか?(これについては後で詳しく説明します。)上記の評価結果:
Quantity[4.57*10^9, "Years"]
として表示されます
長さ19のスニペット
MandelbrotSetPlot[]
うん...非常に便利な機能...私はいつもそれを使用しています。(時々、計算可能なものをサポートしたいという欲求は少し遠いかもしれません...)
それらの防御では、関数はそれよりも少し便利です:プロットしたいグラフの特定のセクションを与えることができます。
長さ18のスニペット
PetersenGraph[7,2]
Mathematica 8以降、それはグラフが何であるかを理解するため、あらゆる種類のグラフ理論関連の関数が付属しています。そして、大量のビルトインが含まれていなければ、それはMathematicaではありませんでした。上記は、一般化されたピーターセングラフのグラフデータを生成します。操作可能な実際のデータ構造を生成しますが、Mathematicaは即座にグラフデータを表示します...グラフィカルに:
長さ17のスニペット
Plot[x^x,{x,0,2}]
最後に、プロットを行うのに十分な文字。上記は、実際には1次元プロットの最も単純な例です。後でクールなプロットを披露することを約束します
長さ15のスニペット
{##4,#,#2,#3}&
これは、2つのより強力な機能(およびゴルフに役立つ機能)を示しています。全体は、PythonのsやRubyのProcsに匹敵する、名前のない純粋な関数lambda
です。純粋な関数は単にで終了します&
。この演算子の優先順位は非常に低いため、通常は残りのほとんどすべてが含まれます。純粋関数の引数はで参照され#
、時には他のものが後に続きます。最初の引数は#
or #1
で、2番目の引数はなど#2
です。
もう1つの機能はSequence
sです。これらは基本的に他の言語の感嘆符のようなものです。シーケンスは、その周りにリストのないリストのようなものです-それは文字通り値のシーケンスであり、リスト、関数引数など##
で使用できます。特に、すべての純関数引数のシーケンスです。##2
2番目から始まるすべての引数のシーケンスです。したがって、上記の関数f
に名前を付けて、次のように呼び出した場合
f[1,2,3,4,5]
私たちは得るだろう
{4,5,1,2,3}
そのため、関数は入力引数を3要素左に回転させます。リストにフラット化されたを##4
参照し4,5
ていることに注意してください。
長さ12のスニペット
D[x^y^x,x,y]
偏微分。D
は、他の引数に関して最初の式を連続的に区別し、結果としてシンボリック式を提供します。したがって、上記はd²(x ^ y ^ x)/ dxdy(d sは部分的)であり、Mathematicaは
x^y^x (y^(-1 + x) + y^(-1 + x) Log[x] + x y^(-1 + x) Log[x] Log[y]) +
x^(1 + y^x) y^(-1 + x) Log[x] (y^x/x + y^x Log[x] Log[y])
長さ9のスニペット
Exp[I*Pi]
複雑な計算はまだ行っていません!ご覧のとおり、π
実際にはの単なるエイリアスでしたPi
。とにかく、上記は実際に整数を 正しく返し-1
ます。
長さ8のスニペット
Sunset[]
うん。クレイジーなビルトインについて話します。現在の場所での次の日没の日時オブジェクトを実際に提供するパラメーターなし。また、他の日付、他の場所などのパラメーターも使用します。現在、これは次のようになっています。
長さ7のスニペット
9!/43!!
このスニペットはいくつかのクールなものを示しています。
Mathematicaには階乗演算子が組み込まれているだけでなく!
、二重階乗もあります!!
(これは他のすべての数値をからに乗算n
します1
)。さらに、任意精度の整数をサポートします。43!!
最後の桁まで、正確に評価されます。さらに、有理数も正確に評価されます。したがって、分子と分母の両方に整数があるため、Mathematicaは可能な限り小数部を減らして、
128/198893132162463319205625
もちろん、いつでもフロートを使用できますが、一般的に、入力にフロートが含まれていない場合、結果は正確になります。
長さ4のスニペット
Here
Mathematicaの豊富なクレイジーなビルトインから始めました。上記は、スズについて言うことを行い、(私にとって)と評価しGeoPosition[{51.51, -0.09}]
ます。
長さ3のスニペット
x-x
オリジナルのFactoidを紹介するだけです。上記x
はまだ定義されていなくても機能し0
、実際にはその場合になります。
長さ2のスニペット
3x
並置による乗算!識別子が終了して別の識別子が開始することが明らかな場合、*
それらを一緒に乗算するために空白も必要ありません。これは、まだ値を持たない文字列や変数など、ほとんどすべてのもので機能します。ゴルフに非常に便利です。;)
長さ1のスニペット
π
推測、それはPiです。実際、近似の浮動小数点表現ではなく、正確にPiです。したがって、これが使用されるあらゆる種類の複雑な三角関数は、既知の場合に正確な結果をもたらします。
ファクトイド
Mathematicaはシンボリック操作を実行できるため、変数は値を必要とせずに動作します。
Translate[Scale[Rectangle, 80], {0, 0, 100}]
がその巨大な言葉をRectangle
モニターの前に浮かび上がらせたら?