Ошибка элемент не существует в текущем контексте - C#
Формулировка задачи:
Подскажите пожалуйста как исправить, я так понял что нужно еще до Main'а объявить матрицу, но никак не получается все равно
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace laba4
{
class vertical
{
public void Main()
{
Console.WriteLine("Исходник: СНСКЫЕЕОАНОЕЕУАБЧДПНПИТДМ");
var matrix = new char[5, 5];
string input = "СНСКЫЕЕОАНОЕЕУАБЧДПНПИТДМ";
input = input.ToLower();
Console.WriteLine("Матрица:");
for (int i = 0; i < input.Length; i++)
{
matrix[i / 5, i % 5] = input[i];
}
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
Console.Write("{0} ", matrix[j, i]);
}
Console.WriteLine();
}
Console.ReadLine();
}
int Main2()
{
foreach (var transaction in GetTransactions(5))
{
Console.WriteLine("Begin New Transaction");
for (int i = 0; i < 5; i++)
{
StringBuilder sb = new StringBuilder();
for (int j = 0; j < 5; j++)
{
sb.Append(matrix[j, transaction[i]]);
}
Console.WriteLine(sb.ToString());
}
return 0;
}
}
IEnumerable<int[]> GetTransactions(int n)
{
int[] data = new int[n];
for (int i = 0; i < n; i++) data[i] = -1;
return GetTransactions(data, 0);
}
IEnumerable<int[]> GetTransactions(int[] data, int order)
{
if (order == data.Length)
{
yield return data;
}
for (int i = 0; i < data.Length; i++)
{
if (data[i] >= 0) continue;
int[] newData = new int[data.Length];
Array.Copy(data, newData, data.Length);
newData[i] = order;
foreach (var transaction in GetTransactions(newData, order + 1))
{
yield return transaction;
}
}
}Решение задачи: «Ошибка элемент не существует в текущем контексте»
textual
Листинг программы
char [,]matrix;
int Main2()
{
foreach (var transaction in GetTransactions(5))
{
Console.WriteLine("Begin New Transaction");
for (int i = 0; i < 5; i++)
{
StringBuilder sb = new StringBuilder();
for (int j = 0; j < 5; j++)
{
sb.Append(matrix[j, transaction[i]]);
}
Console.WriteLine(sb.ToString());
}
}
return 0;
}