如何用符号*在正方形里面画倒三角形?

如图所示然后输入9的话,会有一个倒三角形在上半部分显示。我只能用for loop尝试画出一个正方形,代码如下
int x;
cout << "Input: ";
cin >> x;
for (int r = 1; r <= x; r++)
{
for (int c = 1; c <= x; c++)

    { 
        if (r == 1 || c == 1 || r == x || c == x)

cout << "*";
else
cout << " ";

img

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    for(int j=0; j<n; j++)
    {
        for(int i=0; i<n; i++)
            if((j==0||i==0||j==n-1||i==n-1)||(j==i&&j<=n/2)||(j+i==n-1&&i>n/2)) cout << "*" ;
            else cout << ' ';
        cout << endl;
    }
    return 0;
}