Beispiel #1
0
    def mx_rank(self):
        print("\n Operace: hodnost matice:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx)
        print("~(rank(A))~")

        self.__current_operation = MatrixREF(mx)
        mx_res = self.__current_operation.calculate_ref()
        self.operation_result = self.__current_operation.rank
        print(self.operation_result)
Beispiel #2
0
    def mx_determinant(self):
        print("\n Operace výpočet determinantu:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx)
        print("~(det(A))~")

        self.__current_operation = MatrixDeterminant(mx)
        self.operation_result = self.__current_operation.calculate_determinant(
        )

        print(self.operation_result)
Beispiel #3
0
    def mx_rref(self):
        print("\nOperace: RREF:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx)
        print("~(RREF)~")

        print(" - " * (mx.m * 2))

        self.__current_operation = MatrixRREF(mx)
        self.operation_result = self.__current_operation.calculate_rref()
        MatrixConsolePrinter.print_default(self.operation_result)
Beispiel #4
0
    def mx_transpose(self):
        print("\nOperace: Transpozice:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx)
        print("~(A^(T))~")
        print(" - " * (mx.m * 2))

        self.__current_operation = MatrixTransposition(mx)
        self.operation_result = self.__current_operation.calculate_transpose()

        MatrixConsolePrinter.print_default(self.operation_result)
Beispiel #5
0
    def mx_inverse(self):

        print("\nOperace: určení inverzní matice:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx)
        print("~(A^(-1))~")

        print(" - " * (mx.m * 2))

        self.__current_operation = MatrixInversion(mx)
        self.operation_result = self.__current_operation.calculate_inversion_of_matrix(
        )

        if self.__current_operation.inversion_state:
            MatrixConsolePrinter.print_default(self.operation_result)
Beispiel #6
0
    def mx_scalar_multiply(self):

        print("\nOperace násobení skalárem:")

        print("\nZadání matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")

        mx = self.__read_mx_data(self)

        print("Zadejte skalár:")
        scalar = self.input_reader.read_scalar()

        MatrixConsolePrinter.print_default(mx)
        print("*(", scalar, ")", sep="")

        print(" - " * (mx.m * 2))
        self.__current_operation = MatrixScalarMultiplication(mx, scalar)
        self.operation_result = self.__current_operation.calculate_scalar_multiplication(
        )
        MatrixConsolePrinter.print_default(self.operation_result)
Beispiel #7
0
    def mx_add(self):
        #1)
        print("\nOperace sčítání:")
        #2)
        print("\nZadání 1. matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")

        mx1 = self.__read_mx_data(self)

        self.dims_check = lambda sec_mx_dims: Helpers.invalid_dims_addition(
            sec_mx_dims, mx1)

        print("\nZadání 2. matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")

        mx2 = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx1)
        print("(+)")
        MatrixConsolePrinter.print_default(mx2)

        print(" - " * (mx2.m * 2))
        self.__current_operation = MatrixAddition(mx1, mx2)
        self.operation_result = self.__current_operation.calculate_sum()
        MatrixConsolePrinter.print_default(self.operation_result)
Beispiel #8
0
    def mx_multiply(self):

        print("\nOperace: Maticové Násobení:")

        print("\nZadání 1. matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")
        mx1 = self.__read_mx_data(self)

        self.dims_check = lambda sec_mx_dims: Helpers.invalid_dims_multiplication(
            sec_mx_dims, mx1)

        print("\nZadání 2. matice:")
        print("¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯")

        mx2 = self.__read_mx_data(self)

        MatrixConsolePrinter.print_default(mx1)
        print("~(*)~")
        MatrixConsolePrinter.print_default(mx2)

        print(" - " * (mx2.m * 2))
        self.__current_operation = MatrixMultiplication(mx1, mx2)
        self.operation_result = self.__current_operation.calculate_multiplication(
        )
        MatrixConsolePrinter.print_default(self.operation_result)