Raffles University BAI21113 Software Engineering Assignment work
This project is a BMI (Body Mass Index) calculator built using Python and Tkinter. It provides users with an easy-to-use interface to input their weight and height and calculates their BMI. The result categorizes the user's BMI into underweight, normal, overweight, or obesity.
- User-friendly graphical interface using Tkinter.
- Real-time BMI calculation based on user input.
- Clear BMI categorization (Underweight, Normal, Overweight, Obesity).
- Clone the repository:
- Github Desktop clone https://github.com/MinYuOuO/SE-Assignment.git
- git clone git@github.com:MinYuOuO/SE-Assignment.git
- gh repo clone MinYuOuO/SE-Assignment
- Install used library
- pip install tk
- Run the application:
- python Main.py
- Implemented the core function
BMI_Cal(weight, height), which calculates BMI and categorizes the result. - Created a simple Tkinter GUI for user input and display of results.
- Added error handling for invalid inputs and zero height.
- Improved result text styling for better readability.
- Implemented input validation to ensure numerical values.
- Moved BMI calculation logic to a separate function (
Function.py) to improve modularity. - Enhanced UI responsiveness.
- Ensured proper layout and alignment of GUI components.
- fix iteration 3,4 wrong commit
- update correct documentation
- fix invalid calculation that set with wrong height
We used a structured branching approach:
main: Main interface of the project.feature/ui-enhancements: Added UI improvements and styling updates.feature/error-handling: Introduced better error handling.- Merging was performed via pull requests to ensure code reviews before integrating changes into the
mainbranch.
- Backlog: Record the information and improve task organization.
- To Do: Listed upcoming tasks such as feature development and bug fixes.
- In Progress: Tracked ongoing tasks.
- Done: Marked finished tasks.
- Iteration: Show iteration made.
Contributions are welcome! Feel free to open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
Special thanks to all contributors and testers for making this project better!