도전
당신의 임무는 입력없이 다음을 출력하는 프로그램이나 함수를 만드는 것입니다.
a
bb
ccc
dddd
eeeee
ffffff
ggggggg
hhhhhhhh
iiiiiiiii
jjjjjjjjjj
kkkkkkkkkkk
llllllllllll
mmmmmmmmmmmmm
nnnnnnnnnnnnnn
ooooooooooooooo
pppppppppppppppp
qqqqqqqqqqqqqqqqq
rrrrrrrrrrrrrrrrrr
sssssssssssssssssss
tttttttttttttttttttt
uuuuuuuuuuuuuuuuuuuuu
vvvvvvvvvvvvvvvvvvvvvv
wwwwwwwwwwwwwwwwwwwwwww
xxxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyyyyy
zzzzzzzzzzzzzzzzzzzzzzzzzz
채점
이것은 code-golf 이므로 각 언어에서 가장 짧은 답변이 이깁니다.
답변
05AB1E , 2 바이트
Aƶ
OP가 명시 적으로 허용 한대로 행 목록으로 출력됩니다. 이 링크는 예쁘게 인쇄 된 버전 (줄 바꿈으로 결합)을 사용합니다.
작동 원리
A
소문자 알파벳을 산출합니다.ƶ
알파벳을 들어 올립니다 (각 요소에 색인을 곱함).»
개행으로 조인합니다.
답변
답변
APL (Dyalog) , 12 8 5 바이트 SBCS
@ngn 덕분에 3 바이트 절약
@ Adám 덕분에 4 바이트 절약
⍴⍨⌸⎕A
OP 명확 대문자는 유효하며 문자열 배열로 출력됩니다.
방법?
⌸
⎕A
lphabet의 모든 문자 는 색인 ⍴⍨
이 있고 문자는 왼쪽 인수로, 색인 es 는 오른쪽 인수로 함수에 전달됩니다.
⍴⍨
resha ⍴ 의 왼쪽 하나에서 제공하는 길이 ES의 오른쪽 인자. ⍨
왼쪽과 오른쪽을 전환합니다 (따라서이 설명을 읽는 사람의 얼굴처럼 보이는 기호).
답변
하스켈 , 27 바이트
[c<$['a'..c]|c<-['a'..'z']]
온라인으로 사용해보십시오! 줄 목록을 반환합니다. (지금 허용됨을 지적 해준 @totallyhuman에게 감사합니다)
설명:
c<-['a'..'z'] -- for each character c from 'a' to 'z'
[ |c<-['a'..'z']] -- build the list of
[ ['a'..c]|c<-['a'..'z']] -- the lists from 'a' to c, e.g. "abcd" for c='d'
[c<$['a'..c]|c<-['a'..'z']] -- with each element replaced by c itself, e.g. "dddd"
답변
brainfuck , 74 바이트
++++++++[>+>+++>++++++++++++<<<-]>++>++>+>+<<[->>[->+<<.>]>[-<+>]<+<+<<.>]
설명
++++++++[>+>+++>++++++++++++<<<-]>++>++>+>+
TAPE:
000
010 C_NEWLINE
026 V_ITERCOUNT
097 V_ALPHA
>001< V_PRINTCOUNT
000 T_PRINTCOUNT
V_ITERCOUNT TIMES: <<[-
V_PRINTCOUNT TIMES: >>[-
INC T_PRINTCOUNT >+
OUTPUT V_ALPHA <<.
>]
RESTORE V_PRINTCOUNT >[-<+>]
INC V_PRINTCOUNT <+
INC V_ALPHA <+
OUTPUT C_NEWLINE <<.
>]
답변
Befunge-98 (FBBI) , 27 바이트
1+:0\::'`j'@+\k:$$>:#,_$a,
대체 문자는 어디에 있습니까 (ASCII 26)
대문자를 사용하며 후행 줄 바꿈이 있습니다.
설명
이 코드는 카운터 (처음에는 0)와 모든 루프에 저장하여 작동합니다.
1+
-1 씩 증가:0\::
-스택을 다음과 같이 보이게합니다.bottom [N, 0, N, N, N] top
'`j'@
-카운터가 26보다 큰지 확인j'@
-이 경우, 우리는 이상 뛰어'
종료 사용을@
j'@
-그렇지 않은 경우'
ASCII 값을@
스택으로 푸시하는를 실행합니다 .
이제 스택은 다음과 같습니다. bottom [N, 0, N, N, 64] top
+\
-상단 2를 더한 다음 전환합니다bottom [N, 0, (N+64), N] top
. 처음으로 ASCII 65이거나A
k:
-처음부터 두 번째를 복제합니다(N+1)
-이제 스택에(N+2)
값이(N+64)
있습니다 (그리고 이전N
과0
이전)$$
-상위 2 개 값을 버립니다. 이제N
값만 있습니다(N+64)
>:#,_
– 그것은에 도달 할 때까지 각각의 최고 값을 출력합니다0
-이 수단의N
사본(N+64)
GET 인쇄$
-버린다0
-이제 스택은N
a,
-입력을 인쇄합니다
그리고 그것은 반복
나는 @
프로그램을 끝내고 카운터에 추가하기 위해 둘 다를 어떻게 사용했는지 좋아합니다 .