Solution
Bhaumik answered on
Nov 12 2024
Lab [X] report
Executive Summary
1. Input Validation:
· Phone numbers are validated using a regex pattern ^\d{3}-\d{3}-\d{4}$.
· Zip codes are validated with the pattern ^\d{5}-\d{4}$.
2. Matrix Input:
· A function get_matrix_input() gathers 3x3 matrix values with validation for numeric input.
3. Matrix Operations:
· The perform_operation function applies addition, subtraction, matrix multiplication (using np.matmul), or element-wise multiplication based on user choice.
4. Result Display:
· The display_results function prints the matrix result, its transpose, row mean, and column mean.
5. Program Loop:
· The program loops until the user decides to exit, ensuring a continuous experience.
This python application validates user inputs and performs matrix operations. It supports both phone number and zip code validation. Users can perform addition and subtraction and element-wise multiplication on two 3x3 matrices. The program will calculate the results, provide transposes, and compute row and column means of the resulting matrices. Test cases were designed for each feature to ensure it worked co
ectly. For instance, Test Case 1 and Test Case 2 validate that the phone numbers and zip codes are in the proper format, and test cases Test Cases 3 through 6 validate the execution of the matrix operations-addition, subtraction, multiplication, and element by element multiplication of matrices. All these test cases had expected results that validated the working of the program for multiple scenarios. This will integrate user input validation with the mathematical operations so that a matrix-based application can be made interactive and reliable.
Testing
Test Case Table
Test Cases
Description
Expected Output
Actual Output
Pass/Fail
Test Case 1
Phone Number: 555-555-5555
Valid phone numbe
Valid phone numbe
Pass
Test Case 2
Zip Code: 21022-3213
Valid zip code
Valid zip code
Pass
Test Case 3
Matrix Operation: Addition of matrices
Matrix addition result, transpose, row mean, column mean
Matrix addition result, transpose, row mean, column mean
Pass
Test Case 4
Matrix Operation: Subtraction of matrices
Matrix subtraction result, transpose, row mean, column mean
Matrix subtraction result, transpose, row mean, column mean
Pass
Test Case 5
Matrix Operation: Multiplication of matrices
Matrix multiplication result, transpose, row mean, column mean
Matrix...