public void Parse() { int minRow = 0; int maxRow = MAX_ROWS; int minColumn = 0; int maxColumn = MAX_COLUMNS; foreach (SeatDirection direction in SeatDirections) { switch (direction) { case SeatDirection.Front: maxRow = (int)Math.Floor(IntUtils.Avg(minRow, maxRow)); break; case SeatDirection.Back: minRow = (int)Math.Ceiling(IntUtils.Avg(minRow, maxRow)) + 1; break; case SeatDirection.Left: maxColumn = (int)Math.Floor(IntUtils.Avg(minColumn, maxColumn)); break; case SeatDirection.Right: minColumn = (int)Math.Ceiling(IntUtils.Avg(minColumn, maxColumn)) + 1; break; } } Row = minRow; Column = minColumn; }