平方と平方根を計算します!


48

あるでは入力の平方を出力し、別の言語では入力の平方根を出力するを作成する必要があります。バイト単位の最短回答が勝ちです!

小数点以下3桁以上の精度が必要です。入力は常に正の浮動小数点数になります。

回答:



90

CおよびC ++、68 65バイト

#include<math.h>
float f(float n){auto p=.5;return pow(n,2-p*3);}

元の回答:

#include<math.h>
float f(float n){return pow(n,sizeof('-')-1?2:.5);}

どちらのバージョンでも、Cはを生成しn^2、C ++はを生成しsqrt(n)ます。


23
「Ha!」として+1 CとC ++を同じものとして扱うすべての人々のために。
DocMax

20
@ CAD97:Cでは、auto「スタックに割り当てる」ことを意味します。それはとにかくデフォルトであるため、キーワードはかなり役に立たないので、C ++はそれを別の意味に再利用しました。ただし、Cでは、型p(型ではなくストレージクラス)について意見を表明しないためint、デフォルトとしてカウントされます(このデフォルトのint動作は現在推奨されていません。 Cの前任者の一部にはデータ型がまったくありませんでしたが、コンパイラはまだそれを理解しています)。そしてもちろん、(int)0.50です。

2
これは素晴らしいです。
クエンティン

1
それに関するStack Overflowの質問を見つけました。
-YSC

9
この答えの説明は Cが生成する理由を説明する@ ais523のコメントを編集することで改善されると思いますn^2
ブライアンJ

50

パイソン2&パイソン3、23の 21バイト

lambda n:n**(1/2or 2)

Python 2.xが生成しn^2、Python 3.xが生成しsqrt(n)ます。

@Dennisのおかげで2バイト節約!


これはとてもクールです!
njzk2

どうして?前のスペース不足orですか?
chx

@chx Py2では、/整数除算(1/2==0)を行います。Py3では、浮動小数点除算を行います(1/2==0.5)0はfalseyです。
Nic Hartley

その後、または後にスペースを削除してみませんか?
chx

@chx自分で試してみてください。実行すると、構文エラーがスローされます。
numbermaniac

32

2 セーブル / ゼリー、2バイト

*.

2sableは平方を計算します。オンラインでお試しください!

Jellyは平方根を計算します。オンラインでお試しください!

使い方

2セーブル

*   Read the input twice and compute the product of both copies.
    This pushes the square of the input.
 .  Unrecognized token (ignored).

ゼリー

 .  Numeric literal; yield 0.5.
*   Raise the input to the power 0.5.
    This yields the square root.

7
これらの言語が作成されたようなものだだけで、この挑戦のために
FloatingRock

20

C(clang)およびPython109 107 69 53バイト

#/*
lambda n:n**.5;'''*/
float a(i){return i*i;}//'''

C:オンラインで試してみてください!

Python:オンラインで試してみてください!

ポリグロットへのコメントを使用して機能します。残りはかなり説明的です。

初めてCを使用する!

  • @Rikerのおかげでかなりのバイトを節約できました。
  • 不要な空白を削除して2バイトを節約しました。
  • STDIN / OUTの代わりにCの関数を使用して、非常に多くのバイトを保存しました。
  • @Deliothのおかげで、上部のimportステートメントを削除して16バイトを節約しました。

@リッカーウィル、ありがとうございます。
同志SparklePony

Cは空白を必要とせず、すでにPythonのリテラル文字列であるため、Cコメント(行2、最後の文字)の後に改行を1つ削除できると思います。特別なコードを返さないのでreturn 0;、末尾からを省略できます。C99はmain()具体的に0の暗黙的な戻り値を保持します。出典
-Delioth

@Delioth実際には、関数を使用し、ioを一掃するだけの方が理にかなっています。
同志SparklePony

ああ、うん、ずっといい。stdio.hその場合も含める必要がありますか?
-Delioth

