求助 我的输出怎么就达不到题的要求呢 C++

zzcwyu 2008-03-09 04:49:20
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int m,i;
int year;
float x,y;
double area;
do
{
cin>>m;
}
while(m<0);
for(i=0;i<m;i++)
{
cin>>x>>y;
}

if(y>=0)
{
area=3.14*(x*x+y*y);
area=area/100;
year=ceil(area);
}
for(i=0;i<m;i++)
cout<<"proverty: "<<i+1<<" this proverty will bein eroding in

year :"<<year<<endl;
cout<<"END OF OUTPUT.";
return 0;
}



这是我写的一程序,

这是题的要求

input

2

1.0 1.0

25.0 0

output

Property 1: This property will begin eroding in year 1.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT

而我的输出结果是
Property 1: This property will begin eroding in year 20.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT



请高手帮一下
...全文
132 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ttkk_2007 2008-03-10
  • 打赏
  • 举报
回复

int main()
{
int m,i;
int *year;
// float x,y;
double area;
do
{
cin>> m;
}
while(m <0);
float* x = new float[m];
float* y = new float[m];
year = new int[m];
for(i=0;i <m;i++)
{
cin>> x[i]>> y[i];


if(y[i]>=0)
{
area=3.14*(x[i]*x[i]+y[i]*y[i]);
area=area/100;
year[i]=ceil(area);
}
}
for(i=0;i <m;i++)
cout <<"proverty: " <<i+1 <<" this proverty will bein eroding in year :" <<year[i] <<endl;
cout <<"END OF OUTPUT.";
delete []x;
delete []y;
delete []year;
return 0;
}
zzcwyu 2008-03-10
  • 打赏
  • 举报
回复
六楼的朋友,你的程序我运行后输出的结果是不合题的要求的,跟我的问题一样
Chappell 2008-03-10
  • 打赏
  • 举报
回复
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int m,i;
int year;
// float x,y;
double area;
do
{
cin>> m;
}
while(m <0);
float* x = new float[m];
float* y = new float[m];

for(i=0;i <m;i++)
{
cin>> x[i]>> y[i];


if(y[i]>=0)
{
area=3.14*(x[i]*x[i]+y[i]*y[i]);

area=area/100;
year=ceil(area);
}
}
for(i=0;i <m;i++)
cout <<"proverty: " <<i+1 <<" this proverty will bein eroding in year :" <<year <<endl;
cout <<"END OF OUTPUT.";
delete []x;
delete []y;

return 0;
}

zzcwyu 2008-03-10
  • 打赏
  • 举报
回复
是一道 ACM题,m 是一个不确定数,是指输入几组数据,即坐标x ,y ,y>0;
IT_lau 2008-03-09
  • 打赏
  • 举报
回复
lz,,你要干什么???
zzcwyu 2008-03-09
  • 打赏
  • 举报
回复
一定要用到数组吗,能不能在原程序修改一下啊
2楼说的好像不对哦,我去把m改成大于0,反而编译不了
追忆 2008-03-09
  • 打赏
  • 举报
回复
你这道题的题目是什么,我感觉你的do while 循环不应该要,要不然你的M的值始终小于零,你的后面的FOR循环就不能执行了,因为i不可能小于零!
hityct1 2008-03-09
  • 打赏
  • 举报
回复


#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;

int main()
{

int m,i;
int year[2];
float x[2],y[2];
double area[2];

cin>>m;

for(i=0;i<m;i++)
{
cin>>x[i]>>y[i];

if(y[i]>=0)
{
area[i]=3.14*(x[i]*x[i]+y[i]*y[i]);
area[i]=area[i]/100;
year[i]=ceil(area[i]);
}
}


for(i=0;i <m;i++)
cout<<"proverty"<<i+1<<": "<<"this proverty will bein eroding in year "<<year[i]<<endl;

cout<<"END OF OUTPUT."<<endl;

return 0;
}

64,663

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