import React, { useState } from 'react'; const PolynomialBehaviorWidget: React.FC = () => { const [degreeType, setDegreeType] = useState<'even' | 'odd'>('odd'); const [lcSign, setLcSign] = useState<'pos' | 'neg'>('pos'); // Visualization const width = 300; const height = 200; const getPath = () => { // Create schematic shapes // Odd +: Low Left -> High Right // Odd -: High Left -> Low Right // Even +: High Left -> High Right // Even -: Low Left -> Low Right const startY = (degreeType === 'odd' && lcSign === 'pos') || (degreeType === 'even' && lcSign === 'neg') ? 180 : 20; const endY = (lcSign === 'pos') ? 20 : 180; // Control points for curvy polynomial look const cp1Y = startY === 20 ? 150 : 50; const cp2Y = endY === 20 ? 150 : 50; return `M 20 ${startY} C 100 ${cp1Y}, 200 ${cp2Y}, 280 ${endY}`; }; return (

Degree (Highest Power)

Leading Coefficient

End Behavior
{degreeType === 'even' && lcSign === 'pos' && "Ends go in the SAME direction (UP)."} {degreeType === 'even' && lcSign === 'neg' && "Ends go in the SAME direction (DOWN)."} {degreeType === 'odd' && lcSign === 'pos' && "Ends go in OPPOSITE directions (Down Left, Up Right)."} {degreeType === 'odd' && lcSign === 'neg' && "Ends go in OPPOSITE directions (Up Left, Down Right)."}
); }; export default PolynomialBehaviorWidget;