Questions tagged «ascii-art»

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

8
上升还是下降?
给定山羊的图像,您的程序应该最好尝试识别山羊是否倒置。 例子 这些是输入可能是什么的示例。不是实际的投入 输入: 输出: Downgoat 规格 您的程序最多应为30,000个字节 输入将包含完整的山羊 图片将始终包含山羊 如果山羊倒立,输出Downgoat,否则Upgoat 输入将是您可以将图像作为输入(文件名,图像的base64等)。 要点文件名仅供参考,不要依赖于包含“ Upgoat”或“ Downgoat”的图像名称或其他元数据。 请不要硬编码。这很无聊,我无法完全执行它,但是我可以很好地询问。 测试用例 要点与图像。开头的图像downgoat具有Downgoat输出和图像开始与upgoat有Upgoat输出。 第二批测试用例 确保在所有测试用例上测试图像。这些图像是jpgs。图像大小确实有所不同,但没有说太多。 注意:在接受答案之前,可以添加一些测试用例,以避免使用硬编码的答案并检查程序的总体性能。 正确获得我的头像的奖励积分:P 计分 分数是可以通过以下方式计算的百分比: (number_correct / total) * 100

27
您想编码一个雪人吗?
这是一个简单的ASCII艺术雪人: _===_ (.,.) ( : ) ( : ) 让他结识一些朋友。这将是我们ASCII艺术雪人的一般模式: HHHHH HHHHH X(LNR)Y X(TTT)Y (BBB) 所有雪人的前导空格和括号始终相同。不同的字母代表可以单独更改的图案部分。每个部分有四个准确的预设,可以填充哪些ASCII字符。通过为所有八个部分混合并匹配这些预设,我们可以制作各种雪人。 所有预设 (请注意,否则将在空白行上放置空格,以使截面形状始终正确。) H代表帽子 草帽 _===_ 墨西哥帽 ___ ..... 非斯 _ /_\ 俄罗斯帽子 ___ (_*_) N代表鼻子/嘴巴 正常 , 点 . 线 _ 没有 L代表左眼 点 . 大点 o 最大点 O 关闭 - R代表右眼 (与左眼相同。) X是左臂 …

30
多年来的编程语言
在这一挑战中,用户将轮流使用允许逐渐变老的编程语言来完成三个相当简单的编码任务。 第一个答案必须使用2015年制作的编程语言。一旦至少有一种2015年语言的答案,答案就可以使用2014年制作的编程语言。类似地,不允许使用2013年语言的答案。直到至少有一个2014年答案。 通常,直到提交了使用Y + 1年的语言的答案后,才允许使用Y年的编程语言。唯一的例外是Y = 2015。 寻找你的语言年 要回答这个问题,您必须知道您的编程语言的“制造年份”。当然,这是一个主观术语;一些语言是在多年的发展过程中开发的,并且每年仍在升级许多语言。让“制造”该语言的年份成为该语言的实现在公众中出现的第一年。 例如,Python是1991年制造的,尽管它的开发自1989年以来一直在进行,而1.0版直到1994年才发布。 如果今年仍然是主观的,请使用常识选择最合适的年份。不要因对年份的选择而陷入一点分歧。请提供指向您的语言的来源的链接。 编程语言的不同版本或标准(例如Python 1、2、3)被视为具有相同初始年份的相同语言。 因此,除非您的语言年份是2015年,否则您只能在提交了其语言年份为您的前一年的答案后才能提交答案。 如果已经存在与您年份相同的有效答案,则可以回答。您的语言是在今年早些时候还是晚些时候开发都没有关系。 任务 您必须完成任务1到3。任务0是可选的。 这些任务或多或少地被选择为与编程的三个重要方面相对应:提供输出(任务1),循环(任务2)和递归(任务3)。 任务0-语言历史记录(可选) 至少写一个段落来说明您所选择的编程语言的历史:谁开发了它,为什么,怎么做等等。如果您本人是在语言诞生时就在身边的,甚至可能在语言的发展中发挥了作用,则尤其值得鼓励。随意将有关该语言对您或您的工作或类似事情的影响的个人轶事联系起来。 如果您太年轻而又不做大量研究就不了解您的语言历史,请考虑给老用户留下笔记,说他们可以编辑您的帖子并添加一些第一手的历史记录。 任务1-“你好,世界!” 变体 编写一个打印程序 [language name] was made in [year made]! 到您的语言的标准输出区域(最新语言的标准输出)。 例如,如果语言是Python,则输出为: Python was made in 1991! 任务2-ASCII Art N 编写一个程序,让用户在奇正整数输入(你可以假设输入始终有效),并打印出来使用字符的ASCII艺术字母N制成N。 如果输入为1,则输出为: N 如果输入为3,则输出为: N N NNN N N …

