Previous Page  7 / 25 Next Page
Information
Show Menu
Previous Page 7 / 25 Next Page
Page Background

А.Ф. Деон, Ю.А. Меняев

92

ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2017. № 2

k++;

Console.Write ( "k = {0,4} ", k );

qWrite ( "x = ", x, N, true );

}

}

MatrixCheck ( MS, M, N, 1 ); // проверка совпадений

Console.WriteLine ( "Matrix of unique sequences" );

MatrixWrite ( MS, M, N ); // монитор матрицы

Console.ReadKey(); // просмотр результат

}

//------------------------------------------------------

static void MatrixAdd ( int[,] MS, ref int M,

int[] x, int N, int a, int c )

{ for ( int j = 0; j < N; j++ ) MS[M, j] = x[j];

MS[M, N] = 0; // номер совпадения

MS[M, N + 1] = a; // параметр a

MS[M, N + 2] = c; // параметр c

M++; // количество последовательностей в матрице

}

//------------------------------------------------------

static void MatrixCheck ( int[,] MS, int M,

int N, int bMS )

{ for ( int i = bMS; i < M; i++ )

for ( uint k = 0; k < i; k++ )

{ uint j = 0;

for ( ; j < N; j++ )

if ( MS[i, j] != MS[k, j] ) break;

if ( j == N ) // совпадение есть

{ MS[i, N] = k + 1; // номер совпадения

break;

}

}

}

//-----------------------------------------------------

static void MatrixWrite ( int[,] MS, int M, int N )

{ for ( int i = 0; i < M; i++ )

{ Console.Write ( "i = {0,5} |", i + 1 );

for ( int j = 0; j < N; j++ )

Console.Write ( "{0,3}", MS[i, j] );

Console.Write ( " | " );

Console.Write ( "{0,3}", MS[i, N] );

Console.Write ( "{0,5}", MS[i, N + 1] );

Console.WriteLine ( "{0,5}", MS[i, N + 2] );

}

}

После выполнения этой программы на мониторе появляется следующий

листинг, который приведен с некоторыми сокращениями — прочерк на месте

пропущенных строк. Общее число последовательностей, сгенерированных по

конгруэнтной и вихревой технологиям, составляет 7 ∙ 24 = 168. Каждая содер-

жит 8 различных чисел. Эти последовательности были занесены в матрицу

MS

последовательно. Вторая часть листинга представляет собой результат провер-

ки. Если строка содержит нуль в первом дополнительном элементе, то это озна-