@ pong: da hast z.B. ein funktionierendes programm *G*
da kannst das grundlegenste herauslesen
#include <stdio.h>
#include <math.h>
double P(double x, double t, double Tau);
int main (void)
{ double i,i0, di, R, L, Tau, tmax, t=0, dt, E=0,y1, ym ,y2, rech;
printf("Programm berechnet die Umgesetzte Energie an Spule\n");
printf("I0=\n");
scanf("%lf", &i0);
i=i0;
printf("R=\n");
scanf("%lf", &R);
printf("L=\n");
scanf("%lf", &L);
Tau=L/R;
tmax=5*Tau;
dt=tmax/100;
rech=0.5*i0*i0*L/R;
printf("\tt\ti\tP\t E\n");
do {
y1=P(i0,t,Tau);
ym=P(i0,t+dt/2,Tau);
y2=P(i0,t+dt,Tau);
printf("\n\t%5.3lf\t%5.3lf\t%5.3lf\t%5.3lf",t,i,y1 ,E);
di=-1*L/R*i;
i=i+di;
E=E+((y1+4*ym+y2)*dt/6);
t=t+dt;
}
while (t<=tmax);
printf("\n Gesamtenergie (Flaeche): %5.3lf",E);
printf("\n Berrechnete Energie: %5.3lf",rech);
return 0;
}
double P(double x, double y, double z){
double a;
a=x*x*exp(-2*(y/z));
return a;
}
|