컴퓨터 언어의 경우 예약어는 변수 이름, 함수 또는 레이블과 같은 식별자로 사용할 수없는 단어입니다. 다른 컴퓨터 언어의 경우 키워드를 언어 지침 세트로 간주 할 수 있습니다.
도전
선택한 언어를 사용하여 1에서 10 사이의 숫자를 제공하는 선택한 언어로 코드를 작성하면 선택한 언어의 예약어 (키워드)가 1<=n<=10
출력 n
됩니다.
사양
- 선택한 언어가 대소 문자를 구분하면 출력 된 키워드도 동일해야합니다.
- 선택한 언어가 대소 문자를 구분하지 않으면 출력 된 키워드는 어떤 경우에도 가능합니다.
- 선택한 언어의 키워드가 10 개 미만인 경우
p
코드n
에서p
와 사이에 있는 예약어를 모두 출력해야합니다10
. - 가능하면 연산자를 키워드로 간주할지 여부를 답변에 지정하십시오.
Java (JDK10)에 대한 가능한 샘플
n=1 --> true
n=3 --> try new interface
n=4 --> continue this long break
> <>에 대한 가능한 샘플
n=1 --> >
n=3 --> > < ^
n=4 --> > < \ /
Brain-Flak에 대한 가능한 샘플
n=1 --> (
n=3 --> ( ) [ ]
n=9 --> ( ) [ ] { } < >
규칙
- 입력 및 출력은 편리한 형식으로 제공 될 수 있습니다 .
- 유효하지 않은 입력 값 을 처리 할 필요가 없으며 유효한 입력은 1, 2, 3, 4, 5, 6, 7, 8, 9, 10입니다.
- 전체 프로그램 또는 기능이 허용됩니다. 함수 인 경우 출력하지 않고 출력을 반환 할 수 있습니다.
- 가능하면 다른 사람들이 귀하의 코드를 시험해 볼 수 있도록 온라인 테스트 환경에 대한 링크를 포함하십시오!
- 표준 허점 은 금지되어 있습니다.
- 이것은 코드 골프 모든 일반적인 골프 규칙이 적용되며 가장 짧은 코드 (바이트)가 이깁니다.
답변
APL (Dyalog Unicode) , 9 바이트 SBCS
전체 프로그램. stdin에 대해 프롬프트합니다 n
(실제로 0-29 범위에서 작동). APL 키워드는 단일 문자 기호이므로 n
기호를 표준 출력으로 인쇄합니다 .
⎕↑156↓⎕AV
⎕AV
원자 벡터 (즉, 문자 집합)
156↓
처음 156 개의 요소를 삭제
⎕↑
n
위의 많은 요소를 요구 하고 가져옵니다.
답변
파이썬 2 , 25 바이트
lambda n:'=+*/%&^|<>'[:n]
1 바이트 이진 연산자의 문자열을 반환하는 [1,10]의 정수를 허용하는 명명되지 않은 함수입니다.
연산자 :
= Assign
+ Addition
* Multiplication
/ Division
% Modulo
& Bitwise-AND
^ Bitwise-XOR
| Bitwise-OR
< Less Than?
> Greater Than?
실제 키워드 만 허용되는 경우 : 40 바이트
from keyword import*
lambda n:kwlist[:n]
문자열 목록을 반환하는 [1,10]의 정수를 허용하는 명명되지 않은 함수입니다.
코드는 매우 간단해야합니다.이 함수 는 표준 라이브러리를 사용하여 알려진 키워드 의 첫 번째 ( ) 를 반환하는 하나의 인수를 n
사용 하는 함수를 정의합니다 ( 표준 골프 기술과 함께 ).lambda n:...
n
...[:n]
keywords.kwlist
import*
답변
Java 10, 83 72 바이트 (키워드)
n->"do if for int new try var byte case char ".substring(0,n*5)
이전 83 바이트 답변 :
n->java.util.Arrays.copyOf("do if for int new try var byte case char".split(" "),n)
설명:
n-> // Method with integer parameter and String-array return-type
java.util.Arrays.copyOf( // Create a copy of the given array:
"do if for int new try var byte case char".split(" ")
// The keywords as String-array,
,n) // up to and including the given `n`'th array-item
Java 8에 사용 가능한 키워드 목록 Java 10에는 키워드 var
외에 키워드 가 있습니다.
Java 8+, 30 바이트 (연산자)
n->"+-/*&|^~<>".substring(0,n)
답변
젤리 , 3 바이트
ØAḣ
정수를 허용하고 문자 목록을 리턴하는 모나드 링크.
결과 문자는 Jelly의 코드 페이지 에서 모두 모노 원자 입니다 .
A Absolute value.
B Convert from integer to binary.
C Complement; compute 1 − z.
D Convert from integer to decimal.
E Check if all elements of z are equal.
F Flatten list.
G Attempt to format z as a grid.
H Halve; compute z ÷ 2.
I Increments; compute the differences of consecutive elements of z.
J Returns [1 … len(z)].
어떻게?
ØAḣ - Link: integer n (in [1,10])
ØA - yield uppercase alphabet = ['A','B','C',...,'Z']
ḣ - head to index n
답변
숯 , 16 바이트
✂”yPBG¤T⎚M↶↷J”⁰N
Charcoal에는 자체 코드 페이지에 사전 설정된 변수 가 없습니다 .
설명:
인덱스 0에서 입력 번호까지의 하위 문자열을 가져옵니다.
Slice("...",0,InputNumber)
✂”y...”⁰N
키워드가 10 개인 문자열 :
”yPBG¤T⎚M↶↷J”
답변
펄 5 -lp
, 24 바이트
#!/usr/bin/perl -lp
$_=(grep!eval,a..zz)[$_]
쉬운 더 이상 키워드 확장 할 수 있지만,이 문제로 실행하기 때문에 당신은 4 글자로 시작하는 특별한 케이스를 수행해야합니다 dump
, eval
, exit
, getc
등
물론 연산자와시길을 출력하는 것은 지루하지만 11 바이트는 더 짧습니다.
#!/usr/bin/perl -lp
$_=chr$_+35
( #
이 도전의 맥락에서 어떻게 분류 해야하는지 명확하지 않기 때문에 건너 뛰었 습니다)
답변
자바 스크립트 (Node.js) , 79 61 바이트
n=>'true int var for in if new try of do'.split` `.slice(0,n)
어떻게 :
n => // the input (will be an integer) between 1 and 10 (both inclusive)
' // beginning our string
true int var for in if new try of do'. // space separated reserved words
split` `. // turn it into an array every time there is a space we add to array
slice(0,n) // return elements of array starting from 0 and upto n
연산자 사용이 허용되는 경우 (대부분 예약어이므로)
자바 스크립트 (Node.js) , 26 25 바이트
n=>'|/^%+<&*-='.slice(-n)
@Adam 덕분에 8 바이트 절약 및 @ l4m2 덕분에 1 바이트 더 절약
어떻게 :
n => // input (integer from 0-9 inclusive)
'|/^%+<&*-='. // operators make a shorter string
slice(-n) // outputs string chars from last upto n
// this works since all operators are single chars and not multi chars.