Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

C++ Operacje na macierzy 8x8

gacek1998 04 Gru 2017 13:07 357 2
  • #1 04 Gru 2017 13:07
    gacek1998
    Poziom 1  

    Witam. Jak w temacie mam kilka pytań co do programu zajmującego sie macierzami rozmiaru 8x8.
    Chciałbym napisać program-szachownice, na której będzie znajdować sie maksymalnie 6 figur (hetman, wieża, goniec).
    Mam tylko problem z zainicjowaniem funkcji do tego programu.
    1. Funkcja drukująca aktualny stan szachownicy
    void drukuj(char t[8][8])
    {
    char tab[8][8];
    int i,j;
    for(i=0;i<8;i++)
    {
    for(j=0;j<8;j++)
    {
    cout <<tab[i][j] << "|";
    }
    cout << endl;
    }
    }
    Chciałbym wprowadzić do tego, że odpowiednie figury(objętne jakie) stoją na polach tab[0][1],tab[0][2],tab[0][3] (lub każdym innym miejscu) jednak nie mam pojęcia jak to zrobić.
    2. funkcja ruchu (chciałem zrobić funkcje bool ruch(char t[8][8], int wiersz, int kolumna, int wiersz2, int kolumna2) żeby sprawdzała czy ruch z wiersza i kolumny jest dozwolony na wiersz2 i kolumna2 (czy stoi tam figura, czy figura moze sie poruszac w ten sposob, na drodze stoją inne figury)
    I do tego nie mam pojęcia jak sie zabrać. Proszę o pomoc.

    0 2
  • #2 04 Gru 2017 16:56
    JacekCz
    Poziom 36  

    Jak na razie to jest C drukujące na cout (i to z błędem)
    Pytanie kontrolne: dlaczego nie jest to tablica obiektów (np klasy Pole)?
    W klasie coś widoczne 'public', coś niepubliczne ...
    Idealne ujęcie jak chcesz dalej coś implementować, np reguły.

    0
  • #3 04 Gru 2017 17:02
    dedito
    Poziom 39  

    Zacznij od formatowania kodu (używaj wcięć w odpowiednich miejscach) ułatwia to analizę kodu.
    Ja proponuję abyś przedstawił kompletny program.
    Macierz char proponuję na początku wypełnić w przykładowym układzie:

    Kod: c
    Zaloguj się, aby zobaczyć kod

    gdzie H, W, G to początkowe pozycje figur a 0 to niezajęte miejsca na szachownicy.
    Potem kwestia stworzenia funkcji ruchu dla poszczególnych figur, które sprawdzą czy ruch jest dozwolony dla wybranego typu figury i czy miejsce nie jest zajęte (czy jest równe 0). Po wykonaniu ruchu jeszcze zerujemy poprzednią pozycję.

    0
  Szukaj w 5mln produktów