2010-10-04 112 views
4

我希望能够混合文本和计算。是这样的:在一个Mathematica单元中输入,输出和文本?

等等等等等等...
等等等等...的平均质量是(M1 + M2 + M3)/ 3 = 23.4 克...等等等等
等等等等......

其中“(m1 ...)/ 3”是输入,“23.4”是输出。现在我只知道如何在一个单元格中显示输入,并在下面的另一个单元格中显示输出。

这可能吗?

更新:我想在更大块的写作过程中包含这些计算位,所以我不知道如何使用Koantig建议的Print语句,因为看起来我不得不连接整个段落/单元格价值的字符串和样式。

感谢,
罗布

回答

4

我想你已经在文本单元格中输入你的表达。如果选中表达式计算,你的情况

(m1 + m2 + m3)/3 

,并按下Shift + Ctrl + Enter(在我的Windows中,不知道你的盒子,但如果你喜欢的菜单是选项Evaluation | Evaluate in Place),那么你的表达式将被评估结果所取代。我知道这不是你想要的,但它是我发现自己最接近的。我将表达式复制到=符号的右边并评估副本。

我希望有人会很快来,并告诉我们这样做的聪明方式。

+0

这就是我做它的方式。一个额外的评论是,要启动一个内联数学单元格,请按Ctrl-('。 – Simon 2010-10-15 02:06:53

2

也许这样的事?

m1 = 10; 
m2 = 20; 
m3 = 50; 
f = "(m1+m2+m3)/3"; 
Print[f <> "= " <> [email protected]@[email protected] <> " g"] 

结果:

(m1+m2+m3)/3= 26.6667 g 
+0

并且将它包装在正确的Boxes中可能会产生OP所需的内容。 – 2010-10-05 08:29:42

+0

在我的问题中,我应该更好地解释一下,我的最初目标是在“文字处理器”模式下,编写大块文本,然后将计算出的花絮放在其中。所以我仍然不确定我会怎么做。我不想在Print调用中在字符串中包含大段文字。 – 2010-10-05 20:57:17

0

对于较小的项目,我有一个从无到有的笔记本电脑和展示笔记本。计算在抓笔记本中执行,然后复制到演示笔记本中。

对于较大的项目,我将计算附加到部分标题,然后将部分向下折叠以仅用于表示目的。还有剪切和粘贴。

我有曾经写了一个笔记本,它将一对scratch/presentation笔记本解析成最终的笔记本,其中笔记本笔记本的特殊标记部分被替换为笔记本上下文中计算的结果。这是非常难以坚持的,我从来没有重复过这种经历。

你想要什么:可见的,可评估的可编辑表达式,或过去的评估的固定结果?

+0

我希望可见,可编辑的表达式被评估。我想避免剪切和粘贴。 – 2010-11-06 21:55:05

+0

我想象的一样多,但是这留下了一个问题:你实际上想要那个结果的表现形式?前评估或后评估?它不能同时存在。 – 2010-11-10 02:54:08