The attached shows the profit in dollars for different combinations of orders (bought) and sales (sold). We assume that every left-over shirt is sold at half price ($6).
The number that goes in each cell of the table is ...
... profit = ($12 - cost per shirt)×(number sold) - (cost per shirt - $6)×(number unsold)
where ...
... "number sold" = min(number ordered, demand)
... "number unsold" = number ordered - number sold
_____
Comment on the table
Based on this table, I'd be inclined to order 200 shirts, as the profit is highest for all but the greatest and least demand, and there is never an actual loss. Of course, an order of 100 shirts guarantees a profit, so that may be preferred under some circumstances.