An interactive Windows Forms app to compute polynomial roots and critical points using numeric methods.
Designed for fast experimentation with cubic polynomials in a custom interval. ๐ฌ๐
This project solves polynomial-related tasks through a desktop UI:
- Finds zeros of a polynomial in a given interval using a Bisection-based search ๐
- Finds critical points by analyzing the first derivative ๐
- Classifies critical points as Max / Min / Const ๐งญ
The app currently works with 4 coefficients, which corresponds to a cubic polynomial:
- Numeric polynomial evaluation engine (
Evaluate) ๐ง - Root detection with interval validation (
Bolzano) โ - Recursive bisection search (
Bisection) โป๏ธ - Input validation and visual error feedback in the UI ๐๏ธ
- Automatic derivative generation for first-order analysis (
GetFirstOrder) ๐งช
- Language: C# ๐ป
- Framework: .NET 8 (
net8.0-windows) ๐งฑ - UI: Windows Forms ๐ช
- Solution Type: Desktop app (
WinExe) ๐ฆ
.
โโโ Ceros Polinomios.sln
โโโ Ceros Polinomios/
โ โโโ Ceros Polinomios.csproj
โ โโโ Program.cs
โ โโโ Form1.cs
โ โโโ Form1.Designer.cs
โ โโโ Form1.resx
โ โโโ Properties/
โ โ โโโ Resources.Designer.cs
โ โ โโโ Resources.resx
โ โโโ Resources/
โ โโโ bin/
โ โโโ obj/
โโโ .vs/ (ignored)
- Program.cs: Application entry point and form bootstrap (
Application.Run(new Form1())). - Form1.cs: Core logic for polynomial evaluation, bisection, validation, and UI event handling.
- Form1.Designer.cs: Auto-generated layout and control definitions.
- Ceros Polinomios.csproj: Project configuration, target framework, WinForms activation.
- User enters polynomial coefficients and an interval. ๐งพ
- App validates all fields before running calculations. ๐ก๏ธ
- Bisection process searches for sign changes to detect roots. ๐
- First derivative is computed and analyzed to get critical points. ๐
- Results are printed in the interface labels. ๐ฅ๏ธ
- Windows 10/11
- .NET 8 SDK
- Optional: Visual Studio 2022 (for GUI development)
- Open the solution file:
Ceros Polinomios.sln - Set startup project to
Ceros Polinomios - Press
F5(or click Start) to run
From the repository root:
dotnet restore "Ceros Polinomios.sln"
dotnet build "Ceros Polinomios.sln" -c Debug
dotnet run --project "Ceros Polinomios/Ceros Polinomios.csproj"- Enter the 4 polynomial coefficients.
- Enter interval start and end values.
- Click the calculate button.
- Check:
- Polynomial roots
- Derivative critical points
- Max/Min classification
- This is a numerical approach, so precision depends on interval width and tolerance. ๐ฏ
- Inputs are integer-like in current validation logic (digits and optional
-). - Auto-generated folders (
bin,obj) are build artifacts. ๐งช
Built with C#, numerical methods, and a lot of math energy. โ๏ธ๐๐ฅ