@Deliothしません。おっと!
同志SparklePony

16

オームゼリー、3バイト

オームの正方形、ゼリーの平方根を出力します。

OhmとJellyは異なるシングルバイトコードページを使用するため、プログラムはエンコードごとに異なって表示されます。

プログラムのxxd hexdump:

00000000: fd7f 0a                                  ...

ゼリー

Jellyのコードページを使用すると、次のように表示されます。

’
½

Jellyは一番下の行をメインリンクとし、特に呼び出されない限り他のリンクを無視します。したがって、ここでは単に平方根(½)を実行し、暗黙的に出力します。

オーム

オームのコードページ(CP437)を使用すると、次のように表示されます。

²⌂◙

²は二乗関数であり、およびは両方とも未定義であるため、プログラムは暗黙的に読み取られた入力を単に二乗し、暗黙的に出力します。


いいね!バイト数は問題ありません。
Programmer5000

これも良いキャッチだったので、答えを5バイトに編集しました。
魔法のタコUr

うわー、私によって書かれていない最初のオームの答え!よくやった!
ニッククリフォード

Jellyコードページを使用½して1バイトを取得する場合、²マップは何に変換されますか?まだ無視されているのは単なるジャンクですか?そして、オームにとって逆ですか?次に、2バイトのように見えます。
AdmBorkBork

1
実際のコードポイントを調べる必要がないので、例を作成します。仮定²オームのコードポイントでゼリー5.コードポイント5がされ%、それは最初の行があるかは重要ではありませんので、何もしません。½Jellyの27にあり、Ohmのコードポイント27 Jは何もしていないと仮定します。したがって、2行目が何であるかは関係ありません。したがって、のファイルがある場合は00000101<newline>000110113バイトです。唯一の問題は、改行がコードページの別の場所にあるかどうかだと思います。
AdmBorkBork

15

C89およびC99、47 + 3 = 50バイト

float f(float n){return n//*
/sqrt(n)//*/1*n
;}

-lmフラグが必要(+3)

C89が生成しn^2、C99が生成しsqrt(n)ます。C89でテストするには、オンラインでお試しください!


C89にsqrtバージョンを実行させると、コードを少なくする必要がありますが、暗黙的sqrtintsを使用して関数を宣言することを要求するため、これは私が管理できる最善の方法です。


13

オクターブ/ MATLAB、31 29バイト

 @(x)x^(2-3*any(version>60)/2)

これにより、オクターブで平方が出力され、MATLABで平方根が出力されます。

説明:

もちろん、MATLABとOctaveの構文は同じです(少なくともこの小さなコードについては)。

これにより、匿名関数が作成されます。

@(x)                                 % Take x as input
    x^(                     )        % Raise x to the power of ...   
               version                 % Returns the version number
                                       % 4.2.0 in Octave, 
                                       % '9.2.0.538062 (R2017a)' in MATLAB
               version>60              % 'R' is larger than 60. All others are smaller
         3*any(version>60)/2           % Checks if there is an 'R' and multiplies it by 1.5 if it is.
       2-3*any(version>60)           % 2-1.5*(is there an 'R')

12

ベーシック/ Delphi – 6文字

sqr(x)

Basicの平方根とDelphiの平方。

デバッガーを使用して式を検査し、出力要件をすべて満たすことができます!


2
これはそれ自体で入力を受け取りますか?
Rɪᴋᴇʀ

いいえ、ただし、C / C ++を含む他の提出も行いません。

まだ無効ですが、それは何も変更しません。それらについてもコメントしようと思います。
Rɪᴋᴇʀ

1
そうでないものをリンクできますか?見つかりません。C / C ++のものは関数であり、入力ではなく、パラメーターを受け取ります。
Rɪᴋᴇʀ

3
はい、しかし何xですか?値に保存されていると想定することはできません。ただし、実際にを削除して(x)、関数を返すというラベルを付けることができる場合があります。
Rɪᴋᴇʀ

