Problem z funkcją gotoxy.

0

Witam mam problem z tym programem. Ten program powinien tworzyć trójkąt podstawą do góry o podstawie 19 gwiazdek. Później 17,15 i tak dalej do 1. Gdzie tutaj jest błąd?

#include <iostream>
#include <windows.h>

using namespace std;
int y,g;
void gotoxy(int x, int y)
{
    COORD kursor;
    kursor.X = x-1;
    kursor.Y = y-1;
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),kursor);
}

main()
{
  for(y=1; y<=10; y++)
  {
      gotoxy (41-y,y);
      for(g=19; g>=21-2*y; y--)
      {
          cout << "*";
      }
  }

    return(0);
}
1

Najpierw popraw to:

for(g=19; g>=21-2*y; y--)
0

@rajszym: A co mam tam zrobić. Możesz wyjaśnic?

0

@rajszym: Racja

0

@Qbek1212: Zamieniłem tego y na g ale nadal nie robi tak, że podstawa jest u góry

0

@Qbek1212: Nie umie znaleźć tych współżednych niestety

0

@Qbek1212: Narysuj sobie ten trójkąt na kartce papieru w kratkę i oznacz współrzędne. Potem przenieś to do programu.

0

@rajszym: wyszło mi,że x=39+y i nadal nie działa :(

0
  1. W pierwszej pętli iterujesz po kolejnych liniach trójkąta (zmienna y) i tu jest ok.
  2. Ustawiasz kursor na odpowiedniej pozycji
  3. Wypisujesz odpowiednią ilość gwiazdek

Przeanalizuj pkt 2 i 3

0

@rajszym: Dzięki

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