标签: golfscript

如何在Golfscript中找到字符串的索引?

给定一个字符串"ABCDE",如何在Golfscript中找到另一个字符串"C"的出现索引?

?运算符似乎不起作用(http://www.golfscript.com/golfscript/builtin.html#?):

"C""ABCDE"?

esoteric-languages golfscript

3
推荐指数
1
解决办法
147
查看次数

此 GolfScript 代码如何打印 1000 位 pi?

这段代码是如何工作的?

;''
6666,-2%{2+.2/@*\/10.3??2*+}*
`1000<~\;
Run Code Online (Sandbox Code Playgroud)

好像用了数组@*和循环{/**/},但是6666是什么?什么是\/

golfscript

3
推荐指数
1
解决办法
615
查看次数

为什么Golfscript示例在开始时使用pop-and-discard?

;'2706 410'
~{.@\%.}do;
Run Code Online (Sandbox Code Playgroud)

来自GCD的例子.看起来流行音乐和丢弃音乐在开始时什么也不做,所以它为什么会出现?

scripting golfscript

2
推荐指数
1
解决办法
414
查看次数

golfscript嵌套while循环

嵌套在golfscript中的循环中,或者我不知道如何使用它们?

我希望将Q从5迭代到0,并且对于每次迭代,将Z从10迭代到0.单循环分别运行良好,它们看起来是自包含的(不依赖于操作之间的堆栈):

5:Q;
{"Q:"Q+ p Q}
{
  Q 1- :Q;
}while

10:Z;{"Z:"Z+ p Z}{Z 1- :Z;}while
Run Code Online (Sandbox Code Playgroud)

输出:

"Q:5"
"Q:4"
"Q:3"
"Q:2"
"Q:1"
"Q:0"
"Z:10"
"Z:9"
"Z:8"
"Z:7"
"Z:6"
"Z:5"
"Z:4"
"Z:3"
"Z:2"
"Z:1"
"Z:0"
Run Code Online (Sandbox Code Playgroud)

但是如果我把Z循环放在Q循环中,我会得到奇怪的结果:

5:Q;
{"Q:"Q+ p Q}
{
  10:Z;{"Z:"Z+ p Z}{Z 1- :Z;}while

  Q 1- :Q;
}while
Run Code Online (Sandbox Code Playgroud)

输出:

"Q:5"
"Z:10"
"Z:9"
"Z:8"
"Z:7"
"Z:6"
"Z:5"
"Z:4"
"Z:3"
"Z:2"
"Z:1"
"Z:0"
"Z:0"
Run Code Online (Sandbox Code Playgroud)

基于Z打印输出两次,似乎只有一个当前条件块,并且任何执行"while"都会覆盖它.

无论如何,我将如何在golfscript中完成这一壮举?

loops while-loop nested-loops golfscript

1
推荐指数
1
解决办法
316
查看次数