11

05AB1E / Fireball、3バイト

次のバイトがプログラムを構成します。

FD B9 74

05AB1Eは、平方根、Fireball平方を計算します。

説明(05AB1E- ý¹t):

ý       Pushes an empty string to the stack (not entirely sure why)
 ¹      Push first input
  t     Square root

説明(ファイアボール- ²╣t):

²       Square input
 ╣      Unassigned
  t     Unassigned

時々、それは不完全な言語を持つことを助けます;)


1
05AB1EとFireballは異なるエンコーディングを使用します。これはプログラムに影響しますか?
デニス

@デニス私はそれについて考えませんでした。同じプログラムを異なるエンコーディングで保存しても、ポリゴットにはカウントされませんか?
Okx

5
Afaik、デフォルトでは、バイトストリームが一致する必要があります。
デニス

10

PHP7 + JavaScript、62 61 58バイト

実際、これは予想以上にやりがいのあることでした!私は自分のコードがどれくらいの長さであるかに驚いています。

eval(['alert((_=prompt())*_)','echo$argv[1]**.5'][+![]]);


どのように機能しますか?

これは、実行するコードを配列から選択することで機能します。
PHPおよびJavaScriptの検出はで行われ+![]ます。

PHPでは、[](空の配列)は偽の値であり、JavaScriptでは、それは真実の値です(オブジェクト(を除くnull)は常に真実です、真実であってもnew Boolean(false)!)。
しかし、数値を取得する必要があるため、not!)を使用して整数に変換します(で+)。
現在、PHPはvalueを生成しますが1、JavaScriptはを生成し0ます。
これらのインデックスで配列内にコードを配置すると、目的の言語に適したコードを選択できます。
これをとして使用して[JS,PHP][+![]]、適切な言語のコードを取得できます。

以前のポリグロット'\0'=="\0"ではtrue、JavaScript(\0NULLバイトとして解析されるため)およびfalsePHP('\0'リテラル文字列\0をNULL バイトと比較してNULLバイトとして解析されないため)にあるを使用しました。
このチェックをに削減できたことを嬉しく思います+!'0'@rckdが
さらに嬉しくなり、現在のバージョンに還元されました!

それ以降は、単にeval必要なコードです。

PHP

PHPは実行しecho$argv[1]**.5echo sqrt($argv[1]);数値の平方根に相当)、2番目の引数から値を受け取り、標準出力に表示します。

JavaScript

JavaScriptが実行alert((_=prompt())*_)され、alert



1バイトを保存してくれた@rckdと、3バイトを保存してくれた@ user59178に感謝します!


1
![]は1バイト節約します:
rckd

1
@rckd聖なる牛!空の配列を完全に忘れていました。ありがとうございました!質問の内容を編集し、その仕組みを説明しました。
イスマエルミゲル

1
あなたは使用して3つのバイトを保存することができますecho$argv[1]**.5のではなくecho sqrt($argv[1])
user59178

うわー、すてきな節約!ありがとうございました!答えに追加しました。
イスマエルミゲル

8

05AB1EおよびJelly、4バイト

nqƓ½

(05AB1E) - (ゼリー)

nq   # Ignored by Jelly, push n**2 in 05AB1E then quit.
  Ɠ½ # Ignored by 05AB1E due to quit, push sqroot of input in Jelly.

UTF-8文字はコードページ間で同じ操作を共有しないため、技術的にはそれぞれエンコードする2バイトであるため、他の誰かが良い点を指摘しました。ただし、これを16進ダンプの観点から見ると:

6e 71 93 0a

05AB1EのCP1252エンコーディングでは、次の結果になります。

nq“\n

つまり、正方形を出力して終了し、残りは無視します。これらのバイトがJellyのコードページを使用してエンコードされる場合:

nqƓ½

どちらが元の意図されたコードであるかを実行すると、入力を取得してsqrtを取得するという望ましい結果が得られます。


