【问题标题】:Is it possible to use recursive cell formulas in org-mode tables?是否可以在组织模式表中使用递归单元格公式?
【发布时间】:2013-11-19 05:12:13
【问题描述】:

我想建立一个以常数开头的列,比如 1,其后续行是前一行的两倍(或我在公式中设置的某个变量系数):

| 1  |
| 2  |
| 4  |
| 8  |
| 16 |

有没有办法在 Emacs 中快速进行设置?我看到有行公式、列公式和矩形区域公式,但是我在手册中没有看到任何递归或快速公式复制。

【问题讨论】:

    标签: emacs org-mode


    【解决方案1】:
    #+TBLFM: @1$1=1::@<<..>$1=@-1 * 2
    

    将递归生成该表。将光标放在最后一行并点击 C-u C-u C-c * @&lt;&lt;..&gt; 是从第二行到最后一行的范围。

    #+TBLFM: @1$1=0::@2$1=1::@<<<..>$1=@-1 + @-2
    

    将产生斐波那契数列

    【讨论】:

    • 因此,如果我想在第 3 列中应用该公式,我添加公式 @1$3=1::@&lt;&lt;..&gt;$3=@-1 * 2?由于某种原因,结果仍然出现在第 1 列中。
    • 我玩了一下字段公式。像 #+TBLFM: @2$3..>$3=@-1 * 2::@1$3=2::@2$1..>$1=@-1 * 3 这样的东西将设置第三列,但不会根据文档设置第一列,因为范围是矩形区域。我能想到的最好的是#+TBLFM:@2$3..>$3='(cond ((= $# 1) (* 2 @-1)) ((= $# 2) (* 3 @ -1)) (t (* 4 @-1)));L::@1$1=4::@1$2=3::@1$3=2 范围似乎应该是@2$1.. >$3,但这只会限制在第一列。
    • 即#+TBLFM:@2$3..>$3=@-1 * 2::@1$3=2 将设置第三列。添加第一列设置会导致错误。
    • edit回答并添加inline键盘(kbd)和code`)格式
    猜你喜欢
    • 2016-01-08
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 2012-05-23
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多