comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Calculadora en Ruby con Shoes

  • 0 Respuestas
  • 1463 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5380
  • Actividad:
    75%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« en: Febrero 24, 2010, 04:16:07 pm »
La interfaz visual (hecha con Shoes) no esta muy alli pero algo es algo :P

Código: Ruby
  1. #Calculadora con funciones logar?tmicas y trigonom?tricas
  2. #by Sh4van3
  3. Shoes.app(:title=>"Calculadora", :width=>200, :height=> 300, :resizable=> false) do
  4.         stack :margin=>10 do
  5.         @box=edit_box(:width=> 150,:height=>30)
  6. end
  7. @r=""
  8. @a=String.new
  9. button("//", :width=>50) do
  10.         @a=@a.to_f
  11.         @sq=Math.sqrt(@a)
  12.         @a=@sq
  13.         @sq=@sq.to_s
  14.         @box.text=@sq
  15. end
  16. button("**", :width=>50) do
  17.         @a=@a.to_f
  18.         @sq=@a**2
  19.         @a=@sq
  20.         @sq=@sq.to_s
  21.         @box.text=@sq
  22. end
  23. button("exp", :width=>50) do
  24.         @a=@a.to_f
  25.         @sq=Math.exp(@a)
  26.         @a=@sq
  27.         @sq=@sq.to_s
  28.         @box.text=@sq
  29. end
  30. stack do
  31. end
  32. button("log", :width=>75) do
  33.         @a=@a.to_f
  34.         @sq=Math.log(@a)
  35.         @a=@sq
  36.         @sq=@sq.to_s
  37.         @box.text=@sq
  38. end
  39. button("nep", :width=>75) do
  40.         @a=@a.to_f
  41.         @sq=Math.log10(@a)
  42.         @a=@sq
  43.         @sq=@sq.to_s
  44.         @box.text=@sq
  45. end
  46. stack do
  47. end
  48. button "sin" do
  49.         @a=@a.to_f
  50.         @sq=Math.sin(@a)
  51.         @a=@sq
  52.         @sq=@sq.to_s
  53.         @box.text=@sq
  54. end
  55. button "cos" do
  56.         @a=@a.to_f
  57.         @sq=Math.cos(@a)
  58.         @a=@sq
  59.         @sq=@sq.to_s
  60.         @box.text=@sq
  61. end
  62. button "tan" do
  63.         @a=@a.to_f
  64.         @sq=Math.tan(@a)
  65.         @a=@sq
  66.         @sq=@sq.to_s
  67.         @box.text=@sq
  68. end
  69. stack do
  70. end
  71.         button "1" do
  72.         @a<<"1"
  73.         @box.text= @a
  74.         end            
  75.         button "2" do
  76.                 @a<< "2"
  77.                 @box.text=@a
  78.         end
  79.         button "3" do
  80.                 @a<< "3"
  81.                 @box.text=@a
  82.         end
  83.         button "+" do
  84.         case @r
  85.                 when ""
  86.                 @b=@a.to_f
  87.                 @a=""
  88.                 @r="+"
  89.                 when "+"
  90.                 @r="+"
  91.                 when "-"
  92.                 @r="+"
  93.                 when "x"
  94.                 @r="+"
  95.                 when "/"
  96.                 @r="+"
  97.         end
  98. end
  99.         stack do
  100.         end
  101.         button "4" do
  102.                 @a<<"4"
  103.                 @box.text=@a
  104.         end
  105.         button "5" do
  106.                 @a<<"5"
  107.                 @box.text=@a
  108.         end
  109.         button "6" do
  110.                 @a<<"6"
  111.                 @box.text=@a
  112.         end
  113. button "-" do
  114.         case @r
  115.                 when ""
  116.                 @b=@a.to_f
  117.                 @a=""
  118.                 @r="-"
  119.                 when "-"
  120.                 @r="-"
  121.                 when "+"
  122.                 @r="-"
  123.                 when "x"
  124.                 @r="-"
  125.                 when "/"
  126.                 @r="-"
  127.         end
  128. end
  129.         stack do
  130.         end
  131.         button "7" do
  132.                 @a<<"7"
  133.                 @box.text=@a
  134.         end
  135.         button "8" do
  136.                 @a<<"8"
  137.                 @box.text=@a
  138.         end
  139.         button "9" do
  140.                 @a<< "9"
  141.                 @box.text=@a
  142.         end
  143.         button "x" do
  144.         case @r
  145.                 when ""
  146.                 @b=@a.to_f
  147.                 @a=""
  148.                 @r="x"
  149.                 when "+"
  150.                 @r="x"
  151.                 when "-"
  152.                 @r="x"
  153.                 when "x"
  154.                 @r="x"
  155.                 when "/"
  156.                 @r="x"
  157.         end
  158. end
  159.         stack do
  160.         end
  161.         button "0" do
  162.                 @a<<"0"
  163.                 @box.text=@a
  164.         end
  165.         button("=", :width=>75) do
  166.         case @r
  167.                 when "+"
  168.                         @a=@a.to_f
  169.                         @sol=@b+@a
  170.                         @sol=@sol.to_s
  171.                         @box.text=@sol
  172.                         @a=@sol
  173.                         @b=""
  174.                 when "-"
  175.                         @a=@a.to_f
  176.                         @sol=@b-@a
  177.                         @sol=@sol.to_s
  178.                         @box.text=@sol
  179.                         @a=@sol
  180.                         @b=""
  181.                 when "x"
  182.                         @a=@a.to_f
  183.                         @sol=@b*@a
  184.                         @sol=@sol.to_s
  185.                         @box.text=@sol
  186.                         @a=@sol
  187.                         @b=""
  188.                 when "/"
  189.                         @a=@a.to_f
  190.                         @sol=@b/@a
  191.                         @sol=@sol.to_s
  192.                         @box.text=@sol
  193.                         @a=@sol
  194.                         @b=""
  195.         end
  196. end
  197. button "/" do
  198.         case @r
  199.                 when ""
  200.                 @b=@a.to_f
  201.                 @a=""
  202.                 @r="+"
  203.                 when "+"
  204.                 @r="+"
  205.                 when "-"
  206.                 @r="+"
  207.                 when "x"
  208.                 @r="+"
  209.                 when "/"
  210.                 @r="+"
  211.         end
  212. end
  213. stack do
  214. end
  215. button("DEL", :width=>150) do
  216.         @box.text=""
  217.         @a=""
  218.         @b=""
  219.         @sol=""
  220.         @sq=""
  221. end
  222. end

