1590 - 三角形相加

写一个CTriangle 类,要求可以接受CTriangle(y,x)形式的构造表示含义如下:

A(0,y) B(0,0) C(x,0)

要求能够处理若干个三角形的相加(点B保持不变,两直角边相加)。

题目输入

输入有若干行,每行两个数yx,读到0表示结束。

题目输出

输出一行表示三点坐标,格式参见样例。

输入/输出样例

题目输入

10 20
1 31
0

题目输出

A(0,11),B(0,0),C(51,0)

C语言解答

#include<stdio.h>
int main()
{
	int a[100],b[100],i=1,j,num=1,ra=0,rb=0,ta=0,tb=0;
      while(num!=0)
	  {
		  scanf("%d",&num);
		  j=i%2;
          if(j!=0)
		  {
             a[ra]=num;
			 ra++;
		  }
		  else
		  {
			  b[rb]=num;
			  rb++;
		  }
		  i++;
	  }
	  for(i=0;i<ra;i++)
	  {
         ta=ta+a[i];
	  }
	  for(i=0;i<rb;i++)
	  {
		  tb=tb+b[i];
	  }
	  printf("A(0,%d),B(0,0),C(%d,0)\n",ta,tb);
	return 0;
}

C++解答

#include <cstdio>
#include <cstring>

int f[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int main() {
    //freopen("test.in", "r", stdin);
    //freopen("test.out", "w", stdout);
    int x, y;
    int a = 0, b = 0;
    while (scanf("%d %d", &x, &y)) {
        if (0 == x) break;
        a += x;
        b += y;
    }
    printf("A(0,%d),B(0,0),C(%d,0)\n", a, b);
    return 0;
}

时间限制 1 秒
内存限制 32 MB
讨论 统计
上一题 下一题