## Problem Description and Formulation

The problem described is a linear programming (LP) optimization problem. The goal is to maximize profit by determining the optimal number of keyboards and PC controllers to stock, given certain constraints.

### Decision Variables

- \(K\): The number of keyboards to stock.
- \(C\): The number of PC controllers to stock.

### Objective Function

The objective is to maximize profit. Given that the profit per keyboard sold is $20 and per PC controller sold is $10, the objective function can be formulated as:

\[ \text{Maximize:} \quad 20K + 10C \]

### Constraints

1. **Floor Space Constraint**: A keyboard requires 12 sq ft and a PC controller requires 4 sq ft of floor space. The store has 200 sq ft available.

\[ 12K + 4C \leq 200 \]

2. **Product Mix Constraint**: At least 35% of all items in stock must be PC controllers.

\[ C \geq 0.35(K + C) \]

Simplifying:

\[ 0.65C \geq 0.35K \]

\[ -0.35K + 0.65C \geq 0 \]

3. **Capital Constraint**: A keyboard ties up $200 and a PC controller ties up $150 in capital. The store wants to have a maximum of $5,000 worth of capital tied up.

\[ 200K + 150C \leq 5000 \]

4. **Non-Negativity Constraints**: The number of keyboards and PC controllers cannot be negative.

\[ K \geq 0, C \geq 0 \]

## Gurobi Code

```python
import gurobi

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

    # Define variables
    K = model.addVar(lb=0, name="Keyboards")  # Number of keyboards
    C = model.addVar(lb=0, name="Controllers")  # Number of PC controllers

    # Objective function: Maximize profit
    model.setObjective(20*K + 10*C, gurobi.GRB.MAXIMIZE)

    # Constraints
    model.addConstr(12*K + 4*C <= 200, name="FloorSpace")  # Floor space constraint
    model.addConstr(-0.35*K + 0.65*C >= 0, name="ProductMix")  # Product mix constraint
    model.addConstr(200*K + 150*C <= 5000, name="Capital")  # Capital constraint

    # Solve the model
    model.optimize()

    # Print solution
    if model.status == gurobi.GRB.OPTIMAL:
        print(f"Optimal solution found. Keyboards: {K.varValue}, Controllers: {C.varValue}, Profit: ${20*K.varValue + 10*C.varValue}")
    else:
        print("No optimal solution found.")

solve_theta_electronics_problem()
```