On 31 jul, 18:36, [EMAIL PROTECTED] (John W. Krahn) wrote:
> Irenta wrote:
>
> > ok it started working and now that I run it in another computer is
> > doing the same thing. I added -w at the top and it is giving me the
> > following errors:
>
> -w will give you warnings not errors.
>
> > Use of uninitialized value in division (/) at ./filegroupfix1_1000.txt
> > line 133, <V10> line 61410.
> > Use of uninitialized value in printf at ./filegroupfix1_1000.txt line
> > 136, <V10> line 61410.
> > Error opening file. at ./filegroupfix1_1000.txt line 15, <V10> line
> > 136506.
> > Useless use of a constant in void context at ./filegroupfix1_1000.txt
> > line 149.
>
> > The script is below.***
>
> It is hard to tell from the program where lines 15, 133, 136 and 149 are
> because the email program wraps long lines.
>
>
>
> > Can anyone tell me what am I missing?
> > I'll appreciate your help.
> > Thanks,
> > Isha
> > ***
> > ----------------
> > #!/usr/bin/perl -w
>
> > #open the data files
>
> > @fcsttime=( '00', '06', 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72);
>
> > @inittime=('10. 00', '10. 06', '10. 12', '10. 18', '11. 00', '11. 06',
> > '11. 12', '11. 18', '12. 00', '12. 06', '12. 12', '12. 18', '13. 00');
> > [EMAIL PROTECTED]( '0000', '0600', '1200', '1800');
>
> > for($j=0;$j<=13;$j++)
> > {
> > open (GFDLU,'<',"26Uivan09l.2004091000.gribn3.f
> > $fcsttime[$j].UGRD.txt") || die "Error opening file.";
> > open (GFDLV,'<',"26Uivan09l.2004091000.gribn3.f
> > $fcsttime[$j].VGRD.txt") || die "Error opening file.";
> > open (GFDLP,'<',"26Uivan09l.2004091000.gribn3.f
> > $fcsttime[$j].PRMSL.txt") || die "Error opening file.";
> > open (GFDLT,'<',"26Uivan09l.2004091000.gribn3.f
> > $fcsttime[$j].TMPsfc.txt") || die "Error opening file.";
> > open (GFDLR,'<',"26Uivan09l.2004091000.gribn3.f$fcsttime[$j].RH.txt")
> > || die "Error opening file.";
> > open (GFDLH,'<',"26Uivan09l.2004091000.gribn3.f$fcsttime[$j].HGT.txt")
> > || die "Error opening file.";
>
> Your error message "Error opening file." makes it difficult to tell which file
> couldn't be opened and the reason that it couldn't be opened.  You should
> include the file name and the $! variable in the error message.
>
> open GFDLH, '<', "26Uivan09l.2004091000.gribn3.f$fcsttime[$j].HGT.txt" or die
> "Error opening '26Uivan09l.2004091000.gribn3.f$fcsttime[$j].HGT.txt' $!";
>
> > #assign the data files to a list
> > @lgfdlp=<GFDLP>;
> > @lgfdlu=<GFDLU>;
> > @lgfdlv=<GFDLV>;
> > #20
> > @lgfdlt=<GFDLT>;
> > @lgfdlr=<GFDLR>;
> > @lgfdlh=<GFDLH>;
>
> [ SNIP ]
>
> > for($i=0;$i<3600;$i++)
> >    {
> > #100
> >            printf "04 0409$inittime[$j]00";
> >            $fcontentlat=$lgfdllat[$i];
> >            printf (" %7.3f",$fcontentlat);
> >            $fcontentlon=$lgfdllon[$i];
> >            printf ("%8.3f",$fcontentlon);
> >            $pressv=$lgfdlp[$i]/100;
>
> "Use of uninitialized value in division" means that the value of $lgfdlp[$i]
> is undef.
>
> >            printf (" %6.1f",$pressv);
> >            $fcontentt=$lgfdlt[$i];
> >            printf (" %6.1f",$fcontentt);
>
> "Use of uninitialized value in printf" means that the value of $fcontentt is
> undef.
>
> >            $fcontentr=$lgfdlr[$i];
> >            printf (" %6.1f",$fcontentr);
> >            $fcontenth=$lgfdlh[$i];
> >            printf ("  %6.1f",$fcontenth);
> >            $U10m=$U10m2[$i];
> >            printf ("%6.1f",$U10m);
> >            $V10m=$V10m2[$i];
> >            printf (" %6.1f",$V10m);
> >            print " GFDL\n";
> >     }
> > #120
> > close(GFDLU,GFDLV,GFDLH,GFDLR,GFDLT,GFDLP,LATI,LONI,U10M,V10M,ALLF)
>
> close() can only close *one* filehandle so you get the warning "Useless use of
> a constant in void context" for all the other filehandles.
>
> > }
>
> John
> --
> Perl isn't a toolbox, but a small machine shop where you
> can special-order certain sorts of tools at low cost and
> in short order.                            -- Larry Wall

those "unitialized values" are assigned to the handle of the files
before the loop... does't that initialize them?

Isha


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to