Ajuda - Matrizes, determinantes e sistemas lineares

Introdução
Esse projeto trabalha com cálculos com matrizes, calcula determinantes e resolve sistema lineares.
Todos os cálculos são feitos na forma fracionária, desse modo eliminamos as aproximações que certas divisões acarretam (Exemplo: 1/3)
Qualquer erro ou operação inadequada será relatada, além disso, quando uma fração atingir um valor muito grande será gerado um aviso.
Frações com numeradores ou denominadores muito grandes será automaticamente aproximada e será lançado um aviso. Isso é necessário para agilizar os cálculos e evitar o travamento do programa.

Formato dos números
Em qualquer página desse projeto os números serão transformados em frações que depois será simplificada
Exemplo: 0,5 será automaticamente convertido para 1/2 pelo programa
Pode ser usado vírgula ou ponto para separar a parte decimal da inteira. Deve-se usar / para indicar fração
Exemplos de números válidos: 3 ; 123 ; 123/312 ; 0.5 ; 0,5 ; ,45 ; .98/4 ; ,182/.13
É possível criar um número aleatório com o comando: rand(menor_numerador, maior_numerador, menor_denominador, maior_denominador)
Exemplo: número entre 0 e 10: rand(0, 10) ; entre -10 e 10: rand(-10, 10) ; numerador entre -10 e 10, denominador entre -10 e 10: rand(-10, 10, -10, 10)

Formato das matrizes
Cada linha da matriz deve ser escrita em uma linha do campo de texto
Cada elemento deve ser separado do próximo por um espaço: " "
Cada elemento será tratado como uma fração, veja "Formato dos números" para mais detalhes
Para criar uma matriz identidade pode ser usado: I1 para identidade de ordem 1, I2 para ordem 2, I3 para 3 e assim por diante
Uma matriz nula pode ser criada usando N1, N2 ou N3 etc para matriz nula de ordem 1, 2 ou 3 respectivamente.
N5,7 cria uma matriz nula do tipo 5x7 (com 5 linhas e 7 colunas). Mude os valores para criar matrizes nulas de outros tipos
Uma matriz aleatória pode ser criada com o comando: randM(num_linhas, num_colunas, min_numerador, max_numerador, min_denominador, max_denominador)
Exemplo: randM(5, 5, -10, 10) ; randM(3, 3, -10, 10, -10, 10)

Cálculos com matrizes
Escreva a matriz A na parte da esquerda como explicado em "Formato das matrizes". Escolha a operação desejada no campo do meio.
Escreva a matriz B ou o número na parte da direita.
Na divisão de matrizes, o programa calcula a sua inversa automaticamente e depois faz a multiplicação normalmente.
Se quiser copiar uma matriz para usa-la em outros cálculos, basta clicar sobre ela. Quando uma pequena caixa de texto aparecer no fim da página aperte Ctrl+C.

Determinantes
Escreva a matriz quadrada que quiser.
O determinante será calculado diretamente para matrizes de ordem 1 e 2, usando Sarrus para ordem 3 e por Laplace para ordem superiores a 3.

Cálculo da matriz inversa
Digite a matriz quadrada com determinante não nulo no campo de texto.
A matriz inversa será obtida com a fórmula: A-1 = (cof A)t/(det A)

Resolver sistemas lineares
Escreva o sistema possível determinado que deseja resolver no campo de texto.
O sistema precisa ter o mesmo número de equações e de variáveis.
Pode ser usada qualquer letra para indicar as variáveis.
Espaços são ignorados, ex: 2y = 2 y
É possível utilizar frações nos termos, ex: 1/2x ou x/2
Não é necessário escrever as variáveis na mesma ordem e pode-se omitir algumas variáveis quando seu coeficiente for zero.
1/y será interpretado como 1/1 * y, ou seja, 1/y = y (isso é feito porque equações lineares não podem tem variáveis no denominador).
Veja alguns exemplos: