您的位置:首页 > 其它

zoj 1720 模拟

2011-04-11 00:12 495 查看
简单模拟..没啥 说的..细节多.烦人..

#include <stdio.h>
#include <iostream>
using namespace std;
int main(void)
{
// freopen("in","r",stdin);
// freopen("out_my","w",stdout);
int a[10];
while(cin>>a[0]>>a[1]>>a[2]>>a[3]>>a[4]>>a[5]>>a[6]>>a[7]>>a[8])
{
int begin = 0,ready = 0;
while(1)
{
if(a[begin]!=0)
break;
begin++;
}
if(begin>8)
{
printf("0/n");
continue;
}
for(int i=begin;i<begin+1;i++)
{
if(i<7){
if(a[i]==1)
printf("x^%d",8-i);
else if(a[i]==-1)
printf("-x^%d",8-i);
else
printf("%dx^%d",a[i],8-i);
}
if(i==7)
{
if(a[7]==1)
printf("x");
else if(a[7]==-1)
printf("-x");
else if(a[7]>1)
printf("%dx",a[7]);
else if(a[7]<-1)
printf("-%dx",-a[7]);
}
if(i==8)
{
if(a[8]>0)
printf("%d",a[8]);
else if(a[8]<0)
printf("-%d",-a[8]);
}
}
for(int i=begin+1;i<7;i++)
{
if(!a[i])
continue;
else if(a[i]==1)
printf(" + x^%d",8-i);
else if(a[i]==-1)
printf(" - x^%d",8-i);
else if(a[i]>1)
printf(" + %dx^%d",a[i],8-i);
else if(a[i]<-1)
printf(" - %dx^%d",-a[i],8-i);
}
if(begin < 7)
if(a[7]==1)
printf(" + x");
else if(a[7]==-1)
printf(" - x");
else if(a[7]>1)
printf(" + %dx",a[7]);
else if(a[7]<-1)
printf(" - %dx",-a[7]);
if(begin<8)
if(a[8]>0)
printf(" + %d",a[8]);
else if(a[8]<0)
printf(" - %d",-a[8]);
printf("/n");
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: