注册 登录
编程论坛 数据结构与算法

萌新求教,看不出那里错了

胡晓影 发布于 2020-06-12 18:59, 4386 次点击
/*费马大定理:对于 n>2 ,不存在整数 x,y,z>1 使得 xn=yn+zn 满足。

但是对于 n=3 的时候,是有可能存在 o,r,s,t>1 ,使得 o3=r3+s3+t3 成立的(比如 123=63+83+103 )。

现在给定一个整数N,请列出所有满足条件的 {o,r,s,t} 组合,其中 1<o≤N,1<r<s<t 。*/

#include<stdio.h>
#include<math.h>
int main()
{
    int N,o,r,s,t,m;
    scanf("%d",&N);
    for(o=2;o<=N;o++){
            for(t=2;t<o;t++){
   
            for(s=2;s<t;s++){
   
                    for(r=2;r<s;r++){
                    
                        if(pow(o,3)==pow(t,3)+pow(s,3)+pow(r,3)){
                        
                                printf("(%d,%d,%d,%d)",o,r,s,t);
                                if(o!=N)printf("\n");
                                }}}}}
    return 0;
}
//求大佬帮忙看看哪里错了
2 回复
#2
牧人马2020-06-22 01:31
是oj的题吗还是作业题,手动输入没发现有明显bug
#3
喝酒的猫2020-07-07 15:54
逻辑顺序问题,t要大与r、s,判断顺序反了
r=2,s=r+1,t=s+1.
1