Equazioni lineari

Le equazioni lineari sono una forma base di equazioni matematiche che si verificano in molte applicazioni diverse. Descrivono una relazione tra variabili che sono collegate linearmente tra loro. Un’equazione lineare di solito assume la forma:

ascia + b = c

Ecco i componenti principali di un’equazione lineare:

  1. Variabili (‚x‘): Questo è il valore sconosciuto che vuoi scoprire. È la variabile che viene ricercata nell’equazione.
  2. Coefficienti (‚a‘ e ‚b‘): Questi sono numeri ben noti che descrivono la relazione lineare tra la variabile ‚x‘ e il valore costante ‚c‘.
  • Il coefficiente ‚a‘ è il coefficiente della variabile ‚x‘. Mostra quanto ‚x‘ cambia quando ‚x‘ cambia di 1.
  • Il coefficiente ‚b‘ è un termine costante che rappresenta l’intersezione della funzione lineare con l’asse y. È il valore di ‚x‘ se ‚x‘ è uguale a zero.
  1. Costante (‚c‘): Questo è il valore noto a cui il lato sinistro dell’equazione dovrebbe essere uguale.

L’obiettivo di risolvere un’equazione lineare è trovare il valore della variabile ‚x‘ che rende vera l’equazione. In altre parole, stai cercando il valore di „x“ che soddisfi l’equazione „ax + b = c“.

Ecco alcuni passaggi di base per risolvere un’equazione lineare:

  1. Isolare la variabile ‚x‘ Provare a isolare la variabile ‚x‘ su un lato dell’equazione utilizzando operazioni matematiche per semplificare l’equazione. L’obiettivo è quello di avere ‚x‘ da solo su un lato dell’equazione.
  2. Calcolo del valore di ‚x‘: Dopo l’equazione nella forma ‚x = …‘ Calcola il valore di ‚x‘.
  3. Verifica della soluzione: inserisci il valore calcolato di „x“ nell’equazione originale per assicurarti che sia vero.

Esempio:

Supponiamo di avere l’equazione ‚2x + 3 = 7‘. Per isolare ‚x‘, sottraiamo prima 3 da entrambi i lati dell’equazione:

2x + 3 – 3 = 7 – 3
2x = 4

Ora dividiamo entrambi i lati dell’equazione per 2 per isolare ‚x‘:

(2x)/2 = 4/2
x = 2

La soluzione dell’equazione è ‚x = 2‘, e se inseriamo questa soluzione nell’equazione originale (‚2 * 2 + 3 = 7‘), otteniamo ‚4 + 3 = 7‘, che è vero. Pertanto, ‚x = 2‘ è la soluzione corretta.

Può sembrare un po ‚complicato convertirlo in un programma, ma non lo è. Il modo più semplice è semplicemente risolvere l’equazione numericamente, cioè inseriamo semplicemente i valori per x e lo facciamo fino a quando l’equazione non è corretta.
Il tutto non è molto efficiente e può essere un po ’noioso, specialmente con grandi valori.
Un’altra sfida è la cosiddetta analisi della formula. Il computer non fa nulla con ‚4x+6=10‘ – è solo una stringa per questo. Dobbiamo scomporre la formula in modo da poterla rendere comprensibile per un programma.
Grazie alle numerose librerie di Python e ad un programma pratico per le nostre equazioni lineari, possiamo mantenerlo semplice.
La libreria SymPy è ideale per i nostri scopi.
SymPy è una libreria open source e liberamente disponibile.
SymPy è una potente libreria Python per la matematica simbolica. Offre una raccolta completa di funzionalità e strumenti che consentono di eseguire calcoli matematici in Python a livello simbolico. A differenza della matematica numerica, che calcola i valori, la matematica simbolica consente di manipolare espressioni matematiche, variabili e simboli per risolvere problemi matematici complessi.
Con SymPy, è possibile eseguire una varietà di attività matematiche, tra cui:
Manipolazioni algebriche: semplificazione delle espressioni, fattorizzazione, espansione dei termini e altro.
Risoluzione simbolica di equazioni e disequazioni: SymPy può risolvere equazioni algebriche e trascendenti e semplificare le disuguaglianze.
Derivati e integrazione: calcolo di derivati e integrazioni di espressioni simboliche.
Algebra lineare: lavorare con matrici, determinanti, autovalori e autovettori.
Trigonometria e numeri complessi: SymPy supporta le funzioni trigonometriche, i numeri complessi e le loro operazioni.
Equazioni differenziali: risoluzione di equazioni differenziali ordinarie e alle derivate parziali.
Geometria: SymPy può rappresentare forme e concetti geometrici ed eseguire i calcoli necessari in geometria.
Teoria dei numeri: fattorizzazione di interi e lavoro con i numeri primi.
Ma basta con tutta la teoria, iniziamo a battere sui tasti e scrivere un trainer per le equazioni lineari.
La prima cosa che dobbiamo fare è installare SymPy nel nostro ambiente. Per fare ciò, apriamo il prompt dei comandi e digitiamo
„python -m pip install sympy“
Uno.
Dopo alcuni secondi, viene installato.

Quindi ora possiamo iniziare

import random
import sympy as sp

Importiamo le due librerie di cui abbiamo bisogno. Diamo a Sympy un cosiddetto alias in modo da non avere calli sulle dita.

Successivamente, dobbiamo dichiarare tre variabili (a, b, c) e quindi popolarle con numeri casuali.
Metteremo tutto in un’unica funzione subito

def lineare_gleichung_loesen():
# Eingabe der Gleichung
a =  random.randint(1, 10)
b = random.randint(1, 10)
c = random.randint(1, 10)

print(f"Loese die linearen Gleichung '{a}x + {b} = {c}'")

Per semplicità, prendiamo i numeri da 1 a 10 per a, b e c.
Ad esempio, il programma ora produrrebbe 1x+5=5.
Ora l’utente deve risolvere questa equazione e inserire la risposta.

user_input = input(f"x= ")

Ora dobbiamo insegnare al programma come risolvere l’equazione.
Per fare ciò, dobbiamo usare SymPy per creare l’equazione.

# Crea equazione
x = sp.symbols(‚x‘)
Equazione = sp. Eq(a*x+b,c)

È stato facile, no?
Ora lasciamo che SymPy risolva l’equazione.

# Risolvi equazione
Soluzione = sp.solve(equazione; x)

Così ora il nostro piccolo trainer è pronto
Tutto il programma

import random
from fractions import Fraction
import sympy as sp

def lineare_gleichung_loesen():
    # Eingabe der Gleichung
    
    a =  random.randint(1, 10)
    b = random.randint(1, 10)
    c = random.randint(1, 10)

    print(f"Loese die linearen Gleichung '{a}x + {b} = {c}'")
    
    user_input = input(f"x= ")
    
    # Gleichung erstellen
    x = sp.symbols('x')
    gleichung = sp.Eq(a * x + b, c)

    # Gleichung lösen
    loesung = sp.solve(gleichung, x)
    
    # Ergebnis ausgeben
    print(f"Die Loesung der Gleichung {a}x + {b} = {c} ist x =", loesung)
    if float(Fraction(user_input)) == float(loesung[0]):
        print("RICHTIG!!");
    else:
        print ("Leider falsch!");
    

if __name__ == "__main__":
    while True:
        lineare_gleichung_loesen()
        weitermachen = input("Willst du eine weitere Gleichung loesen? (Ja/Nein): ").lower()
        if weitermachen != "ja":
            break

Il codice sorgente può essere visualizzato o scaricato da gpiwonka/Linear Equations (github.com).