poj1005——I Think I Need a Houseboat

家的坐标(X,Y)到侵蚀中心(0,0)的距离就是侵蚀半径R

那么Area = 1/2*PI*R 就是侵蚀面积

而侵蚀速度为每年50

那么侵蚀到Fred 家需要 year = Area/50  年

PS:因为要求从第一年开始计算,最后一年不够一年按一年计算,那么year+1取整就可以了。

#include<stdio.h>
const double PI=3.141592654;
int main()
{
    freopen("input.txt","r",stdin);
    int n;
    scanf("%d",&n);
    int i=1;
    for(i=1;i<=n;i++)
    {
        double x,y;
        scanf("%lf%lf",&x,&y);
        double Area;
        Area=0.5*PI*(x*x+y*y);
        int year;
        year=(int)(Area/50.0+1.0);
        printf("Property %d: This property will begin eroding in year %d.",i,year);
        printf("\n");

    }
    printf("END OF OUTPUT.");
    return 0;
}

PS:不知道为什么这段代码提交到poj时,语言如何选择C的话就过不了,C++才能过,我这不就是C代码么,错误都是说代码中的标识符没有声明,

希望有前辈路过能指导一下。

错误截图(C语言提交)



请教之后明白了一点,如果变量声明在循环之外就可以。

#include<stdio.h>
const double PI=3.141592654;
int main()
{
    freopen("input.txt","r",stdin);
    int n;
    int i=1;
    double Area;
    int year;
    double x,y;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {

        scanf("%lf%lf",&x,&y);

        Area=0.5*PI*(x*x+y*y);

        year=(int)(Area/50.0+1.0);
        printf("Property %d: This property will begin eroding in year %d.",i,year);
        printf("\n");

    }
    printf("END OF OUTPUT.");
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值