2013-02-21 52 views
-2

我想采取形式为“(ABC)(DEF)”的字符串并将相邻的字母对翻译为数字,将括号内的字母解释为循环。在我的例子中,我想生成表格:Mathematica样式解决方案字符串解析

{{“AB”,1},{“BC”,2},{“CA”,3},{“DE”,4} EF“,5},{”FD“,6}}

我可以用循环做到这一点,但是我对编码的”Mathematica风格“的有限知识表明在Mathematica中有更好的方法来做到这一点。我如何以Mathematica的方式来做到这一点?在一般情况下,我可以从哪里学习Mathematica样式编码?

编辑:改变了我的想法。我想创建一个函数f,例如f [“AB”] = 1等,但我认为这不会改变这个问题。

+0

你试过了什么代码? – 2013-02-21 20:57:33

回答

1

这里的返回给定输入“AB” 1功能:

f["ab"] = 1 

你从哪里学习编程的数学方法是什么?来自许多参考书的文档,on the Mathematica stack exchange site,来自Leonid Shifrin的advanced introduction to Mathematica programming,许多其他地方也是如此。但最好的地方就在于你的手指和头脑完全融入你的键盘。

+0

马克,我有一段时间想问:你为什么不加入我们的Mathematica堆栈交换?您的专业知识将非常感谢。 – 2013-04-15 14:16:09

+0

@LeonidShifrin:我不喜欢Mathematica编程的贫民窟。我是一名程序员,不是<插入语言名称>程序员。我的Fortran编程对于成为一名Mathematica编程人员来说也更好,我的Mathematica编程也更适合担任Fortran编程人员。在极端情况下,我们会为每种编程语言提供一个Stack Exchange站点,但我们都会成为输家,特别是那些认为他们的唯一语言是唯一真正的语言并且有太多可以通过其他方式学习的新手们的思考。 – 2013-04-15 14:20:54

+0

好吧,我可以理解。我也是一名程序员(Java,C,Javascript,Mathematica),我可以说不同的编程技巧相互促进。事实上,Mathematica Stack Exchange编程问题只是所有问题的一小部分(相对较小)。然而,即使这样的分数仍然比Mathematica标签在这里提供了更多有趣的纯编程问题,因为大多数Mathematica标签SO社区移到了那里(否则我不会离开 - 我仍然是这个标签中的顶级用户:)) 。 – 2013-04-15 14:27:25