Jak dla mnie cały ten kod to zagadka,nawet ciężko powiedzieć do czego miałby służyć. Po co w metodzie MACIERZ deklarujesz Random r, skoro w ogóle tego nie używasz? Czemu ma ma służyć zamiana zmiennych dol i gora (notabene: też nigdzie nie wykorzystywanych?)? Pętla for (int i = 0; i < k; i++) nie wykona się ani razu, bo nieco wyżej deklarujesz k = 0 której, jakże by inaczej, później nigdzie nie zmieniasz? Nigdzie w kodzie nie wpisujesz niczego do tablicy "tablica", więc masz w niej same zera. Może ta metoda miała wypełniać tablice losowymi liczbami? Jednym słowem - w tej chwili ten "program" wygląda na zlepek przypadkowych fragmentów kodu które tak naprawdę nic nie robią.
PS. Tablice w C#, jak i większości innych języków, indeksuje się od 0, więc pętle for... wypisujące elementy tablicy też powinny startować od 0, nie od 1.
Przy wypisywaniu nie używaj WiteLine() dla każdego elementu, tylko Write(), a WriteLine() używając najwyżej przy przejściu do następnego wiersza.