Questions tagged «ascii-art»

这项挑战涉及使用文本字符作为绘画来创建或解析图片。通常,它仅使用1963年ASCII标准定义的95个可打印字符(总共128个)。

2
二维射线追踪
挑战是要实现基于文本的二维射线跟踪程序。 白光的来源是@符号。R,G并B是光的过滤器。/和\与80%的反射率的反射镜。?是一个光传感器。>,<,^并V在适当的方向相结合的光(例如,如果一个红色和一个绿色来到一个>的光将朝向右侧被发射,这将是黄色)。其他非空白字符会吸收所有光。@符号从四个方向发射光。 运行该程序时,它应产生与输入相同的输出,但带有光线。因为这是二维的,并且我保证输入中不会有任何光线交叉,所以不会有任何问题。每条射线应以字母表示;r =红色,g =绿色,b =蓝色,c =青色,m =品红色,y =黄色,w =白色。永远不会有任何三元颜色。套管对于区分输入和输入很重要。在输出之后,应将问号捕获的光的值(从出现的顺序,从左到右,从上到下)输出为百分比和颜色。例如,此输入: / @ - \R> ? @B/ 应该给出输出: /wwwwwwwwwwwwwwwwww@w w - w\R>mmmmmmmmmmmmmmmmm? w b @B/ #1: 72% Magenta 还要注意的另一个重要点-当使用“棱镜”(箭头)组合两种颜色时,组合后的光的强度变为两种颜色的平均强度。输出必须完全符合规定(例如#x:[x] [x] x%Color)。 如果您的语言无法从STDIN读取并向STDOUT写入,请创建一个函数(将匿名或lambda可用)接受该输入作为参数并返回结果。 可以省略针对编译器的指令,使用该语言创建的所有或大多数程序所需或推荐的结构等。例如,#include和using指令(但不是#define)可以在C语言风格的语言被除去,#/usr/bin/perl -options在Perl和 Module Module1 Sub Main() End Sub End Module 例如在VB.NET中。如果您导入名称空间或添加包含指令,请在您的答案中注意它们。 现在够难了吗?:)
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.