Questions tagged «self-referential»

用于挑战,答案以自己或自己的特征为参考,例如长度或字符值。由于这是[quine]标记的子集,因此存在许多相同的限制,例如不读取自己的源代码。

1
通过整数操作实现IEEE 754 64位二进制浮点数
(我暂时将问题标记为“ C”,但是如果您知道另一种支持联合的语言,则也可以使用它。) 您的任务是+ - * /为以下结构构建四个标准数学运算符: union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 这样操作本身就只能操纵或访问整数部分(因此也不能在操作过程中的任何时候都与double进行比较),并且结果是完全相同的(对于非数字结果,例如,功能上是等效的NaN)好像相应的数学运算已直接应用于double。 您可以选择要操作的整数部分,甚至可以在不同的运算符之间使用不同的整数部分。(尽管我不确定您是否要这样做,您也可以选择从联合中的任何字段中删除“未签名”。) 您的分数是四个运算符中每个字符的代码长度总和。最低分获胜。 对于不熟悉IEEE 754规范的我们来说,这是一篇有关Wikipedia的文章。 编辑: 03-06 08:47在intfloat结构中添加了构造函数。您可以使用它们进行测试,而不必手动设置double /etc。

10
输出代码大小的Lorem Ipsum
输出与您的代码相同长度的Lorem ipsum! 规则: 代码不能与输出相同 没有压缩库 两周中最短的程序获胜 没有网络的使用,文件阅读等技巧与人们可以很容易地解决任何代码高尔夫球问题(与eval,exec等) 例 Your code with length 25. 输出量 Lorem ipsum dolor sit ame

30
输出的pi位数与代码的长度相同
您的挑战是打印xpi的数字,其中x您的代码长度。 例子: Source code (length) -> output foo! (4) 3.141 foobar (6) 3.14159 kinda long (10) 3.141592653 +++++ (5) 3.1415 123456789 (9) 3.14159265 您可以用来确定需要打印的位数。请注意,小数点不算作pi的数字-因此长度为3的代码应具有长度为4的输出。floor(π/10 * 10code_length) / 10code_length - 13.14 规则: 您的代码长度必须大于三个字符。 您不得使用任何标准漏洞。 您可以使用任何标准允许的输出方法。 您可能无法阅读源代码来确定代码长度。 您可能不使用内置pi常量。 Pi必须完全准确且不能近似。 输出中的小数点是必需的。如果选择通过返回值输出,则必须返回浮点整数。 挑战的目标是找到每种语言中最短的解决方案,而不是该解决方案中最短的语言。只要较短的解决方案以相同的语言发布,只要您的解决方案使用不同的方法,不要害怕用一种语言发布解决方案。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.