#!/usr/bin/perl -w

############Program prebere le števila, izpusti glavo

#======================procedure========================

sub fort_format {
     $forform = shift;
#    $forform="2i2,i9";  tudi to priblizno deluje

     @vrst=split(",",$forform);
     $outform="";
 #    my ($i,$j,$wid,$numb);

     foreach $i (@vrst) {
#     print $i. "\n";

         if ($i =~ /(\d+)[iI](\d+)/ ) {
           $numb = $1;
           $wid = $2;
         } elsif ($i =~ /[iI](\d+)/ ) {
           $numb=1;
           $wid = $1;
         } elsif ($i =~ /(\d+)[fF](\d+)\.?(\d+)?/ ) {
           $numb = $1;
           $wid = $2;
         } elsif ($i =~ /[fF](\d+)\.?(\d+)?/ ) {
           $numb=1;
           $wid = $1;
         } else {
           $numb=0;
         }

         if ($numb >= 1 ) {
           for ($j=1; $j<=$numb; $j++) {
              $outform .= "A${wid} ";
           }
         }
     }
                      
#spodaj je primer logike, ki jo izvaja sub-rotina, dela prvi zapis za unpack
       #i62i3 je A6 A3 A3
#@bits = unpack("A2A3 A1","vector");
#print "$bits[0] $bits[1]   $bits[2]\n";
       #izpis bo taksen ve sta 2 prvi mesti,cto so 3 mesta naprej,o je 1 mesto, glej spodaj
#ve cto   r
# tako lahko izpisem spremenljivko v sub rutini
# print $outform. "\n";
  return $outform;

}



#========================================================
print"Branje iz ene datoteke in dajajnje v drugo datoteko\n";

open (PISIV,">izhod1.txt") || die "ne morem narediti datotelke";
open (VHODRADAR,"<a.a") || die "ne morem odpreti datoteke  $!";


$formatradar="401i6";

$ii=0; $jj=0;

#berem iz fajla
while ( defined($instr=<VHODRADAR>) ) {
          chomp($instr); #$instr je celotna vrstica iz bralne datoteke !!!!!!!!!!!!!!!!!!!!!!
         @vrstica_radar=unpack(fort_format($formatradar),$instr);

        # @rad_vrstica=split(/ /, $instr); # razbije vrstico v polje vrednosti, locnicqa je spce " "
# ((substr($vrstica_radar[0],0,4) eq "DATA")) {$jj=1;}
#f ($ii == 39) {$jj=0;}
#¸if ($jj==257) { print "koloni 2, 50 ($vrstica_radar[2] | $vrstica_radar[50] ) \n";


if ($ii==5){
	$x1= substr($instr,10,10);
	$leto=substr($instr,10,4);
	$mesec=substr($instr,15,2);
	$dan=substr($instr,18,2);
	$ura1=substr($instr,21,2);
	$ura2=substr($instr,24,2);

print "Cas $x1 je isto kot $leto-$mesec-$dan-$ura1$ura2\n" };

#$vv=0;
#   if ($ii==5) {foreach $datum  (@vrstica_radar) { print "$datum ";}
#$v++;}

$uu=0;
   if ($jj>0) {foreach $xx  (@vrstica_radar) {if($xx>0)
	 {print "$leto-$mesec-$dan-$ura1$ura2|$jj$uu|$xx\n "; }
$uu++; }
print " uu = $uu \n";}

#se pise v datoteko s simbolnim imenom PISIVC
if ($jj > 0) {print PISIV "$instr\n"; }
if ($ii > 40) {$jj++;}
$ii++;
}

print "  I=$ii,  $jj \n";
close VHODRADAR;
close PISIV;
#se pise v datoteko s simbolnim imenom PISIVC
print "Podatki se tudi zapisejo v datoteko izhod1.txt, ki se dopolnjuje zaradi ukza >>\n";

