È possibile imparare la matematica tramite la programmazione, o dovresti imparare la matematica per la programmazione? [chiuso]

10

Non sono il migliore in matematica, neanche molto orribile, ma inferiore alla media, ho sempre pensato di migliorare la mia matematica, ma scuole e libri non hanno funzionato perché mi annoiavo troppo in fretta. L'unica cosa di cui non mi annoio è la codifica e il gioco, quindi ho pensato che se codificare un programma che risolve problemi matematici mi aiuterà a capire meglio la matematica, la maggior parte di questi problemi sono limiti (calcolo), funzioni, calcolo differenziale e alcuni altri argomenti (ho già detto che non sono così buoni) simili al precedente notato.

La mia domanda è: sono in grado di ottenere una migliore conoscenza della matematica se faccio qualche programma specifico di programmazione, e se possibile, anche la fisica è possibile? O mi sbaglio e la matematica dovrebbe essere appresa prima della programmazione per migliorare la mia codifica?

P.S: C ++ è la lingua preferita.

    
posta SAFAD 25.01.2012 - 18:23
fonte

12 risposte

16

Imparerai solo la matematica o la fisica dalla programmazione se usi effettivamente la programmazione per risolvere problemi di matematica e fisica, anche se linguaggi funzionali come Haskell contengono concetti molto "mistici". Suggerirei di visitare un sito web come Kahn Academy o Project Euler . Risolvi i problemi usando il codice e migliorerai contemporaneamente le tue capacità di codifica e le tue abilità matematiche.

    
risposta data 25.01.2012 - 19:20
fonte
5

Ovviamente dovresti imparare la matematica attraverso la programmazione. Se provi a simulare oggetti fisici, dovrai imparare tutti i tipi di fisica e matematica e ti piacerà.

    
risposta data 25.01.2012 - 18:28
fonte
4

Questa è la mia opinione ...

La programmazione aiuterà Test La tua CONOSCENZA

Quando ero al liceo e alle medie, programmavo i miei calcolatori per fare la matematica monotona per me. Alcune persone hanno affermato che si trattava di imbrogli, ma ho sempre sostenuto che non avrei potuto scrivere i programmi se non avessi capito veramente la matematica.

Per esempio, supponiamo di voler creare un piccolo programma per calcolare il valore C, dato A e B, all'interno del teorema di Pitagora. Come lo facciamo? Bene, lo sappiamo:

A^2 + B^2 = C^2

Quindi per risolvere per C, abbiamo:

C = SQRT(A^2 + B^2)

Pertanto, il programma potrebbe essere qualcosa di simile (assumendo intestazioni corrette, questo è un esempio di nudo):

cout << "Enter value for A: " 
cin << valA;
cout << "Enter value for B: "
cin << valB;

float valC = sqrt(pow(valA, 2) + pow(valB, 2))
cout << "C = " << valC << "\n";

TUTTAVIA ...

Dove e in che modo acquisisci tale conoscenza?

Nell'esempio precedente, dovevamo sapere come risolvere per C all'interno dell'equazione A^2 + B^2 = C^2. Se non conoscessimo la radice quadrata su entrambi i lati per trovare C, come potremmo risolvere il problema?

IMO, si riduce a: la programmazione non INSEGNERÀ assolutamente la matematica, ma migliorerà le abilità acquisite.

    
risposta data 25.01.2012 - 20:10
fonte
2

Il libro SICP ha una sezione molto bella sulla matematica. Ma ti suggerirei di provare a prendere algebra lineare, matematica discreta e il Calcolo come minimo, se impari solo dai programmi di scrittura la tua istruzione sarà probabilmente molto profonda, ma non molto ampia.

    
risposta data 25.01.2012 - 19:07
fonte
2

Penso che vadano di pari passo. Un solido fondamento nelle tecniche matematiche aprirà le opzioni di programmazione che altrimenti non avresti, mentre la programmazione può aprire interessanti percorsi di studio matematico.

Recentemente ho iniziato a utilizzare wxMaxima , un bel front-end grafico all'eccellente open source Maxima Computer Algebra System (aka un CAS , come il Maple commerciale o Mathematica sistemi).

Non ti insegnerà nulla di matematica da solo, ma sicuramente renderà il gioco con la matematica più interessante e divertente, che di per sé potrebbe incoraggiarti a saperne di più.

    
risposta data 25.01.2012 - 19:25
fonte
2

Non hai bisogno di molta matematica per "programmare".

Hai bisogno di matematica per "informatica".

Se prevedi di utilizzare soluzioni di libreria preesistenti per tutto, probabilmente non ti interessa come funzionano. Ma se hai intenzione di creare i tuoi algoritmi e le tue strutture dati, dovrai conoscere la matematica, dato che CS è strongmente basato sulla matematica.

    
risposta data 26.01.2012 - 05:32
fonte
1

