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

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

Re: [shell-script] Re: [Novato/Dúvidas] Iniciante em shell script, calcu


From: Julio C. Neves
Subject: Re: [shell-script] Re: [Novato/Dúvidas] Iniciante em shell script, calculadoras...
Date: Fri, 29 Apr 2011 10:46:38 -0300

Fala Chico,
uma sugestão para vc implementar a versão 2.0

###########################
Elem=$(yad --form --image gnome-calculator --text "Bem vindo a Calculadora -
<big><b>by CHICO</b></big>" --field "Primeiro Número:" --field "Segundo
Número:" --field "Operação:CB" 0 0 'Soma!Subtração!Multiplicação!Divisão')
|| exit 1
###########################
IFS='|' read Num1 Num2 Opcao <<< "$Elem"
###########################

Usei as separações com jogo da velha, só para dizer que são somente duas
linhas de código, já que o e-mail vai quebrar tudo.

Nesse ponto vc já terá as variáveis Num1 Num2 Opcao com seus valores. Isso
significa que vc poderia trocar todo o código até o ninho de if's (que eu
trocaria por um case) por essas 2 linhas somente.

Alguém da lista me mandou um e-mail em pvt me falando do YAD. Testei o sw e
achei simplesmente revolucionário. Aconselho a todos o instalarem pois é um
fork do zenity com inúmeras facilidades a mais como o diálogo --form que
usei.

Falando em --form, poderíamos até esnobar usando SpinButtons para capturar
os números. Basta trocar a primeira linha por:

Elem=$(yad --form --image gnome-calculator --text "Bem vindo a Calculadora -
<big><b>by CHICO</b></big>" --field "Primeiro Número:NUM" --field "Segundo
Número:NUM" --field "Operação:CB" '0!0..100!1'
'0!0..100!1''Soma!Subtração!Multiplicação!Divisão') || exit 1

Se vcs instalarem, vão se surpreender inclusive com a qualidade da
apresentação. Já mandei um artigo para o Cantinho do Shell das dicas-l mas
não sei se foi publicado. se não foi, em breve o será.

Estou com mais um livro pronto e, entre outros temas, abordo o YAD, sobre o
qual escrevi mais de 70 páginas A4 de forma a explorar todos os seus
recursos.

OBS:
1 - O YAD já está com essa bola toda e ainda está na versão 0.10.1. Imagine
o que vem por aí.
2 - O autor do sw é um ucraniano, Victor Ananjevsky, que já convidei a dar
uma palestra na LatinoWare 2011.

Cordialmente,

Julio Neves

*Quer programar bem em Shell?*

*Use este endereço de e-mail, o Skype ou ☎ (21)8112-9988 ☎*
My profiles: [image: Twitter] <http://twitter.com/juliobash>
Contact me: [image: Skype/] julioneves1


Em 28 de abril de 2011 15:07, fampower <address@hidden> escreveu:

