文艺复兴(C++)神奇三角形

1.按照题目描述,输出字母三角形
样例输入1

2

样例输出1

   A
BBB

样例输入2

3

样例输出2

      A
   BBB
CCCCC

代码实现:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	int i,n;
	cin >> n;
	for (i = 1;i<=n;i++)
	{
		string space = string(n-i,' ');
		string zimu = string(2*i-1,'A'+i-1);
		cout<<space + zimu <<endl;
	}
    return 0;
}

在这里插入图片描述
总结:
利用了C++string类中的拼接方法,将空格数量和字母数量分别找规律进行计算,然后将结果拼接。

2.这次输出一个稍微复杂的三角形,输入一个大写字母或一个数字会产生不一样的效果。
样例输入1

F

样例输出
在这里插入图片描述
样例输入2

3

样例输出
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	char c;
	cin >> c;
	if(c >= 'A' && c <= 'Z'){
		for (int i = 1;i <= c - 'A' + 1;i++){
			for(int j = 1; j <= c-'A'+1-i;j++){
				cout << " ";
			}
			for(j = 1;j <= i;j++){
				cout << (char)('A' + j - 1);
			}
			for(j = i - 1; j >= 1;j--){
				cout << (char)('A' + j - 1);
			}
			cout << endl;
		}
	}
	else{
		for (int i = 1;i <= c - '1' + 1;i++){
			for(int j = 1; j <= c-'1'+1-i;j++){
				cout << " ";
			}
			for(j = 1;j <= i;j++){
				cout << (char)('1' + j - 1);
			}
			for(j = i - 1; j >= 1;j--){
				cout << (char)('1' + j - 1);
			}
			cout << endl;
		}
	}
	return 0;
}

总结:找规律先将空格输出,然后再按照规律输出字母。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章