迷茫的羔羊羊 2022-02-16 12:42 采纳率: 95%
浏览 54

有理数均值,不随时化简会溢出问题,感觉自己有随时化简,但还是通过不了。

#include<stdio.h>
int main()
{ int n,i,j,k=0,m;
scanf("%d",&n);
int a[n],b[n];
for(i=0;i<n;i++)
{scanf("%d/%d",&a[i],&b[i]);}
for(i=0;i<n-1;i++)
{for(j=b[i];j>0;j++)
{if(j%b[i]==0&&j%b[i+1]==0)
{break;}
}
a[i+1]=(j/b[i])*a[i]+(j/b[i+1])*a[i+1];
b[i+1]=j;
do
{ k++;
if(a[i+1]%k==0&&b[i+1]%k==0)
{a[i+1]=a[i+1]/k;
b[i+1]=b[i+1]/k;
k=1;}
}
while(k<b[i+1]);
k=0;
}
m=n;
k=0;
do
{ k++;
if(a[i]%k==0&&m%k==0)
{a[i]=a[i]/k;
m=m/k;
k=1;}
}
while(k<m);
b[i]=b[i]*m;
if(b[i]==1)
printf("%d",a[i]);
else
printf("%d/%d",a[i],b[i]);
}

  • 写回答

1条回答 默认 最新

  • 不会写代码的猴子 Android领域优质创作者 2022-02-16 13:50
    关注
    #include<stdio.h>
    int main()
    { 
        int n,i,j,k=0,m;
        scanf("%d",&n);
        int a[n],b[n];
        for(i=0;i<n;i++){
            scanf("%d/%d",&a[i],&b[i]);
        }
        for(i=0;i<n-1;i++)
        {
            for(j=b[i];j>0;j++)
            {
                if(j%b[i]==0&&j%b[i+1]==0)
                {
                    break;
                }
            }
            a[i+1]=(j/b[i])*a[i]+(j/b[i+1])*a[i+1];
            b[i+1]=j;
            do
            { 
                k++;
                if(a[i+1]%k==0&&b[i+1]%k==0)
                {
                    a[i+1]=a[i+1]/k;
                    b[i+1]=b[i+1]/k;
                    k=1;
                }
            }while(k<b[i+1]);
            k=0;
        }
        m=n;
        k=0;
        do
        { 
            k++;
            if(a[i]%k==0&&m%k==0)
            {
                a[i]=a[i]/k;
                m=m/k;
                k=1;
            }
        }while(k<m);
        b[i]=b[i]*m;
        if(b[i]==1)
            printf("%d",a[i]);
        else
            printf("%d/%d",a[i],b[i]);
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 2月16日

悬赏问题

  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题
  • ¥15 MSR2680-XS路由器频繁卡顿问题
  • ¥15 VB6可以成功读取的文件,用C#读不了
  • ¥15 如何使用micpyhon解析Modbus RTU返回指定站号的湿度值,并确保正确?
  • ¥15 C++ 句柄后台鼠标拖动如何实现
  • ¥15 有人会SIRIUS 5.8.0这个软件吗