>
>
> Enilton, Boa tarde.
>
> Por esses dias fiz 2 calculadoras uma mais simples ou outra mais completa
> no sentindo de uso de comandos.
>
> Enviando a CALCULADORA SIMPLES AGORA, e no outra mensagem vou te enviar,
> com o tratamento da divisão de por ZERO e o uso de funçao.
>
> Lembrando se Copiar e COLAR devido os comentários em um editor VI, VIM,ou
> bloco de notas que seja já fica mais limpo o codigo.
>
> #!/bin/bash
> #
> #calculadora001.sh - Calculadora Simples -
> #
> ######################################
> #Autor: Francisco A. de Moraes #
> ######################################
> #
> #
> #
> #----------------------------------------------------
> #Licenca Livre - Normas GPL
> #----------------------------------------------------
> #
> #
> #----------------------------------------------------
> #Descricao: O programa realiza calculo simples. (adicao, multiplicacao,
> subtracao e divisao)
> #----------------------------------------------------
> #
> #
> #----------------------------------------------------
> #Historico de Desenvolvimento
> #-v1.0 - 07/04/2011 - Francisco A. de Moraes
> # - Tratando Parametros para receber valores e operadores
> #-v1.1 - 08/04/2011 - Francisco A. de Moraes
> #-Corrigindo parametro e trabalhando com o IF
> #----------------------------------------------------
> #
> clear
> echo ""
> echo "----------------------------------------------------------"
> echo " Bem vindo a Calculadora - by CHICO "
> echo ""
> echo ""
> echo ""
> echo "----------------------------------------------------------"
> echo
> "##############################################################################################"
> echo ""
> echo " Versao 1.1a - GPL - "
> echo ""
> echo ""
> echo
> "###############################################################################################"
> sleep 2
>
> echo ""
> echo "Digite o primeiro valor: "
> read NUM1
> echo "Digite o segundo valor: "
> read NUM2
>
> clear
>
> echo ""
> echo "----------------------------------------------------------"
> echo " Bem vindo a Calculadora - by CHICO "
> echo "----------------------------------------------------------"
>
> echo "
> 1 - SOMAR
> 2 - SUBTRAIR
> 3 - MULTIPLICAR
> 4 - DIVIDIR
> "
>
> echo ""
> read OPCAO
>
> if [ "$OPCAO" = '1' ]
> then
> RESU=$((NUM1+NUM2))
> echo "$RESU"
>
> elif [ "$OPCAO" = '2' ]
> then
> RESU=$((NUM1-NUM2))
> echo "$RESU"
>
> elif [ "$OPCAO" = '3' ]
> then
> RESU=$((NUM1*NUM2))
> echo "$RESU"
>
> elif [ "$OPCAO" = '4' ]
> then
> RESU=$((NUM1/NUM2))
> echo "$RESU"
> fi
>
> echo "Finalizado, deseja utilizar novamente.? [s/n]"
> read OPCAO1
>
> if [ "$OPCAO1" = 's' ]
> then
> ./calculadora001
> else
> exit
> fi
>
> --- Em address@hidden, "enilton1sh" <binbash.sh@...>
> escreveu
>
> >
> > Hmm então terei que mudar todas as minhas calculadoras tirando a função
> do bash e passar para o bc. rsrs
> >
> > Obrigado por responder. o/
> >
> > --- Em address@hidden, Tiago Peczenyj <tiago.peczenyj@>
> escreveu
> > >
> > > Com bash suporta apenas aritmetica de inteiros. Se quiser algo alem use
> o bc
> > > ou o dc, inclusive eles tem boas features (como o bc que suporta
> numeros
> > > incrivelmente grantes).
> > >
> > >
> > > 2011/3/9 enilton1sh <binbash.sh@>
> > >
> > > >
> > > >
> > > > Oi pessoal, Me chamo Enilton e sou novato na programação shell script
> e no
> > > > momento só sei fazer calculadoras. @_@
> > > >
> > > > Antes de tudo estava pesquisando no google calculadoras em shell
> script e
> > > > achei duas interessante no site "viva o linux", mais aqui irei falar
> somente
> > > > sobre uma, já que procuro nas duas a mesma resposta para o meu
> "problema".
> > > > obs: Nas minhas calc eu uso os parâmetros "case $opcao in ... esac",
> "$((
> > > > ))", para realizar as funções.
> > > >
> > > > Calculadora-para-eletrodomesticos : Lucas Villela Canôas
> > > > Bom aqui ele usa um método diferente do meu usando a calculadora bc,
> o
> > > > ponto que quero
> > > > chegar é que assim desse modo ele aceita "." e ",".
> > > >
> > > > echo "scale=3; $ptnc/1000" | bc`
> > > >
> > > > exemplo: echo "scale=3; 8000/1000" | bc`
> > > > > 8,000
> > > >
> > > > uso: echo $((8000/1000))
> > > > >8
> > > >
> > > > Tem como eu utilizar a opção "scale" junto com '$(())'?
> > > > Logo abaixo irei postar minhas calculadoras.
> > > > Obs.: Um script foi usado para "laçar" as calculadoras atráves da
> escolha
> > > > por opção, executando-as.
> > > > Eu poderia ter criado todos em um só script, seria muito fácil e sem
> graça
> > > > e com pouco aprendizado.
> > > >
> > > > Google Doc's
> > > > Estudo.sh: http://va.mu/Ag2
> > > > soma.sh: http://va.mu/Ag3
> > > > subtrair.sh: http://va.mu/Ag6
> > > > multiplicar.sh: http://va.mu/Ag7
> > > > dividir.sh: http://va.mu/Ag8
> > > > expo.sh: http://va.mu/Ag9
> > > > mult_soma.sh: http://va.mu/AhA
> > > > %.sh: http://va.mu/AhB
> > > >
> > > > Não reparem em algum erro de digitação!
> > > >
> > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Tiago B. Peczenyj
> > > Linux User #405772
> > >
> > > http://pacman.blog.br
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> >
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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