« Última modificación: Julio 31, 2014, 10:14:55 pm por Expermicid »


 

¿Te gustó el post? COMPARTILO!



[Ruby] Traductor de Decimal a Ascii / Ascii a Decimal

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1466
Último mensaje Febrero 24, 2010, 04:16:38 pm
por ANTRAX
Lenguaje Ruby, aprendiendo poco a poco.

Iniciado por Alejandro9999

Respuestas: 2
Vistas: 1450
Último mensaje Agosto 15, 2013, 02:58:39 pm
por Alejandro9999
Crafting rails 4 applications (Manual de Ruby on Rails 4)

Iniciado por Alejandro9999

Respuestas: 0
Vistas: 895
Último mensaje Marzo 01, 2014, 05:34:50 pm
por Alejandro9999
Desarrollo de aplicaciones Perl, PHP, Python y "Ruby on Rails"

Iniciado por Alejandro9999

Respuestas: 0
Vistas: 1135
Último mensaje Junio 13, 2014, 03:27:08 pm
por Alejandro9999
Shoesrb donde puedes hacerle una interfaz grafica a una aplicación hecha en Ruby

Iniciado por Alejandro9999

Respuestas: 3
Vistas: 1738
Último mensaje Mayo 21, 2013, 03:51:00 am
por D4rkC0d3r