Tengo una carpeta que se llama Abril y dentro de ésta tengo 30 archivos con extensión .dat que, a modo de ejemplo, uno de estos archivos contiene lo siguiente:
- Código: Seleccionar todo
1001.0 137 13.2 9.1 76 7.29 170 3 286.3 306.8 287.5
1000.0 125 13.0 8.0 72 6.77 165 2 286.1 305.3 287.3
925.0 774 7.4 7.0 97 6.84 245 2 286.9 306.2 288.1
915.0 863 6.6 6.0 96 6.45 155 8 286.9 305.3 288.1
913.0 881 6.6 6.2 97 6.55 136 9 287.1 305.7 288.3
911.0 899 9.0 4.0 71 5.63 118 10 289.8 306.1 290.8
910.0 909 10.8 -9.2 24 2.10 109 10 291.7 298.2 292.1
909.0 918 12.0 -9.3 22 2.09 100 11 293.0 299.5 293.4
903.0 974 19.0 -10.0 13 1.99 117 11 300.8 307.2 301.2
893.0 1069 20.8 -9.2 12 2.14 147 10 303.6 310.6 304.0
Y este es mi script:
Using perl Syntax Highlighting
#!/usr/bin/perl -w
while ($data=<Abril/*.dat>) {
$fecha=substr($data,6,5);
open (DATOS, "<$data");
open (ARCHIVOS, ">$fecha.dat");
while($lineas=<DATOS>){
chop($lineas);
@datos=split(" ",$lineas);
$u=$datos[7]*cos($datos[6]);
$v=$datos[7]*sin($datos[6]);
print ARCHIVOS "$u $v\n";
}
}
while ($data=<Abril/*.dat>) {
$fecha=substr($data,6,5);
open (DATOS, "<$data");
open (ARCHIVOS, ">$fecha.dat");
while($lineas=<DATOS>){
chop($lineas);
@datos=split(" ",$lineas);
$u=$datos[7]*cos($datos[6]);
$v=$datos[7]*sin($datos[6]);
print ARCHIVOS "$u $v\n";
}
}
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Lo que quiero hacer es multiplicar todos los valores de la columna ocho, de cada archivo .dat, por el seno de cada valor de la columna 7.
Les agradezco cualquier ayuda, adiós.