shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RES: [shell-script] script para pontuar numeros...


From: Julio Cezar Neves - DATAPREVRJ
Subject: RES: [shell-script] script para pontuar numeros...
Date: Mon, 28 Oct 2002 10:31:31 -0300

Com sed é muito mais veloz, mas veja se este funciona:

Prompt> cat ednum.sh
#!/bin/bash
#
# Edita numero colocando o ponto separador de milhares
#

[ $# -ne 1 ] && exit 1                 # Sem parametro
expr $1 + 0 > /dev/null 2>&1 || exit 2 # Nao eh numero!
Num=$1
Saida=
Pt=
while [ $Num -gt 999 ]
do
        Saida=$((Num%1000))$Pt$Saida
        Num=$((Num/1000))
        Pt=\.
done
echo $Num$Pt$Saida

[ ]s,
Julio Cezar Neves
-Eu Apoio o Software Livre-
-I Support Free Software-
* +55 21 2528-7070  /  9853-4044
*address@hidden


> -----Mensagem original-----
> De: address@hidden [mailto:address@hidden]
> Enviada em: sexta-feira, 25 de outubro de 2002 12:14
> Para: address@hidden
> Assunto: [shell-script] script para pontuar numeros...
> 
> 
> preciso de um script para pontuar numeros... copiei de 
> um site o seguinte:
> 
> echo "entre com um numero"
> read NUMERO
> pontuar ()
> {
>    VALOR=$1
>    if VALOR [ "$VALOR" = "" ];then
>       return
>    fi
> 
>    TAMSTR=$(expr length "$VALOR")
>    CTRCAR=$TAMSTR
>    CTAPTO=0
>    NUMPTO=""
>    while (( $CTRCAR >= 1 )); do
>       NUMPTO=$NUMPTO$(printf $(expr substr "$VALOR" 
> $CTRCAR 1))
> 
>       (( CTRCAR = $CTRCAR - 1 ))
>       (( CTAPTO = $CTAPTO + 1 ))
> 
>       if [ $CTAPTO -eq 3 -a $CTRCAR -ge 1]; then
>          NUMPTO=$NUMPTO$(printf ".")
>          CTAPTO=0
>       fi
>    done
> "pontuar.sh" 36L, 712C written
> [root@1353860 scripts]# ./pontuar.sh
> entre com um numero
> 1234234234
> [root@1353860 scripts]# ./pontuar.sh
> 
> so que ele nao me retorna nada...
> 
>  
> ______________________________________________________________
> ____________
> BOL - três anos com você. Venha pra festa e ganhe uma viagem!
> http://especial.bol.com.br/2002/3anos
> Ainda não tem AcessoBOL? Assine já! http://sac.bol.com.br
> 
> 
> 
> 
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de 
> programação, como perl, C etc. Quem insistir em não seguir 
> esta regra será moderado sem prévio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
http://www.listasdiscussao.cjb.net
---------------------------------------------------------------------
 

Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]