Image

Imagetemporalbandit wrote in Imagecprogramming 😡frustrated

Can anyone tell me why
#include
[Error: Irreparable invalid markup ('<stdio.h>') in entry. Owner must fix manually. Raw contents below.]

Can anyone tell me why <lj-cut text="this">
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define MAXVALS 500

int main ()
{
/* Declare Variables */
float initial[5][MAXVALS];
float pi=3.142;
double rv=0;
double phiv=0;
double phiv0=0;
double zv=0;
double xv=0;
double yv=0;
double rp=0;
double phip=0;
double phip0=0;
double zp=0;
double xp=0;
double yp=0;
int colcount;
int rowcount;
int calccount=0;
int i=0;
int count=0;
int x=0;
FILE *fh;

/* Open the data file */
fh = fopen("file.dat", "r");
if ( fh == NULL )
{
printf("Cannot open data file\n");
exit(EXIT_FAILURE);
}

/* Initialise Counter */
colcount = 0;
rowcount = 0;

/* Read all the values in the file */
while ( ! feof(fh) && count < MAXVALS )
{

if ( fscanf(fh, "%f", &initial[colcount][rowcount]) > 0 )
{
printf("%f\n", initial[colcount][rowcount]);
count++;
if (colcount == 5)
{
colcount = 0;
rowcount++;
}
else
colcount++;
}

}

/* Close the file */
fclose(fh);

/* Check the file contains data */
if ( count == 0 ) {
printf("Data file contains no values\n");
exit(EXIT_FAILURE);
}

else
{
printf("Read %d rows from file\n", rowcount);
}

while(i != rowcount)
{
rv = initial[0][i];
phiv0 = initial[1][i];
zv = initial[2][i];
rp = initial[3][i];
phip0 = initial[4][i];
zp = initial[5][i];

for(x=0;x!=36;x++)
{


/* Calculate phiv's and phip's */
phiv = phiv0 + ((x*pi)/18);
phip = phip0 + ((x*pi)/18);

printf("phiv=%f\n", phiv);
printf("phip=%f\n", phip);


}

i++;
}

}

</lj-cut> isn't working?

It's supposed to take some values from a file (multiple rows in the format "rv phiv zv rp phip zp"), take each phiv and phip and 'create' new values for them by adding on pi/18 35 times (so for each row in the original file, I get 35 extra rows). Eventually I want to get something like <lj-cut text="this">

rv phiv zv rp phip zp
rv (phiv + pi/18) zv rp (phip + pi/18) zp
rv (phiv + 2pi/18) zv rp (phip + 2pi/18) zp
rv (phiv + 3pi/18) zv rp (phip + 3pi/18) zp
rv (phiv + 4pi/18) zv rp (phip + 4pi/18) zp
rv (phiv + 5pi/18) zv rp (phip + 5pi/18) zp
rv (phiv + 6pi/18) zv rp (phip + 6pi/18) zp
rv (phiv + 7pi/18) zv rp (phip + 7pi/18) zp
rv (phiv + 8pi/18) zv rp (phip + 8pi/18) zp
rv (phiv + 9pi/18) zv rp (phip + 9pi/18) zp
rv (phiv + 10pi/18) zv rp (phip + 10pi/18) zp
rv (phiv + 11pi/18) zv rp (phip + 11pi/18) zp
rv (phiv + 12pi/18) zv rp (phip + 12pi/18) zp
rv (phiv + 13pi/18) zv rp (phip + 13pi/18) zp
rv (phiv + 14pi/18) zv rp (phip + 14pi/18) zp
rv (phiv + 15pi/18) zv rp (phip + 15pi/18) zp
rv (phiv + 16pi/18) zv rp (phip + 16pi/18) zp
rv (phiv + 17pi/18) zv rp (phip + 17pi/18) zp
rv (phiv + 18pi/18) zv rp (phip + 18pi/18) zp
rv (phiv + 19pi/18) zv rp (phip + 19pi/18) zp
rv (phiv + 20pi/18) zv rp (phip + 20pi/18) zp
rv (phiv + 21pi/18) zv rp (phip + 21pi/18) zp
rv (phiv + 22pi/18) zv rp (phip + 22pi/18) zp
rv (phiv + 23pi/18) zv rp (phip + 23pi/18) zp
rv (phiv + 24pi/18) zv rp (phip + 24pi/18) zp
rv (phiv + 25pi/18) zv rp (phip + 25pi/18) zp
rv (phiv + 26pi/18) zv rp (phip + 26pi/18) zp
rv (phiv + 27pi/18) zv rp (phip + 27pi/18) zp
rv (phiv + 28pi/18) zv rp (phip + 28pi/18) zp
rv (phiv + 29pi/18) zv rp (phip + 29pi/18) zp
rv (phiv + 30pi/18) zv rp (phip + 30pi/18) zp
rv (phiv + 31pi/18) zv rp (phip + 31pi/18) zp
rv (phiv + 32pi/18) zv rp (phip + 32pi/18) zp
rv (phiv + 33pi/18) zv rp (phip + 33pi/18) zp
rv (phiv + 34pi/18) zv rp (phip + 34pi/18) zp
rv (phiv + 35pi/18) zv rp (phip + 35pi/18) zp

</lj-cut> from each line in the original file, but for the moment I'd be happy just to get the extra values for the two phi's.

I'm sorry if this doesn't make any sense- I'm having a hard time explaining it to myself, let alone anyone else, but any help would be appreciated :-)

TK

**EDIT** I'm getting the right answers now, but the program is crashing. Any ideas why?