Problem leży w tym, że wypisujesz tylko jedną kropkę na każdy wiersz. Aby to poprawić, spróbuj tego:
#include <iostream>
#include <string>
int main()
{
std::cout << "Petla zagniezdzona" << std::endl << std::endl;
char k='.', g='*';
int i, ilosc;
std::cout << "Podaj ilosc powtorzen: ";
std::cin >> ilosc;
for (i = 0; i <= ilosc; i++) // teraz petla idzie z dolu w gore!
{
for (int j = ilosc - i; j > 0; j--)
std::cout << k;
for (int x = 0; x < i; x++)
std::cout << g;
std::cout << std::endl;
}
std::cout << std::endl << std::endl;
for (i = ilosc; i >= 0; i--) // teraz petla idzie od gory w dól !
{
for (int j = ilosc - i; j > 0; j--)
std::cout << k;
for (int x = 0; x < i; x++)
std::cout << g;
std::cout << std::endl;
}
std::cin.get();
return 0;
}