Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсач / Poyasnitelnaya_zapiska (2).docx
Скачиваний:
33
Добавлен:
13.02.2016
Размер:
179.35 Кб
Скачать

Раздел 5. Схемы алгоритмов

Метод «Main»

Рисунок 1- Метод «Main

Метод «numberOfColumnsWithZeroElement»

Рисунок 2 - Метод «numberOfColumnsWithZeroElement»

Метод «numberOfLineSameElement»

Рисунок 3- Метод «numberOfLineSameElement»

Метод «randomlyfillingmatrix»

Рисунок 4 - Метод «randomlyfillingmatrix»

Метод «izfail»

Рисунок 5 - Метод «izfail»

РАЗДЕЛ 6. ТЕКСТ ПРОГРАММЫ

Листинг 1 метод «Main» [1]

Console.WriteLine("Выберите способ заполнения матрицы: ");

Console.WriteLine("1-случайными числами");

Console.WriteLine("2-из файла");

int b = int.Parse(Console.ReadLine());

StreamWriter a = new StreamWriter(@"E:\rezultat.txt");

if (b == 1)

{

Console.WriteLine("введите кол-во строк");

int n = int.Parse(Console.ReadLine());

Console.WriteLine("введите кол-во столбцов");

int m = int.Parse(Console.ReadLine());

int[,] mass = randomlyfillingmatrix(n, m);

a.WriteLine("количество столбцов, содержащих нулевой элемент {0}", numberOfColumnsWithZeroElement(mass));

int maxEqual = 0;

int row = -1;

numberOfLineSameElement(mass, ref row, ref maxEqual);

if (row > 0)

a.WriteLine("Найдена наибольшая серия из {0} элементов в строке № {1}", maxEqual, row);

else a.WriteLine("Серий одинаковых элементов в строках не найдено");

}

if (b == 2)

{

const string doc = @"E:\matrixfile.txt";

int[,] mass = izfail(doc);

a.WriteLine("количество столбцов, содержащих нулевой элемент {0}", numberOfColumnsWithZeroElement(mass));

int maxEqual = 0;

int row = -1;

numberOfLineSameElement(mass, ref row, ref maxEqual);

if (row > 0)

a.WriteLine("Найдена наибольшая серия из {0} элементов в строке № {1}", maxEqual, row);

else a.WriteLine("Серий одинаковых элементов в строках не найдено");

}

a.Close();

Листинг 2 метод “numberOfColumnsWithZeroElement” [2]

int Count = 0;

int result = 0;

for (int i = 0; i < mass.GetLength(1); i++)

{

for (int j = 0; j < mass.GetLength(0); j++)

{

if (mass[j, i] == 0)

{

Count++;

}

}

if (Count > 0)

result++;

Count = 0;

}

return result;

Листинг 3 метод “numberOfLineSameElement” [3]

for (int i = 0; i < mass.GetLength(0); i++)

{

int tmpEqual = 1, currEqual = 1;

for (int j = 0; j < mass.GetLength(1) - 1; j++)

{

if (mass[i, j] == mass[i, j + 1])

tmpEqual++;

else tmpEqual = 1;

if (tmpEqual > currEqual)

currEqual = tmpEqual;

}

if (currEqual > maxEqual && currEqual > 1)

{

maxEqual = currEqual; row = i + 1;

}

}

Соседние файлы в папке курсач