2
これは、両方のように、実際にはUTF-8で6バイトであるƓ½符号化される2つのバイトを必要とします。ただし、バイトシーケンス6e 71 93 0anqƓ½Jelly、nq“\nCP-1252)は両方の言語で機能するはずです。
デニス

@Dennis ½が両方のコードページに存在する場合、それらが単一の操作としてカウントされることはできません。私はまだコードページ全体についてあいまいです。
魔法のタコUr

1
バイト単位のスコアは、バイトストリームをカウントしていることを意味します。インタープリターが実際に1つのコードページの一部の文字と別のコードページの他の文字のエンコードをサポートしていない限り、スコアリングの目的でこれを行うことはできません。
デニス

4
@carusocomputingの送信は4バイトな6e 71 93 0aので、4バイトを要求することについて「理論的に」はありません。ちょうど4バイトを要求します。05AB1Eの標準エンコードでは、必要なことを行う1つのことを読み取りますが、Jellyの標準エンコードでは、必要なことを行う別の読み取りを行います。余談ですが、2つのエンコードが同じ文字をエンコードできるからといって、両方の文字が同じであるとは限りません。ルックアップテーブルが既に共有されている数値暗号のようなエンコーディングを考えてみてください。うまくいけば、これが良いメンタルモデルの出発点になります。
デイブ

@デイブ私はデニスを誤解したに違いない。
魔法のタコUr

6

CJam / MATL、8バイト

ld_*GX^!

CJamの広場(計算オンラインをお試しください!)とMATLで平方根を(オンラインそれを試してみてください!)。

CJamの正方形の説明

ld    e# Read input line and interpret as a double
_     e# Duplicate
*     e# Multiply. Pops the input number twice, pushes its square
G     e# Push 16
X     e# Push 1
^     e# Bitwise XOR. Pops 16 and 1, and pushes 17
!     e# Negate. Pops 17, pushes 0
      e# Implicitly display. This prints the squared input with decimals,
      e# immediately followed by the 0 coming from the negate operation
      e# Even if the square of the input number is an integer, say 5,
      e# it is displayed as 5.0, so including an extra 0 always gives a
      e# correct result

MATLの平方根の説明

l      % Push 1. This is a number or equivalently a 1×1 array
d      % Consecutive differences. Pops 1, pushes [] (empty array)
_      % Negate (element-wise). This leaves [] as is
*      % Implicitly input a number and push it. Multiply (element-wise): 
       % pops [] and the input number, pushes []
G      % Push input number again
X^     % Square root. Pops number, pushes its square root
!      % Transpose. For a number (1×1 array) this does nothing
       % Implicitly display. The stack contains [] and the result; but 
       % [] is not displayed at all

おい!素敵な投稿!他の答えのような説明を追加する気ですか?
Programmer5000

@ programmer5000エラーを修正し、説明を追加しました
ルイスメンドー

5

Python 2およびForth、43 33バイト

( """ )
fsqrt
\ """);lambda n:n*n

オンラインで試す:Python 2(正方形)| Forth(sqrt)

これは、Pythonでは匿名関数fsqrt、Forth では組み込み関数に評価されます。Python は、ラムダの前にf置くことf=で、さらに2バイトの名前付き関数を持つことができます。

Forthプログラムは、浮動小数点リテラルを取ります。Forthでは、科学表記法で記述する必要があります。小数点以下3桁に切り捨てられたPi(3.141)は、次のように記述されます。

3141e-3

5

JavaScript(ES6)/ JavaScript(ES7)、52バイト

f=a=>eval(`try{eval("a**2")}catch(e){Math.sqrt(a)}`)

ES7の入力の平方とES6の平方根を返します。ES6ではなくES7をサポートする古いブラウザーを使用している場合を除き、テストは非常に困難です。

f=a=>eval(`try{eval("a**2")}catch(e){Math.sqrt(a)}`)

