Inspiration
CST Term 1 at BCIT is hard enough for new students, especially the COMP-1113 because it involves a lot of new concepts and calculations. Also, some answers to practice questions can not be looked up online because it is uniquely modified by instructors, for example, to convert a number to BCIT 10 bits floating-point, while the standard floating-point is IEEE754 which is 8 bytes.
What it does
It has a built-in calculator to convert a number into BCIT 10 bits floating-point format, along with functionality that can convert decimals into hexadecimal, binary, and octal numbers. Almost everything you need for the math course is included in it.
How we built it
We used vue.js to build our fancy-looking calculator, and we use Node.js to build the back-end server for this web app.
Challenges we ran into
The algorithm of transferring numbers into floating-point is much harder than we expect. It took us almost 5 hours to figure out that we can use bit masking to get the exponent and mantissa for that number. Also, we need to find out a way to handle special cases such as small numbers and numbers exceeding the limit.
Accomplishments that we're proud of
We successfully implemented the algorithm of transferring decimal numbers into BTIC 10-bit floating-point. This is a pretty unique idea and we are really happy that we created something that cannot be searched up online before.
What we learned
Algorithm and math matter a lot in programming. If we want to be great programmers, we should definitely be great at math, otherwise, our code would probably be super slow and inefficient.
What's next for BCIT Calculator
Some of the functionality is not implemented yet, such as matrix calculation, which is also a headache for CST term 1 student (at least for us). We also plan to solve questions from COMP 2721, since some questions like calculating cache size, mm size, TLW, TSW, etc have some patterns that we can follow.
Log in or sign up for Devpost to join the conversation.