对于 Pi Day,我正在尝试编写一个 Java 程序,尝试在 Pi 中找到给定的单词(或另一个给定的无理数)。我几乎已经完成了所有工作,但我对如何将 pi 的每个数字转换为字母感到矛盾。我想说:A=01,B=02,C=03...Y=25,Z=26。
然而,我对所有那些甚至没有机会的可怜的数字序列感到难过,因为任何不以“0”或“2”开头的序列将被完全忽略。这意味着 80% 的序列是不相关的?
我可以进行 26 进制到 10 进制的转换吗?如果这确实是一个正确的解决方案,不确定如何以代码方式执行此操作?
Thanks!
您可以使用一种方法将 Pi 从其基数 10 形式转换为任何其他基数(即基数 26,其中仅使用字母 A-Z,而不使用数字 0-9)像这个 http://javaconfessions.com/2008/09/convert-between-base-10-and-base-62-in_28.html。生成的“数字”将全部是字母。
你必须修改fromDecimalToOtherBase
方法,使其仅输出字母。否则,它应该非常简单,并且它是在十进制和任何任意基数之间转换的相同算法。
只是为了好玩,我还发现这一页 http://www.convertit.com/go/convertit/calculators/math/base_converter.asp其中包含任意基数转换器。如果您输入不带小数点的 Pi,并输入“26”作为目标基数,它会进行转换(尽管它仍然使用数字 0-9,因此它不会按照您想要的方式“解决”问题) )。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)