• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Atak Figur, Szachy C++

VPS Starter Arubacloud
0 głosów
1,222 wizyt
pytanie zadane 16 stycznia 2021 w C i C++ przez lowprogramer Nowicjusz (120 p.)
zmienione kategorie 16 stycznia 2021 przez ScriptyChris

Prosze o pomoc w napisaniu tego tego kodu, jestem na bardzo podstawowym poziomie c++
Szachownica po której porusząją się figury w szachach ma rozmiar 8 x 8 pol.
Zgodnie z regułami gry w szachy, każda figura może atakować figury i pionki przeciwnika zgodnie z regułami ruchu danej figury. Instrukcja poruszania się figur w szachach:
http://www.szachy.szczecin.pl[...]bjects-viewpage-pageid-2.html
Pion to nie figura
Przykład:
Zgodnie z regułami gry w szachy, hetman (królowa) może atakować figury ustawione na polach w kolumnie, wierszu oraz dwóch przekątnych przechodzących przez pole, w którym jest ustawiony. O tych polach mówimy, że są atakowane przez hetmana.
Na rysunku hetman stoi w polu ( 2,6) i atakuje (7+7+6+3) = 23 pola. Zostały one zamalowane kolorem szarym.

NAPISZ PROGRAM KTÓRY:
1 wczyta umiejscowienie danej figury, np 2 6 (kolumna wiersz)
2 wybierze jedną z 5 figur: król, hetman, wieża, skoczek, goniec

3 wypisze ilość atakowanych pól

 

W chwili obecnej zatrzymalem sie po zapytaniu o współrzędne pola, i nie wiem jak nadac figurom mozliwosci ataków, lub zdefiniowac plansze polami, przykladowo pole 1 1 albo pole 8 8

komentarz 16 stycznia 2021 przez SzkolnyAdmin Szeryf (88,580 p.)
przeniesione 16 stycznia 2021 przez ScriptyChris
Pokaż kod, który napisałeś.

1 odpowiedź

0 głosów
odpowiedź 16 stycznia 2021 przez manjaro Nałogowiec (37,390 p.)

Sprawa dość banalna.

Współrzędne sobie zdefiniuj jako

int x,y;

Przyjmij sobie że szachownbica to układ współrzędnych od miejsca (0,0) do miejsca (8,8)

Atakowane pola wyszukujesz poruszając się od początkowych wartości x,y we wszystkich kierunkach dla danej figury, np dla hetmana to będzie 8 kierunków.

Weźmy np kierunek w góre czyli wartość x się nie zmienia a dla y dodajesz po 1 aż dojdziesz do granicy planszy.

komentarz 16 stycznia 2021 przez SzkolnyAdmin Szeryf (88,580 p.)
Od (1,1), w szachach nie ma pola zerowego.
komentarz 16 stycznia 2021 przez manjaro Nałogowiec (37,390 p.)
No tak racja, moje niedopatrzenie
komentarz 16 stycznia 2021 przez tkz Nałogowiec (42,020 p.)

@SzkolnyAdmin, W szachach również nie ma dwóch pól liczbowych, jest para alfo-numeryczna. Na końcowe rozwiązanie nie ma znaczenia, czy zaczniesz od zera, czy jedynki. 

komentarz 16 stycznia 2021 przez manjaro Nałogowiec (37,390 p.)
No tak ale jak od (0,0) to do (7,7) ;)

A swoją drogą to chyba nie ma sensu udzielać odpowiedzi nonejmowm, szkoda czasu.

Podobne pytania

0 głosów
1 odpowiedź 588 wizyt
pytanie zadane 3 sierpnia 2016 w C i C++ przez Rafał Gardian Początkujący (310 p.)
0 głosów
1 odpowiedź 421 wizyt
pytanie zadane 12 lipca 2020 w JavaScript przez Arcywojak Początkujący (370 p.)

92,975 zapytań

141,938 odpowiedzi

321,181 komentarzy

62,302 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...