Calculadora com funções básicas

Publicado por Sandro Marcell 25/10/2007

[ Hits: 6.507 ]

Homepage: http://sanmarcell.wordpress.com

Download calc.tcl




Calculadora tosca com as funções básicas: adição, subtração, multiplicação e divisão.

  



Esconder código-fonte

#!/usr/bin/tcl
#
# Simples calculadora com funções básicas. (Versão Tcl)
#
# Sandro Marcell (sandro_marcell@yahoo.com.br)
#
# Os operadores válidos são:
# (+) adição
# (-) subtração
# (.) multiplicação
# (/) divisão

# Checando parâmetros:
if {$argc != 3} {
   puts stderr "Uso: [file tail $argv0] VALOR1 OPERADOR VALOR2
   \r(Ex.: [file tail $argv0] 6 + 1)
   \rOperadores válidos:
   (+) Adição
   (-) Subtração
   (.) Multiplicação
   (/) Divisão"
   exit 1
}

# Fatiando opções:
set VLR1 [lindex $argv 0]
set OP    [lindex $argv 1]
set VLR2 [lindex $argv 2]

# Checando valores:
if {[regexp {[^-0-9.0-9]} $VLR1] != 0} {
   puts stderr "\[$VLR1\] Valor inválido."
   exit 1
} elseif {[regexp {[^-0-9.0-9]} $VLR2] != 0} {
   puts stderr "\[$VLR2\] Valor inválido."
   exit 1
} 

# Se ocorrerem erros:
proc tclx_errorHandler {AVISO} {
   puts stderr "\a-> Erro de entrada/saída"
}

# Iniciando cálculos:
switch -- $OP {
   # Adição:
   "+" {
      # Calculando...
      set RST [expr ($VLR1 + $VLR2)]
      puts stdout "Resultado: $RST"
   }
   # Subtração:
   "-" {
      set RST [expr ($VLR1 - $VLR2)]
      puts stdout "Resultado: $RST"
   }
   # Multiplicação:
   "." {
      set RST [expr ($VLR1 * $VLR2)]
      puts stdout "Resultado: $RST"
   }
   # Divisão:
   "/" {
      set RST [expr ($VLR1 / $VLR2)]
      puts stdout "Resultado: $RST"
   }
   default {
      puts stderr "\[$OP\] Operador inválido.
      \rOperadores válidos:
      (+) Adição
      (-) Subtração
      (.) Multiplicação
      (/) Divisão"
   }
}
# Fim

Scripts recomendados

Cadeias aleatórias

Visualizador de imagem

tkFind

Calculadora em Tcl/Tk

Corretagem 0.1 - calcula corretagem padrão de operações da Bovespa


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts