Repository: TheAlgorithms/Python

Issue:
System of linear equation in 2 variable.
### Feature description

I want to implement a new module inside the matrix ... To solve the System of linear equations in 2 variables using Cramer's Rule. 

### Would you like to work on this feature?

- [X] Yes, I want to work on this feature!


Discussion:
Please, assign me this, I want to work on this.
Bro, I want to work on this that's why I CREATED THIS ISSUE 🥲🥲 I m not maintainer ... I m contributor. 
Please leave this, try other issues.
Please assign me this issue.

Resolving patch:
diff --git a/matrix/cramers_rule_2x2.py b/matrix/cramers_rule_2x2.py
new file mode 100644
--- /dev/null
+++ b/matrix/cramers_rule_2x2.py
@@ -0,0 +1,82 @@
+# https://www.chilimath.com/lessons/advanced-algebra/cramers-rule-with-two-variables
+# https://en.wikipedia.org/wiki/Cramer%27s_rule
+
+
+def cramers_rule_2x2(equation1: list[int], equation2: list[int]) -> str:
+    """
+    Solves the system of linear equation in 2 variables.
+    :param: equation1: list of 3 numbers
+    :param: equation2: list of 3 numbers
+    :return: String of result
+    input format : [a1, b1, d1], [a2, b2, d2]
+    determinant = [[a1, b1], [a2, b2]]
+    determinant_x = [[d1, b1], [d2, b2]]
+    determinant_y = [[a1, d1], [a2, d2]]
+
+    >>> cramers_rule_2x2([2, 3, 0], [5, 1, 0])
+    'Trivial solution. (Consistent system) x = 0 and y = 0'
+    >>> cramers_rule_2x2([0, 4, 50], [2, 0, 26])
+    'Non-Trivial Solution (Consistent system) x = 13.0, y = 12.5'
+    >>> cramers_rule_2x2([11, 2, 30], [1, 0, 4])
+    'Non-Trivial Solution (Consistent system) x = 4.0, y = -7.0'
+    >>> cramers_rule_2x2([4, 7, 1], [1, 2, 0])
+    'Non-Trivial Solution (Consistent system) x = 2.0, y = -1.0'
+
+    >>> cramers_rule_2x2([1, 2, 3], [2, 4, 6])
+    Traceback (most recent call last):
+        ...
+    ValueError: Infinite solutions. (Consistent system)
+    >>> cramers_rule_2x2([1, 2, 3], [2, 4, 7])
+    Traceback (most recent call last):
+        ...
+    ValueError: No solution. (Inconsistent system)
+    >>> cramers_rule_2x2([1, 2, 3], [11, 22])
+    Traceback (most recent call last):
+        ...
+    ValueError: Please enter a valid equation.
+    >>> cramers_rule_2x2([0, 1, 6], [0, 0, 3])
+    Traceback (most recent call last):
+        ...
+    ValueError: No solution. (Inconsistent system)
+    >>> cramers_rule_2x2([0, 0, 6], [0, 0, 3])
+    Traceback (most recent call last):
+        ...
+    ValueError: Both a & b of two equations can't be zero.
+    >>> cramers_rule_2x2([1, 2, 3], [1, 2, 3])
+    Traceback (most recent call last):
+        ...
+    ValueError: Infinite solutions. (Consistent system)
+    >>> cramers_rule_2x2([0, 4, 50], [0, 3, 99])
+    Traceback (most recent call last):
+        ...
+    ValueError: No solution. (Inconsistent system)
+    """
+
+    # Check if the input is valid
+    if not len(equation1) == len(equation2) == 3:
+        raise ValueError("Please enter a valid equation.")
+    if equation1[0] == equation1[1] == equation2[0] == equation2[1] == 0:
+        raise ValueError("Both a & b of two equations can't be zero.")
+
+    # Extract the coefficients
+    a1, b1, c1 = equation1
+    a2, b2, c2 = equation2
+
+    # Calculate the determinants of the matrices
+    determinant = a1 * b2 - a2 * b1
+    determinant_x = c1 * b2 - c2 * b1
+    determinant_y = a1 * c2 - a2 * c1
+
+    # Check if the system of linear equations has a solution (using Cramer's rule)
+    if determinant == 0:
+        if determinant_x == determinant_y == 0:
+            raise ValueError("Infinite solutions. (Consistent system)")
+        else:
+            raise ValueError("No solution. (Inconsistent system)")
+    else:
+        if determinant_x == determinant_y == 0:
+            return "Trivial solution. (Consistent system) x = 0 and y = 0"
+        else:
+            x = determinant_x / determinant
+            y = determinant_y / determinant
+            return f"Non-Trivial Solution (Consistent system) x = {x}, y = {y}"


Test patch: