[C++] Valori numerici equazione
Ciao a tutti, sto cercando di scrivere un programino che, richiesta all'utente l'equazione ed i valori dove calcolarla gli ritorni i valori numerici.
Esempio: \(\displaystyle y=x^2+sinx \) l'utente sceglie \(\displaystyle x=3 \), il programma restituisce \(\displaystyle 9,14112 \)
Ció che ho fin'ora scritto é questo:
Grazie per l'aiuto intanto.
P.S. Ho fatto l'esame di informatica su C++ (elementi) circa 3 anni fa, sinceramente non ricordo bene bene le forme ecc... mi sono cimentato pensando di riuscirci in brevissimo tempo avendone urgente bisogno, ma cosí non é stato purtroppo.
Esempio: \(\displaystyle y=x^2+sinx \) l'utente sceglie \(\displaystyle x=3 \), il programma restituisce \(\displaystyle 9,14112 \)
Ció che ho fin'ora scritto é questo:
#include <iostream> #include <math.h> using namespace std; // Dichiarazioni void func1(float &funcX){ cout << "inserisci la funzione: "; cin >> funcX; return; } int main () { float j, Ix, Fx, passo, Px; int i, numP, punti; bool decisione; // Dati cout << "Vuoi calcolare dei singoli punti oppure una serie di valori in successione? (1 o 2): "; cin >> decisione; //Operazioni if (decisione==1){ cout << "Inserisci il numero totale di punti da calcolare: "; cin >> numP; cout << "Inserisci i punti (ascisse): "; i=1; while(i<=numP){ cin >> Px; i++; cout << "Ecco il valore cercato: " <<endl; cout << func1(&Px) <<endl; } }else{ cout << "Inserisci il passo: "; cin >> passo; cout << "Inserisci il punto di partenza (ascissa): "; cin >> Ix; cout << "Inserisci il punto di arrivo (ascissa): "; cin >> Fx; cout << "Ecco i valori richiesti: " <<endl; j=Ix; cout << func1(&Ix) <<endl; while(j<=Fx){ cout << func1(&(j+passo)) <<endl; j++; } } }
Grazie per l'aiuto intanto.
P.S. Ho fatto l'esame di informatica su C++ (elementi) circa 3 anni fa, sinceramente non ricordo bene bene le forme ecc... mi sono cimentato pensando di riuscirci in brevissimo tempo avendone urgente bisogno, ma cosí non é stato purtroppo.
Risposte
Questo é l'errore del compilatore
Mi sono dimenticato di dirvi che volevo creare due funzionalitá:
1) che il programma semplicemente ritornasse i valori scelti (come giá detto)
2) che il programma calcolasse tutti i valori compresi fra due estremi e distanziati di un certo passo, ad esempio da 2 a 10 ogni 0.5
1) che il programma semplicemente ritornasse i valori scelti (come giá detto)
2) che il programma calcolasse tutti i valori compresi fra due estremi e distanziati di un certo passo, ad esempio da 2 a 10 ogni 0.5
Manca totalmente la parte in cui viene letta e soprattutto interpretata la funzione, che è il più grande problema che devi risolvere insieme al suo sottoproblema di decidere come rappresentare la funzione. Il problema di creare un solutore di funzioni, anche relativamente semplici, non è esattamente semplicissimo (anche se non estremamente difficile se ti limiti a leggere e applicare senza semplificare).
Riguardo agli errori più urgenti direi che ti devi guardare come si chiama una funzione. Perché non ha certo senso stampare il valore di ritorno di una funzione che non ritorna nessun valore.
Riguardo agli errori più urgenti direi che ti devi guardare come si chiama una funzione. Perché non ha certo senso stampare il valore di ritorno di una funzione che non ritorna nessun valore.