我有一个关于计数器的最大尺寸的天真的问题。例如,下面的代码不应该在一个合理的时间内完成,因为它至少需要2^512次算术运算,或者更重要的是,它需要更改i2^512次的值!
c = 2 to the power 512;
for (i = 1, i < c, i++) {
j = j + 1 / ( i * i + 1 );
}
但是当我使用计算机代数软件"Mathematica“时,它在不到一秒的时间内给出了答案。我的问题是,它是如何做到这一点的?
ps。我对计数器大小的天真想法是由于我对复杂性的看法。当我阅读一些关于复杂性的书籍(不太正式,因为它们只关注算术运算
首先,为这个愚蠢的问题道歉。但是我真的需要了解计算机科学书籍中用来显示程序执行流程的语言。
示例:
1 A = 4
2 t1 = A * B
3 L1: t2 = t1 / C
4 if t2 < W goto L2
5 M = t1 * k
6 t3 = M + I
7 L2: H = I
8 M = t3 - H
9 if t3 ≥ 0 goto L3
10 goto L1
11 L3: halt
这种语言有特定的标准吗?这是伪代码还是中间形式的代码?