## Problem Description and Formulation

The problem involves maximizing the profit of Zeta Monitor by determining the optimal number of LCD and LED monitors to produce daily. The key constraints are:

1. Demand constraints: At least 150 LCD monitors and 80 LED monitors must be produced daily.
2. Production limits: At most 300 LCD monitors and 280 LED monitors can be produced daily.
3. Contract constraint: At least 250 total monitors must be produced daily.
4. Profit per unit: $25 per LCD monitor and $70 per LED monitor.

## Mathematical Formulation

Let's denote:
- \(x\) as the number of LCD monitors produced daily.
- \(y\) as the number of LED monitors produced daily.

The objective function to maximize profit (\(P\)) is:
\[ P = 25x + 70y \]

Subject to:
1. \( x \geq 150 \) (LCD demand constraint)
2. \( y \geq 80 \) (LED demand constraint)
3. \( x \leq 300 \) (LCD production limit)
4. \( y \leq 280 \) (LED production limit)
5. \( x + y \geq 250 \) (total monitors contract constraint)
6. \( x, y \geq 0 \) and are integers (non-negativity and integrality constraints)

However, since Gurobi can handle continuous variables and we are dealing with a large number of units, we will treat \(x\) and \(y\) as continuous variables for simplicity.

## Gurobi Code

```python
import gurobi

def solve_monitor_production():
    # Create a new model
    model = gurobi.Model()

    # Define variables
    x = model.addVar(lb=0, name="LCD_monitors")  # Number of LCD monitors
    y = model.addVar(lb=0, name="LED_monitors")  # Number of LED monitors

    # Objective function: Maximize profit
    model.setObjective(25 * x + 70 * y, gurobi.GRB.MAXIMIZE)

    # Constraints
    model.addConstr(x >= 150, name="LCD_demand")  # LCD demand constraint
    model.addConstr(y >= 80, name="LED_demand")  # LED demand constraint
    model.addConstr(x <= 300, name="LCD_production_limit")  # LCD production limit
    model.addConstr(y <= 280, name="LED_production_limit")  # LED production limit
    model.addConstr(x + y >= 250, name="total_monitors_contract")  # Total monitors contract constraint

    # Optimize
    model.optimize()

    # Print solution
    if model.status == gurobi.GRB.OPTIMAL:
        print(f"Optimal LCD monitors: {x.varValue}")
        print(f"Optimal LED monitors: {y.varValue}")
        print(f"Max Profit: {model.objVal}")
    else:
        print("The model did not find an optimal solution.")

solve_monitor_production()
```