Oppure

Loading
02/06/10 15:12
oliverissimo
Salve a tutti :)
Sto' facendo un programma che calcoli un integrale ma il compilatore mi da' errore..
non riesco proprio a capire perche' :d
mi potete dare una mano? :)


#include <iostream>
using namespace std;

float funz (float x)
{
	float y;
	y=(x*x*x)/3+(x*x)/2+x;
	
	return y;
	}

float integrale (float estr_a,float estr_b,float precisione)
{	
	float Area=0;
	
	precisione=estr_b-estr_a/precisione;
	
	for (float x=estr_a,x<=(estr_b-precisione),x+=precisione)   // <---errore
	{
		Xn=x+precisione;
		Area=Area+( (precisione)*(funz(x)+funz(Xn))/2 );
		}
	return Area;	// <---errore
	}



int main()
{
	float x1;
	float x2;
	float p;

	
	cout<<"CALCOLO DELL' INTEGRALE DI X^2+X+1\n\nInserire il primo estremo (x1): ";
	cin>>x1;
	cout<<"\nInserire il secondo estremo (x2): ";
	cin>>x2;
	cout<<"\nInserire la precisione dell' area: ";
	cin>>p;
	
	cout<<"\n\nl'area sottostante alla curva e': "<<integrale(x1,x2,p);
	
	return 0;
}



ecco anche cosa mi dice il compilatore:

g++ -Wall -c "Integrale.cpp" (nella cartella: /home/silvius/Scrivania)
Integrale.cpp: In function ‘float integrale(float, float, float)’:
Compilazione fallita.
Integrale.cpp:18: error: expected initializer before ‘<=’ token
Integrale.cpp:23: error: expected primary-expression before ‘return’
Integrale.cpp:23: error: expected ‘;’ before ‘return’
Integrale.cpp:23: error: expected primary-expression before ‘return’
Integrale.cpp:23: error: expected ‘)’ before ‘return’
Integrale.cpp:18: warning: unused variable ‘x’

Rigrazio in anticipo :)

aaa
02/06/10 15:24
HeDo

ti sfugge che i 3 campi del ciclo for vanno separati dal punto e virgola, non dalla virgola.
aaa
02/06/10 15:43
oliverissimo
il che mi rende un vero pollo :om: Grazie mille =)
aaa
02/06/10 15:53
HeDo
Postato originariamente da oliverissimo:

il che mi rende un vero pollo :om: Grazie mille =)


non ti preoccupare, sono errori che possono capitare :)

la cosa sconcertante invece, che la dice lunga sulla qualità di gcc, è che dal messaggio di errore è praticamente impossibile capire dove si è sbagliato!
aaa