您的挑战是制作一个无限的加载屏幕,如下所示:
或者,更具体地说:
- 不输入任何内容。
- 输出
Loading...
,带有尾随空格,但没有尾随换行符。 - 通过字符无限循环
|
,/
,-
和\
:每0.25秒,覆盖最后一个与序列中的下一个。您可以只覆盖最后一个字符,或者删除并重写整行,只要Loading...
保持不变即可。
规则
- 输出文本必须与指定的外观完全相同。尾随换行符/空格是可以接受的。
- 应该不最初显示输出之前等待0.25秒-第一帧应当被尽快程序运行打印。
- 您的程序应该可以无限期地运行。例如,如果您将计数器用于帧,则计数器绝不能超过您所用语言的最大值而不会导致错误。
- 尽管每个“帧”之间的等待时间应该为0.25秒,但显然这永远都不是精确的-允许10%左右的误差范围。
- 您可以提交功能,但必须将其打印到
stdout
。 - 您可以在非控制台(但仍基于文本)的环境中提交答案,只要它能够生成加载动画即可。
- 这是代码高尔夫球,因此最短的解决方案(以字节为单位)获胜。适用标准代码高尔夫球漏洞。
- 如有可能,请提供您正在使用的加载屏幕的gif。
例
这是我用来创建示例(unolfed)的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;
}
}
愿最好的高尔夫球手获胜!