1
“不知道”还是“不知道”?
编写一个程序,处理缠结字符串的ASCII艺术表现形式,并确定是否可以将其解缠为简单循环。纠结使用字符表示-并|表示水平和垂直段,以及+代表角。字符串经过其自身的位置如下所示: | | ------- ---|--- | | (Horizontal segment on top) (Vertical segment on top) 字符串的两端连接在一起;没有松散的结局。 如果您的程序确定无法将字符串解开成简单的循环,则应输出单词KNOT。否则,应输出单词NOT。 这是一个代码挑战,因此最短的有效答案(以源代码的字节为单位)将获胜。 限度 ASCII输入最多包含25行,每行80个字符。您可以假定所有行都用相同长度的空格填充。 例子 输入: +-------+ +-------+ | | | | | +---|----+ +-------+ | | | | | | +-------|------------|---+ | | | | +---+ +---+ 输出: KNOT 输入: +----------+ | | …

30
如此真实的键盘,几乎可以品尝到
...不是那样的,对吧?任务很简单,输出以下文本: ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ________ ||` |||1 |||2 |||3 |||4 |||5 |||6 |||7 |||8 |||9 |||0 |||- |||= |||BS || ||__|||__|||__|||__|||__|||__|||__|||__|||__|||__|||__|||__|||__|||______|| |/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/______\| ________ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ||TAB |||Q |||W |||E …

30
这是我的生日:D
介绍 去年是我的生日(真的!),可惜我不得不组织自己的聚会。好吧,现在你知道了,你至少不能做蛋糕吗? 挑战 给定一个整数n作为输入,编写一个完整的程序以输出带有n蜡烛的生日蛋糕。 输出量 放着一支蜡烛的小菜一碟是: $ | --- ~~~ --- 放着三个蜡烛的小菜一碟是: $ $ $ | | | ------- ~~~~~~~ ------- 我敢肯定你可以解决这个问题 但是,对于input0,必须输出以下内容: Congratulations on your new baby! :D 如果输入小于0,则应输出无烛蛋糕: --- ~~~ --- 不允许将任何内容输出到STDERR。 尾随换行符和空格是允许的。 获奖 以字节为单位的最短代码获胜。 排行榜 var QUESTION_ID=57277;OVERRIDE_USER=30525;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var …

30
绘制奥运会徽标[关闭]
挑战 绘制奥运会徽标... ...作为字符(例如ASCII)艺术! 样本输出 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * …

30
正在载入…永远
您的挑战是制作一个无限的加载屏幕,如下所示: 或者,更具体地说: 不输入任何内容。 输出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 << …

13
七斜线显示
编写一个程序,该程序接受从0到9的非空字符串,并使用斜杠(,)打印它们在七段显示器上的显示方式。/\ 这些是精确的数字形状: /\ \ \ \/ \ \ /\ / \/ /\ /\ / \ \/\ / \/\ / / \/\ \/ /\ \ /\ \/\ \/ /\ \/\ / 当一个数字接一个数字出现时,它们以对角线形式向上和向右链接,中间是对角线。因此,例如,203将变为: /\ /\ /\ / \ \ /\ \/ / \/ 请注意,1角色占用的空间与其他角色相同。的两行在1显示器的右侧,而不是左侧。 所以159114会变成这样: \ \/\ \ \ \ \ /\ …

30
为了纪念亚当·韦斯特
亚当·韦斯特(Adam West)去世了,我想在此纪念他在PPCG上的记忆,尽管我怀疑他知道我们的存在。尽管这个人以许多不同的事物而闻名,但没有比他作为原始蝙蝠侠的角色更突出的了。我将永远记得我的继父至今仍在观看老式的蝙蝠侠和罗宾。这个挑战本质上是简单的,根本不符合亚当·韦斯特这个复杂的人。但是,这是我能想到的最好的方法,因为这是该男子职业生涯中最具标志性的形象。 我想早些发布,但是我在等待有人提出更好的建议。 输出以下内容(带或不带尾随空格/换行符): * * **** * * **** **** ******* **** ****** ******* ****** ********* ********* ********* *********************************************** ************************************************* ************************************************* ************************************************* *********************************************** ***** ********************* ***** **** *** ***** *** **** ** * *** * ** 这是代码高尔夫球,最低字节数将获胜。

30
5个最喜欢的字母
挑战实际上非常简单。选择5个不同的字母(如果愿意,您可以选择5个最短的字母)并将它们输出到控制台。但是,不同之处在于它们必须来自以下列表: AAA BBBB CCCC DDDD EEEEE FFFFF GGG H H A A B B C D D E F G H H AAAAA BBBB C D D EEEE FFFF G GG HHHHH A A B B C D D E F G G H H A A BBBB CCCC DDDD …

30
Code Golf圣诞版:如何打印出高度为N的圣诞树
给定一个数字N,如何N使用最少数量的代码字符打印出一棵高度高的圣诞树? N假定被限制为的最小值3和的最大值30(不需要边界和错误检查)。N作为程序或脚本的唯一命令行参数给出。 感谢所有语言,如果您看到一种已经实现的语言,并且可以将其简化,请尽可能编辑-否则请评论,并希望有人清理混乱。为了清楚起见,包括换行符和空格,但不要在字符数中包括它们。 这样生成一棵圣诞树,其“树干”仅包含居中的“ *” N = 3: * *** ***** * N = 4: * *** ***** ******* * N = 5: * *** ***** ******* ********* * N定义不包括一个主干的分支的高度。 圣诞快乐PPCG!

9
高尔夫降临日历
在一年中的这个时候,我们中的许多人都获得了我们的降临日历!如果您不熟悉出现日历,则这些是特殊的日历,用于在圣诞节前倒计时。以我的经验,门是随机放置的,而小时候正在锻炼明天门的位置的乐趣便是其中的一部分!如今,日历通常在每扇门后都有巧克力,但是您今年不应该购买出现日历,而应该构建ASCII日历! 任务 给定n在0- 范围内的整数()输入,将24产生一个ASCII出现日历,其中门的编号一直到n打开。您必须使用相同的顺序,在下面的例子:2,17,8,12,1,6,11,20,5,22,3,10,15,23,7,16,9,24,18,4,13,19,21,14。 门 封闭的门必须是: .-----------. | | | | | | | nn | |___________| 其中n代表门的数量(前导零是可选的),打开的门为: .-----------. |\ | | | | | | | | | | | |_________| \| 除了24号门,它是: .--------------------------. | | | | | | | 24 | |__________________________| .--------------------------. |\ | | | …

14
[此处为圣诞节主题免责声明]
要注意mod,如果标题不公正,请将其更改为任何内容,我认为这很有趣。 您的任务是为此圣诞节季节挂灯,并且您的家人已决定,要使其成为圣诞节快乐,您需要在房屋上悬挂至少2个圣诞灯。因此,您面临的挑战是,给定一个数字1 < n,根据以下规范输出要悬挂的相应数量的圣诞灯... 这是基本的圣诞灯的结构: _?_ [___] /:' \ |:: | \::. / \::./ '=' 唯一不确定的部分是问号,因为取决于灯光在链中的位置,连接方式将有很大不同。 对于链中的第一盏灯,您需要输出: .--._ _(_ [___] /:' \ |:: | \::. / \::./ '=' 对于链中的最后一盏灯,您需要输出: _.--. _)_ [___] /:' \ |:: | \::. / \::./ '=' 对于中间的所有灯: _.--.--._ _Y_ [___] /:' \ |:: | \::. / …

30
我花了很多时间才能做到这一点。(YouTube评论1)
等等.....这不是拖钓。 背景 如今,在YouTube上,评论部分杂乱无章: S St Str Stri Strin String Strin Stri Str St S 其中String仅是占位符,是指字符的任意组合。这些模式通常伴随一个It took me a lot of time to make this, pls like或某种东西,并且OP通常会成功聚集许多喜欢的对象。 任务 尽管您凭借出色的高尔夫技巧在PPCG上积累了丰富的才能,但您绝对不是在YouTube评论部分发表机智的言论或引用模因的最佳选择。因此,您在YouTube上经过深思熟虑而提出的建设性评论几乎没有“喜欢”。您想要改变。因此,您可以采用上述陈词滥调的模式来实现自己的最终目标,而又不浪费任何时间手动编写它们。 简而言之,您的任务是获取一个字符串,例如s,并输出的2*s.length - 1子字符串s,以换行符分隔,以符合以下模式: (用于s=“ Hello”) H He Hel Hell Hello Hell Hel He H 输入值 单个字符串s。输入社区的默认值。您可以假设输入字符串仅包含可打印的ASCII字符。 输出量 几行用换行符分隔,构成如上所述的适当模式。应用社区的默认输出。输出中允许使用前导和尾随空白行(不包含任何字符或看不见的字符,如空格)。 测试用例 多字测试用例: Input => …

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.