Skip to content

Latest commit

 

History

History
91 lines (75 loc) · 2.69 KB

README.it.md

File metadata and controls

91 lines (75 loc) · 2.69 KB

equation-solver

GitHub go.mod Go version GitHub tag (latest by date) GitHub Go Report Card Go Reference

Un programma che risolverà una qualunque equazione lineare, quadratica e cubica.

Come usare la libreria

  • Scarica il package 'equationsolver':
go get -u github.com/Gabri432/equation-solver
  • Esempio di utilizzo
package main

import (
    "fmt"
    eq "github.com/Gabri432/equation-solver"
)

func main() {
    solution := eq.EvaluateEquation("x^3-4x=5x^2-1")
    fmt.Println("real solutions: ", solution.RealSolutions, "\ncomplex solutions:", solution.ComplexSolutions)
    myPolynom := eq.Polynom{A: 1, B: 5, C: -4, D: 1}
    fmt.Println(myPolynom.SolveEquation())
}

=== Output ===

real solutions: [-0.8752..., 0.2013..., 5.6739...]

complex solutions: []

{[0.38196... 2.61803...] [] }

Funzioni

EvaluateEquations(equation string) EquationSolution
  • Prende l'equazione in forma di stringa e ritorna il risultato di tipo EquationSolution
ValidateEquation(equation string) string
  • Controlla se l'equazione inserita dall'utente è valida.

Tipi

Polynom

// Crea un polinomio nella forma: ax^3+bx^2+cx+d
type Polynom struct {
	a float64
	b float64
	c float64
	d float64
}

EquationSolution

type EquationSolution struct {
	realSolutions    []float64    // insieme di soluzioni reali
	complexSolutions []complex128 // insieme di soluzioni complesse
	errorDescription string       // messaggio d'errore

Struttura del progetto

  • (main)
    • equation.go
    • equation_test.go
    • internal_functions.go
    • internal_functions_test.go
    • license
    • README.md
    • README.it.md
    • .github
      • CONTRIBUTING.it.md
      • CONTRIBUTING.md

Contribuire al progetto

Note aggiuntive