# nkurroz/ecuacioncuadratica architecture

> Architecture diagram of the GitHub repository nkurroz/ecuacioncuadratica, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/nkurroz/ecuacioncuadratica
- Repository: https://github.com/nkurroz/ecuacioncuadratica

## Overview

This is a small interactive console calculator for quadratic equations. The user enters coefficients; the program validates them, computes the discriminant, displays real or complex roots according to its value, and asks whether to calculate again. These are conceptual stages within one source file, not separate runtime modules; the graph reflects that inline structure.

Main entry points: [`Program.cs`](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs) (Console program)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_calculator["Quadratic calculator"]
  node_program["Console program<br/>[Program.cs]"]
  node_input["Coefficient input<br/>[Program.cs]"]
  node_discriminant["Discriminant<br/>[Program.cs]"]
  node_roots["Root cases<br/>[Program.cs]"]
  node_repeat["Repeat prompt<br/>[Program.cs]"]
end

node_user(("User"))

node_user -->|"uses calculator"| node_program
node_program -->|"runs input"| node_input
node_input -->|"provides coefficients"| node_discriminant
node_program -->|"computes"| node_discriminant
node_program -->|"selects root case"| node_roots
node_program -->|"asks to continue"| node_repeat
node_user -->|"chooses again"| node_repeat
node_repeat -->|"controls loop"| node_program
node_program -->|"displays results"| node_user

click node_program "https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs"
click node_input "https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs"
click node_discriminant "https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs"
click node_roots "https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs"
click node_repeat "https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_program,node_input,node_discriminant,node_roots,node_repeat,node_user toneBlue
```

## Components

### Quadratic calculator

- [Console program](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs): `Program.cs`
- [Coefficient input](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs): `Program.cs`
- [Discriminant](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs): `Program.cs`
- [Root cases](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs): `Program.cs`
- [Repeat prompt](https://github.com/nkurroz/ecuacioncuadratica/blob/main/Program.cs): `Program.cs`

### Other components

- **User**

## Connections

- User → Console program: uses calculator (evidence: `Program.cs`)
- Console program → Coefficient input: runs input (evidence: `Program.cs`)
- Coefficient input → Discriminant: provides coefficients (evidence: `Program.cs`)
- Console program → Discriminant: computes (evidence: `Program.cs`)
- Console program → Root cases: selects root case (evidence: `Program.cs`)
- Console program → Repeat prompt: asks to continue (evidence: `Program.cs`)
- User → Repeat prompt: chooses again (evidence: `Program.cs`)
- Repeat prompt → Console program: controls loop (evidence: `Program.cs`)
- Console program → User: displays results (evidence: `Program.cs`)
