당신의 도전은 다음과 같이 무한 로딩 화면을 만드는 것입니다.
또는 더 구체적으로 말하면 :
- 입력하지 마십시오.
- 출력
Loading...
후행 공간,하지만 후행 줄 바꿈. - 문자를 통해 무한주기
|
,/
,-
과\
: 0.25 초마다이 시퀀스에서 다음과 마지막을 덮어 씁니다.Loading...
변하지 않는 한 마지막 문자 만 덮어 쓰거나 전체 줄을 삭제하고 다시 쓸 수 있습니다 .
규칙
- 출력 텍스트는 지정된대로 정확하게 보여야합니다. 후행 줄 바꿈 / 공백이 허용됩니다.
- 당신은해야 하지 처음에 출력을 표시하기 전에 0.25 초 정도 기다린 - 첫 번째 프레임은 바로 프로그램이 실행으로 인쇄해야합니다.
- 프로그램은 무기한으로 실행될 수 있어야합니다. 예를 들어, 프레임에 카운터를 사용하는 경우 카운터는 사용자 언어의 최대 값을 초과하여 오류를 발생시키지 않아야합니다.
- 각 "프레임"사이의 대기 시간은 0.25 초가되어야하지만 이것은 정확히 정확하지는 않습니다. 10 % 정도의 오류 마진이 허용됩니다.
- 기능을 제출할 수 있지만로 인쇄해야합니다
stdout
. - 로딩 애니메이션을 생성 할 수 있다면 콘솔이 아닌 환경 (여전히 텍스트 기반) 환경에서 답변을 제출할 수 있습니다.
- 이것은 code-golf 이므로 가장 짧은 솔루션 (바이트)이 이깁니다. 표준 코드 골프 허점이 적용됩니다.
- 가능하다면 로딩 화면의 gif를 제공하십시오.
예
다음은 예제를 작성하는 데 사용한 C ++ 코드입니다.
#include <iostream>
#include <string>
#include <thread>
using namespace std;
int main() {
string cycle = "|/-\\";
int i = 0;
cout << "Loading... ";
while (true) {
// Print current character
cout << cycle[i];
// Sleep for 0.25 seconds
this_thread::sleep_for(chrono::milliseconds(250));
// Delete last character, then increase counter.
cout << "\b";
i = ++i % 4;
}
}
최고의 골퍼가 이길 수 있습니다!