编程的定理
⑴ pascal编程-尼科斯定理
由尼科斯定理的证明可制,只需证明a*a*a=(a*a-a+1)+(a*a-a+3)……+(a*a-a+2*a-1)即可。
var i,j,k,temp1,temp2:integer;
begin
for i:=1 to 20 do
begin
temp1:=i*i*i;
temp2:=0;
j:=i*i-i+1;
for k:=1 to i do
begin
temp2:=temp2+j;
j:=j+2;
end;
if temp1=temp2 then
begin
write(i,'*',i,'*',i,'=');
for k:=1 to i-1 do
write(i*i-i+2*k-1,'+');
writeln(j-2);
end;
end;
end.
4*4*4=13+15+17+19```
⑵ c语言程序设计四方定理:任意一个自然数都可以用四个数的平方和表示
#include<stdio.h>
#include<stdlib.h>
void main()
{
int number,i,j,k,l;
printf("Please enter a number=");
scanf("%d",&number); /*输入整数*/
for(i=1;i<number/2;i++) /*穷举法。遍历大于1的自然数,试算i,j,k,l的不同值*/
for(j=0;j<=i;j++)
for(k=0;k<=j;k++)
for(l=0;l<=k;l++)
if(number==i*i+j*j+k*k+l*l) /*若满足定理要求则输出结果*/
{
printf(" %d=%d*%d+%d*%d+%d*%d+%d*%d\n",number,i,i,j,j,k,k,l,l);
exit(0);
}
}
⑶ c++尼科彻斯定理
#include<iostream>
using namespace std;
int main()
{
int a,b,i=1;
cin>>a;
b=a*a-a+1;
cout<<a<<"*"<<a<<"*"<<a<<"="<<a*a*a<<"="<<b
for (i = 1; i < a; ++i) {
cout << "+" << b + i;
}
cout<<endl;
return 0;
}
