Dev - C++ - ayuda: ¿dónde esta mal?

   
Vista:

ayuda: ¿dónde esta mal?

Publicado por maite (1 intervención) el 17/12/2010 18:12:21
Holaa!
tengo que hacer una practica en C con dev-C++. Se trata de crear un programa que haga el cambio de coordenadas esfericas a coordenadas cartesianas. Me proporcionan un fichero con los puntos que debo cambiar y la formula que necesito. Una vez calculado se deben guardar en otro fichero.
Esto es lo que he echo y no me da:

/*ACTIVIDAD DIRIGIDA 1*/

#include<stdio.h>
#include<string.h>
#include <math.h>

#define PI 3.1416

int main()

{
char a1[100];
int x1, x2, x3, x5, x6;
float r, x4, x7, x8, X, Y, Z;

FILE *f;
FILE *f2;


f=fopen("esferiques.txt", "r"); /*esto abre el fichero de las coordenadas*/
f2=fopen("resultats.txt", "w");/*esto crea el nuevo fichero en el que pondremos los resultados*/

fscanf(f,"%s %f", x1, x2); /*leemos la primera linea*/
fprintf(f2,"%s %f", x1, x2); /*la escribimos tal cual en el segundo*/

while(fscanf(f, "%d %d %d %f %d %d %f %f", x1, x2, x3, x4, x5, x6, x7, x8)!=8)
{
/*este bucle lee del fichero y lo va guardando en el nuevo fichero segun la formula*/
X=(r+x8)*cos((x2*2*PI)/360)*cos((x5*2*PI)/360);
Y=(r+x8)*cos((x2*2*PI)/360)*sin((x5*2*PI)/360);
Z=(r+x8)*sin((x2*2*PI)/360);

fprintf(f2,"%d %f %f %f",x1, X, Y, Z);
}

/*cerramos los ficheros*/
fclose(f);
fclose(f2);

return 0;
fflush(stdin);
getchar();

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder