タグ付けされた質問 「syntax」

構文の有効性の確認、ある構文から別の構文への変換、無効な構文の修正など、プログラミングまたはマークアップ言語の構文に関連する課題。[balanced-string]タグも参照してください。

1
証明2 + 2 = 2 * 2(および同様)
出力のような、そのような声明の完全な正式なパッと消える1+2=3、2+2=2*(1+1)など はじめに Peano Arithmeticを知っている場合は、おそらくこのセクションをスキップできます。 自然数の定義方法は次のとおりです。 (Axiom 1) 0 is a number (Axiom 2) If `x` is a number, the `S(x)`, the successor of `x`, is a number. したがって、たとえばS(S(S(0)))数字です。 コードで同等の表現を使用できます。たとえば、これらはすべて有効です。 0 "" 0 () ! 1 "#" S(0) (()) !' 2 "##" S(S(0)) ((())) !'' 3 "###" S(S(S(0))) (((()))) !''' ... …

2
Java / C / C ++ / etcの再インデント。コード
コードを適切にフォーマットするために空白を追加または削除するプログラムを記述します。完了したときのコードの外観に関する規則: 行には、{およびの2つ以上を含めることはできません}。 A {は常に行の最後にある必要があります。 A }は常に行の唯一のものでなければなりません(その前にある空白以外)。 各行の前の空白の量は、現在のネスト数の固定倍数である必要があります。(変更しない限り、好きなだけインデントを使用できます。) これらのルールのいずれかを満たすことに寄与しない空白を挿入または削除しないでください。 最初の行のネストカウントは0です。他の行のネストカウントは、前の行のネストカウントに、前の行にが含まれている場合は1を加算し{、現在の行にが含まれている場合は1を減算し}ます。 {そして、}内部の文字列リテラルやコメントは、上記のルールではカウントされません。文字列リテラルは、一重引用符または二重引用符で囲まれたテキストです。単一引用符または二重引用符の直前に奇数個のバックスラッシュが含まれていると、文字列リテラルの終わりとして解釈されません。コメントは、/*および*/で囲まれたテキスト、または行//の終わりまで続くテキストです。複数行コメント開始マーカーでは、最初のマーカーのみがカウントされます。コメントは文字列リテラル内では解析されません。 例 main() {printf("Hello!"); // I don't care about the world... } becomes: main() { printf("Hello!"); // I don't care about the world... } int main(){ puts("a"); puts("b"); } becomes: int main(){ puts("a"); puts("b"); } main() { printf("{"); /* } } …

3
RegEx-golf:文字列のすべてのコンテンツに一致
あなたの仕事は、文字列内のすべてに一致するRegExを記述することです。 文字列は、エスケープされていない2つので囲まれている(ただし含まれていない)すべてのものとして定義されます"。 Aが"でエスケープすることができ\、また再びエスケープすることができ、。 テストケース string: ab\c"defg\\\"hi"jkl"mn\\\\"opqrst"" matches: ^^^^^^^^^^ ^^^^^^ ^ (the empty string) 得点 最短のソリューションが優先されます。 スペック 使用するフレーバーを指定してください。 入力はバランスが取れてい"ます。 \string-beginning-delimiterの直前には何もありません。たとえば、処理する必要はありませんabc\"def"

4
プレリュード構文チェッカー
Preludeは難解なプログラミング言語であり、有効なプログラムを構成するものに対する制限はほとんどありませんが、珍しいものです。印刷可能なASCIIテキストの任意のブロック(「ブロック」は、印刷可能なASCIIの行が改行で区切られることを意味します-0x0A)は、次の条件が満たされている場合に有効です: テキストのすべての(垂直)列には、(およびのいずれかが含まれます)。 垂直位置を無視して、(と)はバランスがとれています。つまり、それぞれ(と)その右側の1つだけがペアになり、その逆も同様です。 印刷可能なASCIIと改行を含む文字列を指定して、それが有効なPreludeプログラムを構成するかどうかを決定するプログラムまたは関数を記述します。STDIN(または最も近い代替)、コマンドライン引数または関数引数を介して入力を受け取ることができます。選択した2つの固定された 真偽値を使用して、結果をSTDOUTに返したり、出力したりできます。 入力が長方形であると想定してはいけません。 これはコードゴルフなので、最短の提出(バイト単位)が勝ちます。 例 以下は有効な Preludeプログラムです(実際、これらは実際の Preludeプログラムです): ?1-(v #1)- 1 0v ^(# 0)(1+0)#)! (#) ^#1-(0 # 1(# 1) v # - 1+) vv (##^v^+ ? v-(0 # ^ #) ? 1+ 1-! そして、ここにいくつかの入力がありますが、すべて無効です: #(#(##)##)##( )##(##(##)#)# #(#) )### #(## (##) (##) (#)# (##) (### #(#) (##) #(#) …

13
比較チェーンを拡張
ほとんどの言語と異なり、Python a<b<cは数学で行われるように評価し、ブール値a<bをと比較するのではなく、実際には3つの数値を比較しcます。これをC(および他の多くの)で記述する正しい方法は、a<b && b<c。 この課題の課題は、このような任意の長さの比較チェーンをPython /直感的な表現から他の言語でどのように記述するかまで拡張することです。 仕様書 プログラムは演算子を処理する必要があります。 ==, !=, <, >, <=, >=。 入力には、整数のみを使用した比較チェーンがあります。 途中の比較の真実性について心配する必要はありません。これは、純粋に構文解析/構文上の課題です。 入力には、スペースで分割することで解析を簡単にする回答を防ぐための空白はありません。 ただし、出力には、&&' のみ、または比較演算子と&&'の両方のいずれか、または両方を囲む単一のスペースがある場合がありますが、一貫性があります。 テストケース Input Output --------------------------------------------------------------- 3<4<5 3<4 && 4<5 3<4<5<6<7<8<9 3<4 && 4<5 && 5<6 && 6<7 && 7<8 && 8<9 3<5==6<19 3<5 && 5==6 && 6<19 10>=5<7!=20 10>=5 && 5<7 && …
9 code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

30
int入力nを指定して、n * reversed(n)を出力します
整数nを指定して出力n * reversed(n) reversed(n)は、reverseの桁を取得したときに取得する数値ですn。 reverse(512) = 215 reverse(1) = 1 reverse(101) = 101 >>>>>>>> func(5) = 5*5 = 25 func(12) = 12*21 = 252 func(11) = 11*11 = 121 func(659) = 659*956 = 630004 最短のコードが勝ちます! リーダーボード コードスニペットを表示 var QUESTION_ID=144816,OVERRIDE_USER=71625;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var …
9 code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

9
洗練された構文チェッカーを作成する
同じ言語のプログラムの構文をチェックできるプログラムを作成します。たとえば、Pythonで実行すると、Python構文がチェックされます。プログラムは標準入力でプログラムを受け取り、その構文が正しいかどうかを確認します。正しければ、標準出力に「true」だけを出力します。そうでない場合は、標準出力に「false」のみを出力します。 ただし、プログラムは1つのインスタンスで正しくない必要があります。独自のソースコードを入力した場合、標準出力に「false」が出力されます。これはコードゴルフなので、最短のプログラムが勝ちます! 注:これは厳密にはクインではありませんが、クインのルールに従う必要があります。つまり、ファイルシステムなどからソースコードにアクセスすることはできません。 注:構文エラーのために実行できなかったプログラムは、実行可能である必要があるため、この課題を解決することはできません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.