#include #include #include #include #include main (argc,argv) int argc; char *argv[]; { FILE *fopen(),*sFILEin,*sFILEout; char FILEin[20],FILEout[20],lig[256],c, OBJ[25],DD1[8],MM1[8],YY1[8],MA1[8],OP1[8],RR1[8],DR1[8],DD2[8],MM2[8],YY2[8],MA2[8],DD3[8], MM3[8],YY3[8],DR3[8],MA3[8],DD4[8],MM4[8],YY4[8],PE4[10]; int YY,f,i; if(argc!=2){ fprintf(stderr,"Missing argument.\nusage %s YYYY\n",argv[0]); exit(1); } YY=atoi(argv[1]); (void)sprintf(FILEin,"opp%04dd.txt",YY); (void)sprintf(FILEout,"opp%04dd.htm",YY); for(f=0;f<2;f++){ if((sFILEin=fopen(FILEin,"r"))==NULL){ fprintf(stderr,"%s: unable to open inputfile %s\n",argv[0],FILEin); continue; } sFILEout=fopen(FILEout,"w"); fprintf(sFILEout,"Oppositions des astéroides en %04d
",YY); if(f==0){ fprintf(sFILEout,"\ \n",YY); fprintf(sFILEout,"\ \ \ \n"); } else { fprintf(sFILEout,"\ \n",YY); fprintf(sFILEout,"\ \ \ \n"); } while(fscanf(sFILEin,"%[^\n]%c",lig,&c)!=EOF){ strncpy(OBJ,&lig[0],25); OBJ[25]='\0'; /* $(echo "$line"|cut -c3-27) */ if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[24]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[23]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[22]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[21]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[20]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[19]='\0';} if(OBJ[0]==' '){ strncpy(OBJ,&OBJ[1],24); OBJ[18]='\0';} for(i=0;i<16;i++) if(OBJ[strlen(OBJ)-1]==' '){ OBJ[strlen(OBJ)-1]='\0';} strncpy(YY1,&lig[26],4); YY1[4]='\0'; /* $(echo "$line"|cut -c29-32)*/ strncpy(MM1,&lig[30],2); MM1[2]='\0'; /* $(echo "$line"|cut -c33-34)*/ strncpy(DD1,&lig[32],2); DD1[2]='\0'; /* $(echo "$line"|cut -c35-36)*/ strncpy(MA1,&lig[35],4); MA1[4]='\0'; /* $(echo "$line"|cut -c38-41)*/ if(MA1[0]=='0'){ strncpy(MA1,&MA1[1],3); MA1[3]='\0';} /* test "$(echo $MA1|cut -c1-1)" = "0" && MA1=$(echo $MA1|cut -c2-) */ strncpy(OP1,&lig[40],5); OP1[5]='\0'; /* $(echo "$line"|cut -c43-47)*/ strncpy(RR1,&lig[46],7); RR1[7]='\0'; /* $(echo "$line"|cut -c49-55)*/ if(RR1[0]=='0'){ strncpy(RR1,&RR1[1],6); RR1[6]='\0';} /* test "$(echo $RR1|cut -c1-1)" = "0" && RR1=$(echo $RR1|cut -c2-) */ if(RR1[0]=='0'){ strncpy(RR1,&RR1[1],5); RR1[5]='\0';} /* test "$(echo $RR1|cut -c1-1)" = "0" && RR1=$(echo $RR1|cut -c2-) */ strncpy(DR1,&lig[54],7); DR1[7]='\0'; /* $(echo "$line"|cut -c57-63)*/ if(DR1[0]=='0'){ strncpy(DR1,&DR1[1],6); DR1[6]='\0';} /* test "$(echo $DR1|cut -c1-1)" = "0" && DR1=$(echo $DR1|cut -c2-) */ if(DR1[0]=='0'){ strncpy(DR1,&DR1[1],5); DR1[5]='\0';} /* test "$(echo $DR1|cut -c1-1)" = "0" && DR1=$(echo $DR1|cut -c2-) */ if(strcmp(YY1,"0000")==0){ /* [ "$YY1" = "0000" ] ; then */ strcpy(YY1,"----"); strcpy(MM1,"--"); strcpy(DD1,"--"); strcpy(MA1," ") ; strcpy(OP1," ") ; strcpy(RR1," ") ; strcpy(DR1," "); } strncpy(YY2,&lig[62],4); YY2[4]='\0'; /* YY2=$(echo "$line"|cut -c65-68)*/ strncpy(MM2,&lig[66],2); MM2[2]='\0'; /* MM2=$(echo "$line"|cut -c69-70)*/ strncpy(DD2,&lig[68],2); DD2[2]='\0'; /* DD2=$(echo "$line"|cut -c71-72)*/ strncpy(MA2,&lig[71],5); MA2[5]='\0'; /* MA2=$(echo "$line"|cut -c74-78)*/ if(MA2[0]=='0'){ strncpy(MA2,&MA2[1],4); MA2[4]='\0';} /* test "$(echo $MA2|cut -c1-1)" = "0" && MA2=$(echo $MA2|cut -c2-)*/ strncpy(YY3,&lig[77],4); YY3[4]='\0'; /* YY3=$(echo "$line"|cut -c80-83)*/ strncpy(MM3,&lig[81],2); MM3[2]='\0'; /* MM3=$(echo "$line"|cut -c84-85)*/ strncpy(DD3,&lig[83],2); DD3[2]='\0'; /* DD3=$(echo "$line"|cut -c86-87)*/ strncpy(DR3,&lig[86],7); DR3[7]='\0'; /* DR3=$(echo "$line"|cut -c89-95)*/ if(DR3[0]=='0'){ strncpy(DR3,&DR3[1],6); DR3[6]='\0';} /* test "$(echo $DR3|cut -c1-1)" = "0" && DR3=$(echo $DR3|cut -c2-)*/ if(DR3[0]=='0'){ strncpy(DR3,&DR3[1],5); DR3[5]='\0';} /* test "$(echo $DR3|cut -c1-1)" = "0" && DR3=$(echo $DR3|cut -c2-)*/ strncpy(MA3,&lig[94],4); MA3[4]='\0'; /* MA3=$(echo "$line"|cut -c97-100)*/ if(MA3[0]=='0'){ strncpy(MA3,&MA3[1],3); MA3[3]='\0';} /* test "$(echo $MA3|cut -c1-1)" = "0" && MA3=$(echo $MA3|cut -c2-)*/ if(strcmp(YY3,"0000")==0){ /* if [ "$YY3" = "0000" ] ; then*/ strcpy(YY3,"----"); strcpy(MM3,"--"); strcpy(DD3,"--"); strcpy(MA3," "); strcpy(DR3," "); } strncpy(YY4,&lig[99],5); YY4[5]='\0'; /* YY4=$(echo "$line"|cut -c102-106)*/ if(YY4[0]=='0'){ strncpy(YY4,&YY4[1],4); YY4[4]='\0';} /* test "$(echo $YY4|cut -c1-1)" = "0" && YY4=$(echo $YY4|cut -c2-)*/ strncpy(MM4,&lig[104],2); MM4[2]='\0'; /* MM4=$(echo "$line"|cut -c107-108)*/ strncpy(DD4,&lig[106],2); DD4[2]='\0'; /* DD4=$(echo "$line"|cut -c109-110)*/ strncpy(PE4,&lig[109],8); PE4[8]='\0'; /* PE4=$(echo "$line"|cut -c112-119)*/ if(PE4[0]==' '){ strncpy(PE4,&PE4[1],7); PE4[7]='\0';} if(PE4[0]==' '){ strncpy(PE4,&PE4[1],6); PE4[6]='\0';} if(PE4[0]==' '){ strncpy(PE4,&PE4[1],5); PE4[5]='\0';} if(PE4[0]==' '){ strncpy(PE4,&PE4[1],4); PE4[4]='\0';} if(f==0) fprintf(sFILEout,"\ \ \ \ \ \n",OBJ,DD1,MM1,YY1,MA1,OP1,RR1,DR1,DD2,MM2,YY2,MA2,DD3,MM3,YY3,DR3,MA3,DD4,MM4,YY4,PE4); else fprintf(sFILEout,"\ \ \ \ \ \n",OBJ,DD1,MM1,YY1,MA1,OP1,RR1,DR1,DD2,MM2,YY2,MA2,DD3,MM3,YY3,DR3,MA3,DD4,MM4,YY4,PE4); } fprintf(sFILEout,"
année %04d\ oppositionéclat maxpérigée\ périhélie
astéroidedatemag
V
anomalie
moyenne
R(AU)D(AU)datemag
V
\ dateD(AU)mag
V
datePériode
(an)
année %04d\ oppositionéclat maxpérigée\ périhélie
astéroidedatemag
V
anomalie
moyenne
R(AU)D(AU)datemag
V
\ dateD(AU)mag
V
datePériode
(an)
%s%s/%s/%s%s%s%s%s%s/%s/%s%s%s/%s/%s%s%s%s/%s/%s%s
%s%s/%s/%s%s%s%s%s%s/%s/%s%s%s/%s/%s%s%s%s/%s/%s%s
\n"); fclose(sFILEin); fclose(sFILEout); (void)sprintf(FILEin,"opp%04dm.txt",YY); (void)sprintf(FILEout,"opp%04dm.htm",YY); } }