Skip to content

Enhanced Roman Numeral Converter with GUI, CLI, and Validation Features#1

Open
Mordekai66 wants to merge 2 commits into
Gabi111243:mainfrom
Mordekai66:new-features
Open

Enhanced Roman Numeral Converter with GUI, CLI, and Validation Features#1
Mordekai66 wants to merge 2 commits into
Gabi111243:mainfrom
Mordekai66:new-features

Conversation

@Mordekai66

Copy link
Copy Markdown

This PR enhances the Roman Numeral Converter with several new features:

New Features Added:

  • Graphical User Interface (GUI)—Built with Tkinter for user-friendly interactions

  • Command-Line Interface (CLI) - Support for both Roman-to-Integer and Integer-to-Roman conversions

  • Input Validation—Comprehensive validation for proper Roman numeral format

  • Bidirectional Conversion—Convert both Roman numerals to integers and integers to Roman numerals

  • Unit Tests—A comprehensive test suite covering all conversion functions and edge cases

  • Modular Architecture—Organized code structure with separate modules for converter, validator, and interfaces

Technical Improvements:

  • Modular package structure with roman_converter module

  • Enhanced error handling with descriptive error messages

  • Input validation to prevent invalid conversions

  • Multiple entry points (main.py, cli.py, gui.py) for different use cases

  • Comprehensive documentation with usage examples

Usage Examples:

CLI usage

python main.py XIV
python main.py 14 --reverse
python main.py XIV --validate

GUI usage

python gui.py

OR

python main --gui

This enhancement maintains backward compatibility while adding significant functionality and improving the user experience across different interaction modes.

@Gabi111243
Gabi111243 force-pushed the main branch 28 times, most recently from fb79aa8 to 1006c36 Compare September 18, 2025 18:03
@Gabi111243
Gabi111243 force-pushed the main branch 30 times, most recently from b0b10e9 to c630586 Compare September 23, 2025 20:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants