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

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

Re: [shell-script] Troca de letras


From: Gentil de Bortoli Jr
Subject: Re: [shell-script] Troca de letras
Date: Tue, 03 Jan 2006 10:56:05 -0200
User-agent: Thunderbird 1.5 (X11/20051201)

Roger Martins wrote:
Digite aqui um nome: ROGER

Depois de digitado ele me voltasse assim:

Enigma: QNFDQ

Roger, o MrBits, Júlio e Humberto já deram idéias.
Aqui vai mais uma, que é mais complicada, mas que pode servir como exercício também. Bom, OK. Na verdade o fato é que eu não enxerguei as soluçòes mais simples antes. :)

Divirta-se.

----------------------8<----------------------

$ cat enigma.sh
#!/bin/bash

if [ ${#} -lt 2 ]; then
   echo "Uso: ${0} <String> <+>|<->"
   exit 1
fi

STRING=$(echo ${1} | sed 's/\(.\)/\1 /g')

for i in `seq 65 90`; do
   LETRA[${i}]=$(echo $i | awk '{printf(" %c", $1)}')
done

for letra in ${STRING}; do
   ORD=$(echo ${letra} | od -A n -t uC | tr -s " " | cut -d " " -f 2)
   echo -n ${LETRA[$((${ORD}${2}1))]}
done
echo

---------------------->8----------------------

$ ./enigma.sh ROGER -
QNFDQ
$ ./enigma.sh QNFDQ +
ROGER


[]s
--
Gentil de Bortoli Júnior
http://gentil.bortoli.com.br
KeyID: 0x8383E070 - www.keyserver.net

"There Is No Gene For The Human Spirit"


reply via email to

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