思路:将每个点看成坐标,从上到下建立坐标系,寻找x,y间的对应关系作为打印‘*’的判断条件
C++ 代码
#include<iostream>
#include<algorithm>
using namespace std;
int main ()
{
int n,m;
cin>>m>>n;
int k=n+m-1;
for (int i=n;i>0;i--)
{
for (int j=1;j<=k;j++)
{
if ((i+j>=n+1&&i+j<=n+m)||(i-j<1&&i-j>=-m+1))cout <<'*';
else cout <<'.';
}
cout <<endl ;
}
}