Advertisement
juan-gonzalez22

CalcWiz 1.1

Feb 14th, 2024 (edited)
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Racket 8.72 KB | None | 0 0
  1. #lang racket
  2.  
  3. ;-- INICIO --
  4. (define (ayuda)
  5. (displayln "---------------------------------------------------\n")
  6. (displayln "     :          -=======-:++++++++--********=     ")
  7. (displayln "   -=-        -+++++++=-+#######+=#%%%%%%%%%%%=   ")
  8. (displayln " :===-      -****::::.=***+::::.:-----------###*: ")
  9. (displayln " -===-      =###*     -===:                 ++++: ")
  10. (displayln " -===-      =###*     -===:         :......:++++. ")
  11. (displayln " -===-      =###*     -===:       -##======+++-   ")
  12. (displayln " -===-      =###*     -===:     -#%%*------=-     ")
  13. (displayln " -===-      =###*     -===:     %%%%-             ")
  14. (displayln "  :==+*++++++++-      -==:      %%#-              ")
  15. (displayln "    :+*++++++-        -:        #-                ")
  16. (displayln "      ......                                      \n")
  17. (displayln "---------------------------------------------------")
  18. (displayln "\n--- ¡Bienvenido a CalcWiz 1.1! ----")
  19. (displayln "Este es un asistente para cálculos matemáticos y geométricos")
  20. (displayln "Es tan sencillo como escoger qué cálculo quieres hacer y proporcionar\nlos valores necesarios")
  21. (displayln "Para escoger un cálculo,simplemente escribe su función y el proceso iniciará\n")
  22. (displayln "Estas son los cálculos que CalcWiz puede resolver")
  23. (displayln "1. Volumen del cilindro (volumen_cilindro)")
  24. (displayln "2. Volumen de la esfera (volumen_esfera)")
  25. (displayln "3. Volumen del cono (volumen_cono)")
  26. (displayln "4. Hipotenusa (hipotenusa)")
  27. (displayln "5. Área del cono (area_cono)")
  28. (displayln "6. Volumen del cono truncado (volumen_cono_truncado)")
  29. (displayln "7. Convertir grados Fahrenheit a grados Celsius (fahrenheit_a_celsius)")
  30. (displayln "8. Distancia entre dos puntos (distancia_dos_puntos)")
  31. (displayln "9. Área del disco (area_disco)")
  32. (displayln "10. Pendiente de una línea recta (pendiente)\n")
  33. (displayln "para volver a mostrar este menú, simplemente escribe (ayuda)")
  34. (displayln "¡Gracias por usar CalcWiz!")
  35. (displayln "\n---------------------------------------------------")
  36. (displayln "CalcWiz 1.1 ha sido programado por Juan José González Ríos, estudiante")
  37. (displayln "de primer semestre de Ingeniería de Sistemas y Computación en la ")
  38. (displayln "Universidad Tecnológica de Pereira el día 16 de Febrero de 2024"))
  39.  
  40. (ayuda)
  41.  
  42. ; -- FUNCIONES MATEMÁTICAS --
  43.  
  44. ;Volumen del Cilindro (cyVolume)
  45. (define (cyVolume r h)
  46.   (* pi (expt r 2) h)
  47.   )
  48. ;Volumen de Esfera (spVolume)
  49. (define (spVolume r)
  50.   (* 4/3 pi (expt r 3))
  51.   )
  52. ;Volumen del Cono (coVolume)
  53. (define (coVolume r h)
  54.   (* 4/3 pi (expt r 2) h)
  55.   )
  56. ;Hipotenusa (hypotenuse)
  57. (define (hypotenuse b h)
  58.   (sqrt (+ (expt b 2) (expt h 2)))
  59.   )
  60. ;Área del Cono (coArea)
  61. (define (coArea r h)
  62.   (+(* pi (expt r 2))(* pi r (hypotenuse r h)))
  63.   )
  64. ;Volumen del Cono Truncado (truCoVolume)
  65. (define (truCoVolume R r h)
  66.   (* pi (+ (expt R 2)(expt r 2)(* R r)) (/ h 3))
  67.   )
  68. ;Fahrenheit a Celsius (fToCelsius)
  69. (define (fToCelsius f)
  70.   (*(- f 32)(/ 5 9))
  71.   )
  72. ;Distancia entre Dos Puntos (twoPointDistance)
  73. (define (twoPointDistance x1 x2 y1 y2)
  74.   (sqrt (+ (expt (- x2 x1) 2) (expt (- y2 y1) 2)))
  75.   )
  76. ;Pendiente de una Recta (slope)
  77. (define (slope x1 x2 y1 y2)
  78.   (/ (- y2 y1) (- x2 x1))
  79.   )
  80. ;Area del Disco (diArea)
  81. (define (diArea r)
  82.  (* pi (expt r 2))
  83.   )
  84. ; ----------------------------------------------------------------------
  85.  
  86. ; -- FUNCIONES DE INTERFAZ --
  87.  
  88. ;Volumen del Cilindro (volumen_cilindro)
  89. (define (volumen_cilindro)
  90.   (define radio 0)
  91.   (define altura 0)
  92.    (displayln "----- VOLUMEN DEL CILINDRO -----")
  93.    (displayln "Para poder calcular el volumen del cilindro\nson necesarios dos valores")
  94.    (displayln "Un radio y una altura")
  95.    (displayln "\n¿Cuál es el valor del radio?")
  96.   (set! radio (read))
  97.    (displayln "¿Cuál es el valor de la altura")
  98.   (set! altura (read))
  99.    (displayln "El volumen del cilindro es:")
  100.    (cyVolume radio altura)
  101. )
  102. ;Volumen de esfera (volumen_esfera)
  103. (define (volumen_esfera)
  104.   (define radio 0)
  105.    (displayln "----- VOLUMEN DE LA ESFERA -----")
  106.    (displayln "Para poder calcular el volumen de la esfera\nes necesario un valor")
  107.    (displayln "Un radio")
  108.    (displayln "\n¿Cuál es el valor del radio?")
  109.   (set! radio (read))
  110.    (displayln "El volumen de la esfera es")
  111.    (spVolume radio)
  112. )
  113. ;Volumen del cono (volumen_cono)
  114. (define (volumen_cono)
  115.   (define radio 0)
  116.   (define altura 0)
  117.    (displayln "----- VOLUMEN DEL CONO -----")
  118.    (displayln "Para poder calcular el volumen del cono\nson necesarios dos valores")
  119.    (displayln "Un radio y una altura")
  120.    (displayln "\n¿Cuál es el valor del radio?")
  121.   (set! radio (read))
  122.    (displayln "¿Cuál es el valor de la altura")
  123.   (set! altura (read))
  124.    (displayln "El volumen del cono es:")
  125.    (coVolume radio altura)
  126. )
  127. ;Hipotenusa (hipotenusa)
  128. (define (hipotenusa)
  129.   (define base 0)
  130.   (define altura 0)
  131.    (displayln "----- HIPOTENUSA -----")
  132.    (displayln "Para poder calcular la hipotenusa\nson necesarios dos valores")
  133.    (displayln "Una base y una altura")
  134.    (displayln "\n¿Cuál es el valor de la base?")
  135.   (set! base (read))
  136.    (displayln "¿Cuál es el valor de la altura")
  137.   (set! altura (read))
  138.    (displayln "La hipotenusa es:")
  139.    (hypotenuse base altura)
  140. )
  141. ;Área del cono (area_cono)
  142. (define (area_cono)
  143.   (define radio 0)
  144.   (define altura 0)
  145.    (displayln "----- ÁREA DEL CONO -----")
  146.    (displayln "Para poder calcular el área del cono\nson necesarios dos valores")
  147.    (displayln "Un radio y una altura")
  148.    (displayln "\n¿Cuál es el valor del radio?")
  149.   (set! radio (read))
  150.    (displayln "¿Cuál es el valor de la altura")
  151.   (set! altura (read))
  152.    (displayln "El volumen del cono es:")
  153.    (coArea radio altura)
  154. )
  155. ;Volumen del Cono Truncado (volumen_cono_truncado)
  156. (define (volumen_cono_truncado)
  157.   (define radioMayor 0)
  158.   (define radioMenor 0)
  159.   (define altura 0)
  160.    (displayln "----- VOLUMEN DEL CONO TRUNCADO -----")
  161.    (displayln "Para poder calcular el volumen del cono truncado\nson necesarios tres valores")
  162.    (displayln "Un radio mayor, un radio menor y una altura")
  163.    (displayln "\n¿Cuál es el valor del radio mayor?")
  164.   (set! radioMayor (read))
  165.    (displayln "¿Cuál es el valor del radio menor")
  166.   (set! radioMenor (read))
  167.    (displayln "¿Cuál es el valor de la altura")
  168.   (set! altura (read))
  169.    (displayln "El volumen del cono truncado es:")
  170.    (truCoVolume radioMayor radioMenor altura)
  171.   )
  172. ;Convertir Fahrenheit a Celsius (fahrenheit_a_celsius)
  173. (define (fahrenheit_a_celsius)
  174.   (define fahrenheit 0)
  175.    (displayln "----- CONVERTIR GRADOS FAHRENHEIT A CELSIUS -----")
  176.    (displayln "Para poder convertir grados Fahrenheit a Celsius\nes necesario un valor")
  177.    (displayln "Los grados Fahrenheit")
  178.    (displayln "\n¿Cuántos grados Fahrenheit son?")
  179.   (set! fahrenheit (read))
  180.    (displayln "Estos equivalen en grados Celsius a:")
  181.    (fToCelsius fahrenheit)
  182.   )
  183. ;Distancia entre Dos Puntos (distancia_dos_puntos)
  184. (define (distancia_dos_puntos)
  185.   (define xUno 0)
  186.   (define xDos 0)
  187.   (define yUno 0)
  188.   (define yDos 0)
  189.    (displayln "----- DISTANCIA ENTRE DOS PUNTOS -----")
  190.    (displayln "Para hallar la distancia entre dos puntos\nson necesarios 4 valores")
  191.    (displayln "Las componentes X y Y de cada punto")
  192.    (displayln "\n¿Cuál es la componente X del punto 1?")
  193.   (set! xUno (read))
  194.    (displayln "¿Cuál es la componente Y del punto 1?")
  195.   (set! yUno (read))
  196.    (displayln "¿Cuál es la componente X del punto 2?")
  197.   (set! xDos (read))
  198.    (displayln "¿Cuál es la componente Y del punto 2?")
  199.   (set! yDos (read))
  200.    (displayln "La distancia entre ambos puntos es de:")
  201.    (twoPointDistance xUno xDos yUno yDos)
  202.   )
  203. ;pendiente de una recta (pendiente)
  204. (define (pendiente)
  205.   (define xUno 0)
  206.   (define xDos 0)
  207.   (define yUno 0)
  208.   (define yDos 0)
  209.    (displayln "----- PENDIENTE DE UNA RECTA -----")
  210.    (displayln "Para hallar la pendiente de una recta\nson necesarios 4 valores")
  211.    (displayln "Las componentes X y Y de dos puntos que pertenezcan a la recta")
  212.    (displayln "\n¿Cuál es la componente X del punto 1?")
  213.   (set! xUno (read))
  214.    (displayln "¿Cuál es la componente Y del punto 1?")
  215.   (set! yUno (read))
  216.    (displayln "¿Cuál es la componente X del punto 2?")
  217.   (set! xDos (read))
  218.    (displayln "¿Cuál es la componente Y del punto 2?")
  219.   (set! yDos (read))
  220.    (displayln "La pendiente de la recta que pasa por estos puntos es:")
  221.    (slope xUno xDos yUno yDos)
  222.   )
  223. ;Area del disco
  224. (define (area_disco)
  225.   (define radio 0)
  226.    (displayln "----- ÁREA DEL DISCO -----")
  227.    (displayln "Para hallar el area del disco\nes necesario un valor")
  228.    (displayln "Un radio")
  229.    (displayln "\n¿Cuál es el valor del radio?")
  230.   (set! radio (read))
  231.    (displayln "El valor del area del disco es")
  232.    (diArea radio)
  233.    )
Tags: #math
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement