You can do it with just two loops, if you can fill in the blanks in the following:
Code:
int limit=4;

for (int row=??; ??; ??)
{
  int numStars=??;
  for (int i=??; ??; ??)
  {
    cout<<"*";
  }
  cout<<endl;
}
So the way ahead is to find appropriate values for ??.
Essentially this depends on calculating numStars from row and limit so that numStars has the values 1,2,3,4,3,2,1. Ideally what you should aim at is to figure out the row for-loop and numStars expression to work off any limit value, so you could just change limit to 8 (and make no other changes) to get the size-8 half diamond, i.e. 1,2,3,4,5,6,7,8,7,6,5,4,3,2,1.