Jak czyścić wybrane elementy tablicy ?

0

Jak czyścić wybrane elementy tablicy ? Do tej pory używałem

system("cls")

.

0

przeciez to czysci ekran konsoli a nie tablicy...

przeiteruj po niej z warunkiem i wpisz tam co potrzebujesz i bedzie "czysta"

0

Próbuje stworzyć snake i chcę tylko te elementy tablicy czyścić w którym jest snake.

0

Utwórz dodatkowy wymiar tablicy, w którym będziesz trzymać już przebytą ścieżkę przez Twojego węża. Teraz w zależności od zjedzonych ciastek usuwasz z tablicy podstawowej coraz mniej punktów za ogonem, których współrzędne bierzesz z dodatkowego wymiaru. (co skutkuje tym, że wąż jest coraz dłuższy w miarę zjadania ciastek).

Podejrzewam, że masz tablicę dwuwymiarową więc dołóż do niej trzeci wymiar z taką "historią" ruchów węża.

0

Przy każdym ruchu węża czyszczę ekran. Plansza to dwuwymiarowa tablica. Chciałbym tylko czyścić to miejsce w planszy gdzie jest wąż i aby plansza nie była rysowana od nowa,tylko te miejsca w której będzie wąż.

0

Obawiam się, że tak się nie da zrobić za pomocą czystej konsoli. Raz narysowany znak na ekranie konsoli nie może zostać zmieniony na tej samej pozycji na inny. Musi być odświeżona cała konsola więc cały 'obraz gry' musi zostać narysowany od nowa. To takie trochę symulowanie odświeżania ekranu telewizora kineskopowego. No chyba, że użyjesz jakichś innych bibliotek niż standardowej. Bibliotek, które są napisane do obsługi nazwijmy to: 'grafiki w konsoli'. Ncurses etc...

1

Nie macie w tym C++ odpowiednika Pascalowskiej procedury GotoXY?

Pytaczowi chodzi właśnie o to, że potrzebuje umieścić w odpowiednim miejscu konsoli kursor i wyświetlić tam inny znak, aby nie czyścić cały czas całej konsoli i wszystkiego malować od nowa; W sumie to się chwali, bo to mocno ukróci czas bazgrania po ekranie, a to kosztowne operacje;

Edit: w WinAPI istnieje funkcja SetConsoleCursorPosition jakby co.

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