console.log(f(4));


賢い!これでいい仕事だ!
Programmer5000

バッククティックの理由はありますか?一重引用符が仕事をするようです。
-JLRishe

@JLRisheいいえ、理由はありません:)
トム

5

PHPおよびCJam30 29 25バイト

ECHO"$argv[1]"**2;#];rdmq

PHPの平方とCJamの平方根を計算します。-rPHP を使用して実行する必要があります。

PHP

最初のコマンドライン引数($argv[1])を2のべき乗して出力します。これ$argv[1]は、実際には文字列にインライン変数として配置され、累乗を行う前に数値にキャストされます。これはv、CJamでは有効な命令ではなく、解析中にエラーが発生するためですが、文字列に入れても問題は発生しません。

# コメントを開始するため、その後はすべて無視されます。

オンラインでお試しください!

CJam

コードの最初の部分ではECHO"$argv[1]"**2;#、一連の値をプッシュし、一連の操作を実行しますが、これらはすべてまったく役に立ちません。唯一の重要なことは、エラーが発生しないことです。その直後は];、スタック全体を配列にラップしてから破棄するためです。

その後、入力(rd)からdoubleを読み取り、平方根(mq)を取得して、暗黙的に出力します。

オンラインでお試しください!


5

C、Operation Flashpointスクリプト言語、52バイト

;float f(float x){return sqrt(x);}char*
F="_this^2";

OFPスクリプトでは、行の先頭にセミコロンがあるとその行がコメントになりますが、Cは追加のセミコロンを気にしません。

C:

オンラインでお試しください!

OFPスクリプト言語:

としてinit.sqsミッションフォルダーに保存し、で呼び出しますhint format["%1", 2 call F]

結果: ここに画像の説明を入力してください


さて、これはかなりクールです。そのスクリプティングラングの使用をどう思いましたか?
Rɪᴋᴇʀ

@Riker Operation Flashpointは常に私のお気に入りのゲームの1つでした。以前はスクリプト言語を使用して多くのことをしていました。
Steadybox

3

網状 / Befunge-98、15バイト

2D言語!

/&:*.@
>in:o#p;

Befunge-98

/&:*.@

/          divide top two (no-op)
 &         read decimal input
  :        duplicate
   *       square
    .      output
     @     terminate

網状

/           mirror up, then right
>in:o#p;

 i          read line of input
  n         cast to number
   :o#      square root
      p     print
       ;    terminate

3

> <> / Jelly、9バイト(> <>の '-v'フラグの場合は7バイトのコード+ 2)

男、私は本当にゼリーのリンク構造を楽しんでいます。

:*n;
½

> <> で平方計算し、Jellyで平方根 計算し ます。


ゼリーでも-vを使用しないことは許可されていますか?
Rɪᴋᴇʀ

