@s mod和\let\Xmod=\bmod%这是使用“mod”而不是“%”的CWEB魔法@*简介。该程序计算罗兰·巴赫(Roland Bacher)建议的函数{\sl美国数学月刊\/\bf130}(2023),824--836,即$n=ab+cd$的解数,其中$\max(a,b)<\min(c,d)$。巴赫证明了一个惊人的事实,即正好有$(p+1)/2$当$n=p$是奇素数时的非负解。我很好奇~$n$的其他值的解的数量。该程序的目标是计算此序列的“b-file”,其已被指定为{\sl OEIS\/}编号A368207。@d mod%/*用于表示\CEE/中余数的百分号*/@d最大值10001@c#包括#包括int th[最大值];int xs[最大值];整数和;@;int main(无效){寄存器int d,dd,i,j,k,kk,m,n,nn;printf(“#computed by Don Knuth’s CWEB program on 18 December 2023\n”);@;对于(n=1;n;printf(“\n”);/*b文件以空行结尾*/}@函数|th[n]|是$n$的最大除数$d$,其平方为小于或等于~$n$。(因此$n=dd'$,其中$d\le d'$。它是{\sl OEIS}中的序列A0033676。)函数|xs[n]|是所有除数$d$的$4d-2$之和的两倍,但当$d^2=n$时,我们只使用$2d-1$。在下面的循环中,$m^2\len\le|nn|=(m+1)^2-1$。@=对于(m=n=1,nn=3;n={总和=0;对于(k=1,kk=n-1;ki;j——)如果(!(kk mod j))解(k/i,i,j,kk/j);}}}printf(“%d%d\n”,n、 总和+xs[n]);}@ @=无效解(int a,int b,int c,int d){如果(a==b){如果(c==d)和++;否则总和+=2;}否则,如果(c==d)和+=2;否则总和+=4;}@*索引。