Programación Web y Scripting > Perl
Algun Experto En Perl Y Alma Caritativa ??
(1/1)
guarida2:
Son unos problemas que necesito urgentemente:
1. Un fichero contiene lineas con 2 o mas numeros en cada una de ellas, separados por 1 o varios espacios.
Leer el fichero e imprimir en pantalla:
- la suma de los numeros de cada linea.
- El numero de numeros de cada linea
2. Un fichero contiene lineas con un numero en cada una de ellas. Se pide leer el fichero e imprimir:
- Los numeros en orden ascendente
- Idem orden descendente
- La suma de todos los numeros
- El numero de lineas del fichero.
su -:
;) Este foro no es para hacer tabajos o tareas.
* Es para responder dudas!
explorer:
Como ha pasado bastante tiempo, se puede resolver...
Sea el fichero kk.txt
--- Citar ---23 0
21 34 4566
3 5 3
3 3 3 3 3 3 3
2 3
--- Fin de la cita ---
luego la siguiente una-línea saca el primer ejercicio:
--- Código: Text ---perl -nle '$n=$s=0;while(/(\d+)/g){ $s += $1; $n++} print "Suma: $s. Números: $n"' kk.txt Salida:
--- Citar ---Suma: 23. Números: 2
Suma: 4621. Números: 3
Suma: 11. Números: 3
Suma: 21. Números: 7
Suma: 5. Números: 2
--- Fin de la cita ---
Para el segundo ejercicio. Si tenemos el fichero kk.txt
--- Citar ---23
21
3
6
2
--- Fin de la cita ---
luego la siguiente una-línea saca el segundo ejercicio:
--- Código: Text ---perl -nle '$numero[$numero++]=$_; $suma+=$_; END{@ordenados= sort {$a <=> $b} @numero; print "@ordenados"; @ordenados=reverse @ordenados; print "@ordenados"; print $suma; print $numero}' kk.txt Salida:
--- Citar ---2 3 6 21 23
23 21 6 3 2
55
5
--- Fin de la cita ---
Queda para el alumno la tarea de explicarle al profesor cómo funcionan estas soluciones...
Navegación
Ir a la versión completa