Ввод только нечетных чисел в консоль

Нужно чтобы вся матрица состояла только из нечетных чисел. Как это реализовать?

namespace consolMatrix
{
    class Program
    {
        static Tuple<int, int> MatrixSize()
        {
            int N, M;

            Console.WriteLine("Введите размерность матрицы в виде NxM:");
            string input = Console.ReadLine();

            while (!input.Contains('x'))
            {
                Console.WriteLine("Неправильно введена размерность! Формат ввода - NxM: ");
                input = Console.ReadLine();
            }

            string[] inputSplit = input.Split('x');

            N = int.Parse(inputSplit[0]);
            M = int.Parse(inputSplit[1]);

            return Tuple.Create(N, M);
        }
        static float[,] FormMatrix(Tuple<int, int> MatrixSize) // формируем список слов
        {
            float[,] matrix = new float[MatrixSize.Item1, MatrixSize.Item2];

            for (int i = 0; i < MatrixSize.Item1; i++)
            {
                Console.WriteLine("Введите {0} строку, вводя элементы через пробел:", i + 1);
                string input = Console.ReadLine();

                string[] inputSplit = input.Split(' ');

                while (inputSplit.Length > MatrixSize.Item2)
                {
                    Console.WriteLine("Вы ввели слишком много символов! Введите корректное количество:");
                    input = Console.ReadLine();
                    inputSplit = input.Split(' ');
                }

                for (int j = 0; j < MatrixSize.Item2; j++)
                {
                    matrix[i, j] = float.Parse(inputSplit[j]);
                }
            }

            return matrix;

        }

        static void PrintMatrix(float[,] matrix)
        {
            int N = matrix.GetLength(0);
            int M = matrix.GetLength(1);

            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < M; j++) Console.Write("{0} ", matrix[i, j]);
                Console.WriteLine();
            }
        }

        static float[,] MatrixSum(float[,] matrix1, float[,] matrix2)
        {
            if ((matrix1.GetLength(0) == matrix2.GetLength(0)) & (matrix1.GetLength(1) == matrix2.GetLength(1)))
            {
                float[,] sumMatrix = new float[matrix1.GetLength(0), matrix1.GetLength(1)];

                for (int i = 0; i < matrix1.GetLength(0); i++)
                {
                    for (int j = 0; j < matrix1.GetLength(1); j++) sumMatrix[i, j] = matrix1[i, j] + matrix2[i, j];
                }

                return sumMatrix;
            }

            else
            {
                Console.WriteLine("Матрицы не могут быть сложены - отличается их размерность.");
                return matrix1;
            }

        }

        static void Main(string[] args)
        {
            Tuple<int, int> Matrix1_Size = MatrixSize();
            Tuple<int, int> Matrix2_Size = MatrixSize();

            float[,] matrix1 = FormMatrix(Matrix1_Size);
            float[,] matrix2 = FormMatrix(Matrix2_Size);

            PrintMatrix(matrix1);
            PrintMatrix(matrix2);

            float[,] matrix3 = MatrixSum(matrix1, matrix2);
            PrintMatrix(matrix3);

            Console.WriteLine();

            Console.WriteLine("Нажмите любую клавишу для выхода из программы");
            Console.Read();
        }
    }
}

Ответы (0 шт):