关闭

Triangle Wave

450人阅读 评论(0) 收藏 举报
分类:

 

In this problem you are to generate a triangular wave form according to a specified pair of Amplitude and Frequency.


Input and Output

The input begins with a single positive integer on a line by itself indicating the number of the cases following, each of them as described below. This line is followed by a blank line, and there is also a blank line between two consecutive inputs.

Each input set will contain two integers, each on a separate line. The first integer is the Amplitude; the second integer is the Frequency.

For each test case, the output must follow the description below. The outputs of two consecutive cases will be separated by a blank line.

For the output of your program, you will be printing wave forms each separated by a blank line. The total number of wave forms equals the Frequency, and the horizontal ``height'' of each wave equals the Amplitude. The Amplitude will never be greater than nine.

The waveform itself should be filled with integers on each line which indicate the ``height'' of that line.

NOTE: There is a blank line after each separate waveform, excluding the last one.

Sample Input


1

3
2

Sample Output


1
22
333
22
1

1
22
333
22
1

不用看题,直接找规律,最重要注意最后一句话

NOTE: There is a blank line after each separate waveform, excluding the last one.

意思说最后一行不要留空行,这里的最后一行,怎么理解呢,一开始我理解错了,其实它的意思是说,最最后(你懂得)

开头的示例中输出第一个数字,和二三个数字之间有个空行,肿么办?不要在意,其实输入的时候你可以随意加空行的(注意是输入时)。

#include<stdio.h>
#include<math.h>
int main()
{
	int a,b,c,i,j,k,p,n;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d%d",&a,&c);
		for(j=1;j<=c;j++)
		{
			for(k=-a+1;k<a;k++)
			{
				for(p=1;p<=a-abs(k);p++)
					printf("%d",a-abs(k));
				printf("\n");
			}
			if(j!=c||i!=n)
				printf("\n");
		}
	}
	return 0;
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:19448次
    • 积分:584
    • 等级:
    • 排名:千里之外
    • 原创:40篇
    • 转载:2篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论