[PLUTO-help] Esercizio script di shell! Fighissimo!

lkk lkk a interfree.it
Gio 28 Ott 2004 16:43:44 CEST


Il gio, 2004-10-28 alle 16:19, Gian Uberto Lauri ha scritto:
> >>>>> "l" == lkk  <lkk a interfree.it> writes:
> 
> l> #!/bin/awk -f
> l> BEGIN{
> l>   for(i=1;i<ARGC;i++)
> l>     {
> l>       f=((3*ARGV[i]^2)+(4*ARGV[i+1])+(5*ARGV[i+2]));
> l>       printf("%d",f);
> l>       printf("\n");
> l>       i=i+2;
> l>     }
> l> }
> 
> Oddio, ad awk  non avevo pensato. Ha forse trascritto  male il path di
> awk (o nella tua distribuzione non e` in /usr/bin)
ho una copia di awk sia in /bin/awk che in /usr/bin/awk
uso FC1 mha!

>  e puoi riscriver il
> ciclo in modo piu` compatto in questo modo
> 
>   for(i=1;i<ARGC;i+=3)
>     {
>       f=((3*ARGV[i]^2)+(4*ARGV[i+1])+(5*ARGV[i+2]));
>       printf("%d",f);
>       printf("\n");
>     }
> 
> sfruttando l'operatore +=. Ma bella soluzione, non c'e` che dire.
> 
> Ma c'e` ancora un'altra soluzione che usa dc o bc (che son nati per
> questo) per fare i conti.
> 
> #/bin/bash
> while [ "$1" ];
> do
>     echo $1'*3*'$1'+4*'$2'+5*'$3 | bc
>     shift 3
> done 
FIGHISSIMO! sto facendo salti di gioia, non lo sapevo esistesse
un comando cosė potente... 

> 
> Il Perl non l'ha inventata lui la storia che non c'e` mai un solo modo
> per fare le cose.
credo sia nata con la nascita dell'uomo? 

Grazie mille veramente mi sei stato di grande aiuto...
-- 




More information about the pluto-help mailing list