-v私の意見では、の使用は、このケースを処理するメタquerstion の[トップ投票の回答[(codegolf.meta.stackexchange.com/a/11431/44874)に沿ったものです。><>インタプリタはそれを必要と-vし、これは最も単純な呼び出し、そのためです。
-steenbergh

3

Python 3 + JavaScript、101バイト

0//1or exec("function=lambda a:(lambda b:a);x=0")
y=2//2/2
f=(function(x)(x**y))//1 or(lambda x:x**y)

JSの平方根、Pythonの平方。

Firefox(FF 52でテスト済み)で動作し、(function(x) x)(42) === 42有効な構文である必要があります。**オペレーターにはES7も必要です。


Firefoxでテストされ、動作しています。x=>x**y代わりに使用することは可能ですか?それともPythonがそれを止めますか?
イスマエルミゲル

@IsmaelMiguel pythonは矢印関数をサポートしていません。
Rɪᴋᴇʀ

これはPythonでは機能しません。関数はキーワードではありません。
Rɪᴋᴇʀ

動作します。functionはキーワードではないため、有効な識別子です。そのため、(execステートメント内で)noop関数を割り当てました。
-kjaquier

3

bashおよびsh、48バイト

更新:敗北を認めなければなりません。Digital Traumaのbash / shの答えは、これよりはるかにエレガントです。


bc -l<<<"sqrt($1^(($(kill -l|wc -l)*3-3)/7+1))"

bashが生成しn^2、shが生成しsqrt(n)ます。


bcsqrt計算できるようにするためにのみ必要です。動作の違いは、bashとshの違いです。

技術的には、私が使用している「sh」はまだbashですが、「POSIX」モードでbashを実行します(bashのエイリアスがあるシステムでは/bin/shなく起動した場合に発生します)。ご使用のシステムでこれが当てはまる場合は、次を使用してテストできます。/bin/bash/bin/sh

/bin/bash prog.sh 4
/bin/sh prog.sh 4

これは、ここで説明されている違いの1つに基づいています:https : //www.gnu.org/software/bash/manual/html_node/Bash-POSIX-Mode.html


1
これはどのように作動しますか?
ブライアンミントン

2
実行してみ@BrianMinton kill -lに、(何も変更しないリストの可能な信号)bashsh。ここで見つけることができる多くの違いの1つです:gnu.org/software/bash/manual/html_node/Bash-POSIX-Mode.html-
デイブ

3

QBIC / QBasic、26 18バイト

input a
?a^2'^.25

QBasicを、それは数を取り、その数は平方出力します。QBasicはコメント(')として認識するため、残りのコードは無視されます。

QBICは同じ入力ステートメントを使用します。次に、同じ数値を2乗して印刷し、1/4に累乗して、2倍に効果的にルートしました。これは'、コードリテラルと見なされるためです。QBICによって解析されない純粋なQBasicコードです。


2

ゼリー / ピップ、6バイト

編集:操作を逆にするよりも1バイト短くなります。

RTa
²

オンラインでゼリーをお試しください!

Jellyはコードの下部(「メインリンク」)で実行を開始し、さらに高いものが必要かどうかを確認します。コマンドが2乗するのを確認し、暗黙的に入出力を処理します。

オンラインでPipをお試しください!

Pipは一番上の行を実行し、(cmd行から暗黙的に読み取られた)var aを二乗し、それを暗黙的に出力します。一番下の行は無視されます。


代替6バイト:PRTaVS
-steenbergh

2

Wolfram言語 / PHP、25バイト

Wolfram言語で数値の平方を取得し、PHPで平方根を取得します。

n^2
echo sqrt(_GET["n"]);

最初の行はWolfram言語です。まず、Wolfram Alphaの検索バーでnを変更するのはあなたであるため、コードは入力でもあります。次に、Enterキーを押すと答えが生成されます

n^2

2行目はPHPで、アドレスバーに入力されるnの平方根を取得します(例:ppcg.php.net?n=213、213はnの値)

echo sqrt($_GET["n"]);

1
PPCGへようこそ!ただし、何らかの方法で入力する必要があります。数値が変数に格納されているとは想定できません。ごめんなさい ここで受け入れ可能なI / Oメソッドのリストを表示できます。(回答の正のスコアは許可されることを意味し、負の意味は許可されないことを意味します)
-R

とった。答えを編集します。:)もう1つ、wolframの入力に別のコードを追加することが適用できない理由を説明します。
ジムウェルアノボン

お力になれて、嬉しいです!ppcgを使い続けてください。
Rɪᴋᴇʀ


1
Wolfram言語は数学に基づいており、非自然な方法で数式を入力する必要があります。もう1つ、回答者はそれをクリアします。そのウェブサイトは言語ではなく、Wolfram言語がそれをサポートする言語です。Wolfrsm言語とWolframAlphaはそれぞれに関連していますが、同じではありません。まったく違う。
ジムウェルアノボン

2

PHP 5.6およびPHP 7、55バイト

function f($n){list($a[],$a[])=[.5,2];echo $n**$a[0];}

PHP 5.6が生成しn^2、PHP 7が生成しsqrt(n)ます。


2

macOS Bashおよびsh、24バイト

p=^4 :
bc<<<"sqrt($1)$p"

Macでは、shされるbashPOSIXモードで実行されている、とあたり、この場合https://www.gnu.org/software/bash/manual/html_node/Bash-POSIX-Mode.html

POSIX特殊ビルトインに先行する割り当てステートメントは、ビルトインが完了した後もシェル環境に保持されます

したがって、のsh場合、変数はの実行後pに値を持ちますが、の場合、変数は実行中のみこの値を持ち、その後は空になります。^4:bashp:

まだ隠れているため、ヒアbashストリングなどの一部のバシズム<<<は、バッシュとshの両方のケースで機能します。


bashとdash(およびGNU utils)、27

Ubuntu 16.01ではsh、へのシンボリックリンクでありdash<<<ヒアストリングを行いません。代わりにこれがあります:

p=^4 :
echo "sqrt($1)$p"|bc

オンラインでお試しください


別のモード/環境の素晴らしい使用!
Programmer5000

これは私のバージョンよりもはるかに優れています!
デイブ

1

オクターブ / カーディナル、28バイト

このプログラムは、Cardinalの入力を平方し、Octaveの平方根を取得します

 %:=t.
disp(sqrt(input("")))

オンラインでお試しください!(オクターブ)

オンラインでお試しください!(枢機卿)

したがって、%はOctaveの単一行コメントなので、入力を取得して平方根を出力するだけです。

disp(sqrt(input("")))

Cardinalプログラムが0除算エラーに遭遇して死ぬことがないように、プログラムは

%:=t.

両方のプログラムで無視されるスペースでシフトされています

Cardinalプログラムの説明:

プログラムは%で開始し、
入力を受け取り、値をactiveとして保存します
。inactiveをactiveと等しくなるように設定します=
activeにinactive tを乗算し、
最後にactive値を出力します。


1

PHP / JavaScript、43バイト

<body onload=alert(<?=$x*$x.')>'.sqrt($x)?>

入力は次のようになります。

<?php $x = 10; ?>

自明ですが、ルールに適合していますか?私の最初のコードゴルフカントー:-)


1
コードゴルフへようこそ!入力は、フロートまたはフロートのみの文字列でなければなりません。私が正しく理解している場合、これには個別の入力が必要です。
Programmer5000

これはJavaScriptとして実行されますか?両方のバージョンは、PHPの処理段階(JavaScriptがして何をするか分からないでしょう必要があるように見えますalert(<?=$x*$x.')>'.sqrt($x)?
デイヴ・

0

CGL(CGLゴルフ言語) / JS(ES6)、13バイト(非競合)

競合しない理由:

  1. CGLはこの質問の後にリリースされました。
  2. CGLは有効な言語ではありません。およびのため、CGLは技術的には有効な言語です。

コード:

 x=>x**2
//-₂

JS:

シンプル:最初の引数の2乗を返す匿名矢印関数。名前のない言語コードはコメント化されています。

CGL:

改行なしスペース最初の行の前には、コメントのように動作します。/sが空命令ではありません。-第二のライン手段には、デフォルトでは、入力が格納されている-1に設定すること0である現在のスタック数をデクリメントします。入力が配置される今、その平方根、と現在のスタックの最初の項目を置き換えます。デフォルトでは、現在のスタックが出力され、入力の平方根が出力されます。


これは13バイトです。私はCGLについて知らないが、JSがascii / utf-8を使用していることはかなり確信している。CGLは、独自のコードページがない限り、おそらくUTF-8も使用します。
Rɪᴋᴇʀ

今のところ@Rikerは、ascii / utf-8を使用しています。ありがとう。
Programmer5000
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.