Tablica jako plansza do gry

0

zakładając, że mam tablice [x][y] to myślałem, że x to wiersze, a y to kolumny, jednak tutaj jest to na odwrót, może ktoś mi to wyjaśnić? :

#include <iostream>
#include <cstdlib>
#include <new>

using namespace std;

int main()
{
    int aktualnaPlansza[3][3];
    for(int i = 0; i < 3; ++i)
    {
        for(int j = 0; j < 3; j++)
        {
            aktualnaPlansza[i][j] = i+j;
        }
    }

   string przerywnik = "   -------------";
        cout << endl << przerywnik << endl;
        for (int i = 0; i < 3; i++)
        {
            cout	 << " " << i + 1 << " | "
			<< aktualnaPlansza[0][i] << " | "
			<< aktualnaPlansza[1][i] << " | "
			<< aktualnaPlansza[2][i] << " |";
            cout << endl << przerywnik << endl;
        }
        cout << "     1 | 2 | 3 " << endl << endl;

   return 0;
}
1

Nie zagłebiając się w kod - x i y to współrzędne, więc określanie nimi kolumny to dokładnie odwrotność tego co twierdzisz:
user image

Punkty spełniające warunek x == 4:

1 2 3 4 5 6 7 8
- - - - - - - - >
|     x
|     x
|     x
|     x
|     x
|     x

Jak widzisz tworzą kolumnę.

0

tablica[2][4] to tak jakby 2 kolumna i 4 wiersz ?

0

@Świetny Pomidor12 Jeśli przyjmiesz, że pierwsze to kolumny, to tak - wszystko zależy od tego co przyjmiesz, aczkolwiek polecam własnie taka kolejność w tym przypadku, nawet mimo, że w C++ obowiązuje tzw row-major - lepiej modeluje to rzeczywistość w tym przypadku.

6

Absolutnie nie zgadzam się z @Maciej Cąderek. Naturalnym porządkiem jest:
tablica [numer wiersza] [numer kolumny]
Nie wprowadzaj innego porządku, bo każdy (no prawie każdy jak widać na podstawie tego tematu) będzie oczekiwał porządku jak wyżej.

Taki porządek jest naturalny, Maciej wyciągnął przykład z osiami współrzędnych, ale ja wyciągnę lepszy - macierze. Numeracja element [nr wiersz, nr kolumny], wszystkie wzory matematyczne operują na tej konwencji.

0
szarotka napisał(a):

wszystkie wzory matematyczne operują na tej konwencji.

Serio?
https://en.wikipedia.org/wiki/Cartesian_coordinate_system

Nie wiem czy przykład z macierzami jest lepszy, skoro tu potrzebna geometria analityczna.

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