Se ti interessa lavorare su AI, elaborazione dati, simulazione fisica o grafica, allora hai bisogno di matematica. Al contrario, se non lo sei, allora penso che tu non lo faccia. È un caso di usarlo o di perderlo, perché imparare il francese se non vuoi vivere in Francia? Esistono molti domini problematici che richiedono solo la logica condizionale.

Detto questo, c'è una inclinazione naturale nella programmazione verso la matematica, e non ti farà nulla se non altro per comprenderne la comprensione.

    
risposta data 25.01.2012 - 23:58
fonte
1

Dai un'occhiata a matlab . È un linguaggio progettato per eseguire funzioni matematiche nel codice.

a numerical computing environment and fourth-generation programming language... MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages...

Although MATLAB is intended primarily for numerical computing, an optional toolbox uses the MuPAD symbolic engine, allowing access to symbolic computing capabilities. An additional package, Simulink, adds graphical multi-domain simulation and Model-Based Design for dynamic and embedded systems...

    
risposta data 25.01.2012 - 18:42
fonte
1

La matematica è una scienza con un dominio molto ampio. Esistono diversi tipi di matematica che hanno esplicitamente niente in comune (a parte l'essere matematici).

Ora la programmazione è spesso associata alla matematica perché i calcolatori calcolano e calcolano, la maggior parte fondamentalmente lo fanno con i tipi di dati interi o in virgola mobile in passaggi discreti.

Ci sono campi di matematica che puoi studiare programmando "approssimando" la matematica in un programma. Diciamo che studi il calcolo differenziale e calcoli i valori numerici per piccoli intervalli, quindi "emulando" il limite della matematica "pura".

Altri aspetti della programmazione sono facilmente associati alla matematica (forse non fanno parte della tua classe di matematica del liceo ma sono ancora una matematica di valore che non fa parte di un curriculum tradizionale). Tipo teoria per esempio - o induzione matematica.

Spesso l'unico modo per ragionare sulla "correttezza" di un pezzo di codice è l'induzione matematica, per esempio. Questo tipo di ragionamento può essere visto soprattutto nei linguaggi funzionali (ricorsione, ecc.).

vale a dire. ci sono molti modi per imparare la matematica durante la programmazione, ma non tutti i calcoli matematici sono facilmente accessibili nel modello computazionale dei nostri computer e linguaggi di programmazione.

    
risposta data 20.07.2013 - 21:52
fonte
0

Non sono riuscito a trovare il post di blog, ma ricordo un "tipo" di designer dalla scorsa prima bolla prima del boom (prima di '01 -ish) che ha bloggato sulla scoperta dell'amore per la matematica diventando uno sviluppatore web e realizzando che in realtà era abbastanza bravo anche se aveva sempre fallito miseramente al liceo e aveva dato per scontato che lui non fosse qualcuno che sarebbe mai stato bravo in matematica e poi si sarebbe impiccato come un tipo artistico.

No non io. Ero solo pigro. Devo reimparare trig a volte, ma questo è tutto.

IMO, puoi scrivere molto codice decente senza grosse conoscenze matematiche finché non puoi, in pratica.

Ciò che la programmazione PU CAN fare per chiunque abbia un ragionevole interesse in esso, tuttavia, ti aiuta a superare l'idea di essere questo tipo di persona o di quel tipo di persona e di darti gli strumenti di cui hai bisogno prova solo cose e scopri da solo fino a che punto i tuoi interessi ti porteranno in un determinato campo di studio.

E ovviamente tutto ciò che stiamo facendo è collegato alla moda con la matematica, così potresti scoprire di aver già imparato più di quello che hai capito quando fai cose come sapere su cosa è tutto ciò che è alla rovescia. / p>     

risposta data 31.10.2013 - 01:01
fonte
0

Un'altra opzione è usare il tuo amore per la programmazione per guidare il tuo desiderio di imparare la matematica. Quasi tutto tende a diventare più facile da imparare se lo stai imparando con un problema specifico a cui vuoi applicarlo e la matematica non fa eccezione. Hai solo bisogno di capire i problemi di programmazione pesante della matematica che ti interessano e usarli come una ragione per imparare la matematica associata. Apprendimento dell'algebra lineare in modo da poter giocare con la grafica per esempio, o la probabilità e le statistiche per l'elaborazione di immagini / cose di tipo di visione artificiale.

Penso che la tua situazione cambierà su questo dato che persone diverse hanno modi diversi di apprendere le cose, ma sedersi e imparare la matematica in astratto per il gusto di imparare la matematica non ha mai funzionato per me.

    
risposta data 31.10.2013 - 18:07
fonte
-2

Bene, puoi chiedere agli studenti di risolvere alcuni problemi di geometria come disegnare quadrati, pentagono, esagoni e cerchi con Scratch. Sfidali a sviluppare soluzioni e NON DEVI rispondere loro come COME codificarlo. Lascia che esplorino e testino le soluzioni. Almeno puoi chiedere cose come la somma degli angoli in poligoni. Quindi possono costruire gli algoritmi e le loro categorie.

    
risposta data 07.04.2014 - 16:13
fonte

Leggi altre domande sui tag