1. VI Hackathón de Proyectos del Concurso
Universitario de Software Libre
2. ¿Qué es FerMath?
Objetivos
¿Qué podemos hacer con FerMath?
¿Cuál es la estructura de FerMath?
¿Qué tareas faltan por realizar actualmente?
3. FerMath se trata de un proyecto de cálculo de
interfaz sencilla.
Cuenta con una base de datos compuesta de:
◦ Fórmulas
◦ Magnitudes.
Cada una de ellas almacena sus unidades
correspondientes.
4. Crear una herramienta versátil para cálculo en
distintas ramas y especialidades
Conseguir una interfaz y un manejo sencillo e
intuitivo
Multiplataforma (Linux, Windows,…)
¿Versión android?
Hacer más vago al ser humano…
5. Al tratarse de algo tan genérico, las
posibilidades que puede ofrecer al usuario
son bastante amplias.
Entre ellas, podemos destacar:
◦ Cálculos simples (una calculadora de toda la vida).
6. ◦ Cálculos lógicos y algebraicos (sistemas de
ecuaciones, despejar variables, operadores
lógicos,…).
COLABORACIÓN
NECESARIA*
*(no se dan créditos extra)
8. ◦ Lo más novedoso: introducir datos (variables) de
problemas reales y pedirle al programa que de la
solución a dicho problema.
Ej: 5Kg 10m/s² Fuerza —> F=50N
9. FerMath se encuentra implementado en C++
La estructura de clases es la siguiente:
◦ class operator: almacena operadores uniendo
string y un id de operador
◦ class unit: almacena unidades a partir de
operadores para su conversión.
◦ class magnitude: almacena objetos de la clase
unit.
10. ◦ class variable: gestiona un tipo de dato que se
compone de números y unit. Ej: 5Kg, 5, xKg
◦ class expression: almacena una lista de
operaciones con variable y operator.
◦ class formula: almacena una relación entre
magnitudes de forma similar a la clase expression.
◦ class glossary: almacena todos los nombres con
los que se puede referenciar a una unidad o
magnitud.
11. unit magnitude formula data
glossary
Todas las unidades, magnitudes, … se almacenan en diversas
estructuras de datos
interfaz