我的儿子对ROT-13密码感兴趣。我想帮助他在MIT Scratch中编写一个程序,它可以将一个字符串作为输入并返回ROT-13编码的文本作为输出。为此,程序将需要取出字符串,分离出所有字符,根据ROT-13 cypher更改字符,然后将它们重新组合回字符串。
我认识到Scratch并不是专为字符串操作而构建的,而是我儿子理解的编程环境。这种字符串操作在Scratch中是否可行?如果是这样,它会怎么做?首先,如何将字符串拆分为等效的字符数组?
答案 0 :(得分:6)
最好的方法是通过简单的迭代。
set [i v] to (0)
repeat (length of (originalString))
change [i v] by (1)
add (letter (i) of (originalString)) to [characters v]
end
列表characters
将包含原始字符串的每个字符。
答案 1 :(得分:2)
你可以在没有变量的情况下(使用当前输出的长度)......
delete (all v) of [Output v]
repeat (length of (originalString))
add (letter((length of [Output v]) + (1)) of (originalString)) to [Output v]
end
答案 2 :(得分:0)
最简单的方法是使用列表并一个一个地输入字母。临时目录3中有一个很好的列表库。
如果由于程序预期行为的改变而无法执行此操作,则可以通过在字符串上使用“运算符”命令,逐个字母地将字符串放入字母列表。之后,您可以对字母列表执行任何操作,使用“变量”命令-用于列表。
我希望它足够清楚:)