Excel formula 按给定行计算列的Excel公式

Excel formula 按给定行计算列的Excel公式,excel-formula,Excel Formula,给出一个故事问题: 一系列共150盏灯的圣诞灯(可能是无限的) 指示灯的两个可能值0=关闭或1=打开 如果灯光最初全部为0: Person1将所有灯都调到1: 人员2将灯2、4、6、8、…150转为0: 人员3将灯3、6、9、12…150转到1: 人员4将灯4、8、12、16…150变为0: 继续为150人 我该如何用excel公式表示这一点?这需要一种迭代方法。转到文件|选项|公式,将工作簿计算设置为手动,勾选启用迭代计算并将最大迭代设置为1 使用填充系列设置C2-C151中的灯号1-150

给出一个故事问题:

一系列共150盏灯的圣诞灯(可能是无限的)
指示灯的两个可能值0=关闭或1=打开
如果灯光最初全部为0:
Person1将所有灯都调到1:
人员2将灯2、4、6、8、…150转为0:
人员3将灯3、6、9、12…150转到1:
人员4将灯4、8、12、16…150变为0:
继续为150人


我该如何用excel公式表示这一点?

这需要一种迭代方法。转到文件|选项|公式,将工作簿计算设置为手动,勾选启用迭代计算并将最大迭代设置为1

使用填充系列设置C2-C151中的灯号1-150

在B2中输入以下公式,以迭代人名:-

=IF(A2,0,B2+1)
在D2中输入以下公式,以确定C2中的灯是打开还是关闭(奇数人总是打开,偶数人关闭,但仅适用于其人数的精确倍数的灯):-

将公式从D3向下复制到D151

我还使用了一个公式在E2中显示文本字符串“开”或“关”,但这是可选的:-

=IF(D2,"ON","OFF")
要初始化它(可能有更简洁的方法),请在A2中键入“1”

屏幕底部应有一个“计算”按钮。按下此按钮一次应将所有灯设置为“关闭”

在A2中键入“0”。现在,每次按下“Calculate”(计算)按钮时,它都会模拟B2中显示数字的人的动作

下面是第三人试一试后的情况:-

如果你想看看在所有150次尝试之后它会是什么样子,回到文件|选项|公式并将最大迭代次数设置为150次

如前所述重置并计算

现在看起来是这样的:-

灯光交替-这是你所期望的吗?对于所有的偶数灯,最近的动作是由偶数人执行的,所以它是关闭的,反之亦然

或者你在想马特·帕克的书《第四维度中要做的事情》中概述的问题。在这里,一系列警卫可以用相同的约束锁定和解锁牢房门,不同的是他们总是将0(已锁定)变为1(未锁定),将1变为0,结果发现保持打开状态的门是带有平方数1,4,9,16的门

在这种情况下,D列中的公式为

=IF(A$2,FALSE,IF(MOD(C2,B$2)=0,NOT(D2),D2))
看起来是这样的:-

=IF(A$2,FALSE,IF(MOD(C2,B$2)=0,NOT(D2),D2))