PDA

Visualizza la versione completa : [C++] aiuto velocitÓ del prog


aliseo85
01-02-2004, 18:05
salve... dovevo fare un prog in C++ che calcolasse questo inegrale:

http://tylerdurden.altervista.org/immagini/integrale.jpg

e ho scritto questa funzione

float integrale (double i) {
double c;
c=pow (M_E, -i*i/2)*0.1;
return c;
}

e nel main(){
..
for (i=0; i<N; i+0.1) {
somma+=integrale(i);
}
cout << "\n\n Il valore dell'integrale e': " << (1/sqrt(2*M_PI))*somma+0.5;
..
}
il problema Ŕ la velocitÓ: infatti visti gli innumerevoli calcoli il prog nn conclude in tempi accessibile il calcolo finale..

lasciando perdere il main che mi sembra sia apposto, conoscete qualche tecnica x limitare i calcoli e rendere il prg + veloce

pela
01-02-2004, 18:23
for (i=0; i<N; i+0.1)

non so se hai sbagliato a ricopiare, comunque dovrebbe essere


for (i=0; i<N; i+=0.1)

aliseo85
01-02-2004, 18:55
nn credo.. quelle i sn i pezettini di base dell'integrale x calcolare l'area

Xadoom
01-02-2004, 19:02
Si ma se non metti += non 'memorizzi' il nuovo valore di i ed il ciclo non ha MAI fine (i vale sempre lo stesso).
Ciao

pdpmpd
01-02-2004, 19:03
loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito :dh˛: :dh˛:

aliseo85
01-02-2004, 21:10
azz.. avete ragione.. io Ŕ poko che programmo e nn ho ancora fatto prog complessi quindi avevo usato solo i++.. nn sapevo che si dovesse mettere += merci

Loading