1 fdtd kodas klaida, Pls help me

A

abdoeng

Guest
hi i bandyti suprasti fdtd kodą čia 1 d kodas, bet tai klaida, bet draugų man padėti
Ačiū dėl
kodas
# Include <math.h>
# Include <stdlib.h>
# Include <stdio.h>
# define KE 200
main ()
(
Kc = KE / 2;
į = 40,0;
skleisti = 12;
T = 0;
nsteps = 1;
float ex [KE] pr [ke];
int n, K, KC, KE, nsteps;
float t;
plūdė prie plitimui, impulso;
FILE * ftp * fopen ();
for (k = 1, k <ke, k )
(Ex [k] = 0;
he [k] = 0.)
Kc = KE / 2;
į = 40,0;
skleisti = 12;
T = 0;
nsteps = 1;
while (nsteps> 0) (
printf ( "nsteps ->");
scanf ( "% d", & nsteps);
printf ( "% d \ n", nsteps);
n = 0;
for (n = 1, n <= nsteps; n )
(
t = t 1;
for (k = 1, k <ke, k )
(ex [k] = ex [k] .5 * (hy [k-1]-he [k]);)
impulso = exp (-. 5 * (pow ((prie-T) / plitimą, 2)));
ex [KC] = pulsas;
printf ( "% 5.1f% 6.2f \ n", prie-T, ex [KC]);
for (k = 0; k <ke-1, k )
(hy [k] = he [k] .5 * (ex [k]-ex [k 1]);)
)
for (k = 1, k <= KE; k )
(print ( "% 3d% 6.2f% 6.2 \ n", k, ex [k], he [k]);)
fp = fopen ( "ex", "w");
for (k = 1, k <= KE; k )
(fprintf (fp, "% 6.2f \ n", ex-[k]);)
fclose (fp)
fp = fopen ( "he", "w");
for (k = 1, k <= KE; k )
(fprintf (fp, "% 6.2f \ n", he [k]);)
fclose (fp)
print ( "T =% 5f \ n", t);
)
)

 
Aš nežinau, kas tai yra programa, tarkime daryti, bet tai visiškai C sintaksės klaidų.
Aš nustatytas akivaizdžias klaidas, bet aš nežinau, ar tai galia yra teisinga, ar ne:
Kodas

# include <math.h>

# include <stdlib.h>

# include <stdio.h># define KE 200int main (void)

(

float ex [KE] pr [ke];

int n, K, KC, nsteps;

float t;

plūdė prie plitimui, impulso;

FILE * fp;Kc = KE / 2;

į = 40,0;

skleisti = 12;

T = 0;

nsteps = 1;

for (k = 1, k <ke, k )

(

ex [k] = 0;

he [k] = 0;

)

Kc = KE / 2;

į = 40,0;

skleisti = 12;

T = 0;

nsteps = 1;

while (nsteps> 0)

(

printf ( "nsteps ->");

scanf ( "% d", & nsteps);

printf ( "% d \ n", nsteps);

n = 0;

for (n = 1, n <= nsteps; n )

(

T = t 1;

for (k = 1, k <ke, k )

(

ex [k] = ex [k] .5 * (hy [K - 1] - he [k]);

)

impulso = exp (-. 5 * (pow ((to - t) / plitimą, 2)));

ex [KC] = pulsas;

printf ( "% 5.1f% 6.2f \ n", kad - T, ex [KC]);

for (k = 0; k <ke - 1, k )

(

he [k] = he [k] .5 * (ex [k] - ex [k 1]);

)

)

for (k = 1, k <= KE; k )

(

printf ( "% 3d% 6.2f% 6.2f \ n", k, ex [k], he [k]);

)

fp = fopen ( "ex", "w");

for (k = 1, k <= KE; k )

(

fprintf (fp, "% 6.2f \ n", ex-[k]);

)

fclose (fp);

fp = fopen ( "he", "w");

for (k = 1, k <= KE; k )

(

fprintf (fp, "% 6.2f \ n", he [k]);

)

fclose (fp);

printf ( "% t = 5f \ n", t);

)

return 0;

)
 
Hi ech47, ačiū, kad Sullivan knyga programą, pirmajame skyriuje, tai yra paprastas, bet kai aš jį paleisti, ji turi daugiau klaidų, kad ji iignore
linkėjimai

 
Aš įsikabinti Sullivan knyga.

Programa masyvas indeksavimo klaidas.Pabandykite pakeisti pirmosios linijos nuo šios:

for (k = 1, k <ke, k )

šią:

for (k = 0; k <ke, k )Šios galutinis printf pareiškimai tikriausiai reikia ex [k-1] he [k-1], o ne ex [k] ir hy [k].

Gali būti daugiau panašių klaidų.Atrodo Sullivan išversti ją (blogai) iš FORTRAN ar kažkas panašaus.

 

Welcome to EDABoard.com

Sponsor

Back
Top