Rysunek pustego trójkąta

0

Musze narysowac taki trójkąt w c++, zrobilem sobie szkic pomoczniczy:

Nie ogarniam czemu nie działa, powinno rysować na podanych pkt'ach. Co robię źle?
row+col

1+3=4
2+2=4
3+1=4

i
col-row

3-1=2
4-2=2
5-2=2
  int n = 5;

  for(int rows = 0; rows<(n+1)/2; rows++) {
    for(int cols = 0; cols<n; cols++){
      if(rows == (n+1)/2 || rows+cols==4 || cols-rows == 2) {
        cout << "*";
      } else {
        cout << " ";
      }
    }
    cout << endl;
  }
0

Na pewno brakuje Ci n++;

Jak zrobisz cols-1 == 2. to wyjdzie Ci żyrafa.

0

Dobra moja głupota, zaczynałem count od 0 zamiast 1.

1

Przekombinowane, bałaganiarsko, nie będzie poprawnie działać dla innych wartości n.

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
	for(int n=1;n<7;++n,cout<<endl)
	{
		for(int y=0;y<n;++y,cout<<endl) for(int x=1-n;x<n;++x) cout<<" *"[(y==abs(x))||(y+1==n)];
	}
	return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1