Você está na página 1de 9

PROJETO

LEQS

**ALGEBRA LINEAR**
PROJETO – N1

NOME: FRANCISCO CAIO CHAVES SILVA


CURSO: ENGENHARIA DE TELECOMUNICAÇÕES
TURMA: S2 – MANHÃ
PROFº: VALBERTO FEITOSA
PONTUAÇÃO:
CODIGO:
## Importar Bibliotecas e funções para usar cores e matrizes
from typing import List

import numpy as NP
import numpy
import colorama
from colorama import Fore
from colorama import Style

# Lista para quais eu vou guardar os valores e aplicar método dos


determinantes
eq = []
eq2 = []
eq3 = []
det =[]

print("Seja Bem Vindo ao LEQS ")


print("---------------------------\n"
"AS EQUAÇÃO DEVEM TER COMO INCOGNITAS X,Y,Z\n"
"E SEGUIR ORDEM ALFABÉTICA, OU SEJA, NA ORDEM X,Y,Z\n"
"OBS: A SOLUÇÃO DOS SISTEMAS LINEARES SERÁ OBTIDA ATRAVÉS DA
REGRA DE KRAMER\n"
"---------------------------\n")

# determino a quantidade de equações e incognitas presentes no sistema


equ = int(input('o Sistema tem Quantas Equações: '))
ico = int(input('o Sistema tem Quantas incognitas: '))

#Para Determinates de 2x2!


if ico == 2: #Quando tiver duas incognitas, então sistema 2x2.
for i in range(1, equ):
#1º Equação - 2x2
x1 = float(input(f"digite o coeficiente da {i}ª Variavél da
{i}ºEquação: "))
eq.append(x1)
y1 = float(input(f"digite o coeficiente da {i+1}ª Variavél da
{i}ºEquação: "))
eq.append(y1)
r1= float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r1)
for i in range(1, equ):
##2º Equação - 2x2
x2 = float(input(f"digite o coeficiente da {i}ª Variavél da
{i+1}ºEquação: "))
eq2.append(x2)
y2 = float(input(f"digite o coeficiente da {i+1}ª Variavél da
{i+1}ºEquação: "))
eq2.append(y2)
r2 = float(input(f"digite o resultado da {i}ºEquação: "))
eq2.append(r2)
#calcular os determinantes
dett = (eq[0] * eq2[1]) - (eq[1] * eq2[0])
detx = (eq[2] * eq2[1]) - (eq[1] * eq2[2])
dety = (eq[0] * eq2[2]) - (eq[2] * eq2[0])
#--------------------------------#
x = (detx / dett)
y = (dety / dett)

det.append(dett)
#mostrar valores
print(f'{x1}X {y1}Y = {r1}')
print(f'{x2}X {y2}Y = {r2}')
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', dett)
print(f'x={x}\n'
f'y={y}')

if dett[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
# Para Determinates de 3x3!
elif ico == 3: #Quando tiver três incognitas, então sistema 3x3.
for i in range(1, equ):
x1 = float(input(f"digite o coeficiente da {i}ª Variavél da
{i}ºEquação: "))
eq.append(x1)
y1 = float(input(f"digite o coeficiente da {i+1}ª Variavél da
{i}ºEquação: "))
eq.append(y1)
z1 = float(input(f"digite o coeficiente da {i+2}ª Variavél da
{i}ºEquação: "))
eq.append(z1)
r1 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r1)
for i in range(1, equ):
x2 = float(input(f"digite o coeficiente da {i}ª Variavél da
{i+1}ºEquação: "))
eq2.append(x2)
y2 = float(input(f"digite o coeficiente da {i+1}ª Variavél da
{i+1}ºEquação: "))
eq2.append(y2)
z2 = float(input(f"digite o coeficiente da {i+2}ª Variavél da
{i+1}ºEquação: "))
eq2.append(z2)
r2 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r2)
for i in range(1, equ):
x3 = float(input(f"digite o coeficiente da {i}ª Variavél da {i
+ 1}ºEquação: "))
eq3.append(x3)
y3 = float(input(f"digite o coeficiente da {i + 1}ª Variavél
da {i + 1}ºEquação: "))
eq3.append(y3)
z3 = float(input(f"digite o coeficiente da {i + 2}ª Variavél
da {i + 1}ºEquação: "))
eq3.append(z3)
r3 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r3)
# calcular os determinantes
dett = ((eq[0] * eq2[1] * eq3[2]) + (eq[1] * eq2[3] * eq3[0])
+ (eq[2] * eq2[0] * eq3[1])) - ((eq[1] * eq2[0] * eq3[2]) + (eq[0] *
eq2[2] * eq3[1]) + (eq[2] * eq2[1] * eq3[0]))
detx = ((eq[3] * eq2[1] * eq3[2]) + (eq[1] * eq2[2] * eq3[3])
+ (eq[2] * eq2[3] * eq3[1])) - ((eq[1] * eq2[3] * eq3[2]) + (eq[3] *
eq2[2] * eq3[1]) + (eq[2] * eq2[1] * eq3[3]))
dety = ((eq[0] * eq2[3] * eq3[2]) + (eq[3] * eq2[2] * eq3[0])
+ (eq[2] * eq2[0] * eq3[3])) - ((eq[3] * eq2[0] * eq3[2]) + (eq[0] *
eq2[2] * eq3[3]) + (eq[2] * eq2[3] * eq3[0]))
detz = ((eq[0] * eq2[1] * eq3[3]) + (eq[1] * eq2[3] * eq3[0])
+ (eq[3] * eq2[0] * eq3[1])) - ((eq[1] * eq2[0] * eq3[3]) + (eq[0] *
eq2[3] * eq3[1]) + (eq[3] * eq2[1] * eq3[0]))
x = (detx/dett)
y = (dety/dett)
z = (detz/dett)

#mostrar valores
print(f'{x1}X + {y1}Y +{z1} = {r1}')
print(f'{x2}X + {y2}Y +{z2} = {r2}')
print(f'{x1}X + {y1}Y +{z1} = {r1}')
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', dett )
print(f'x={x}'
f'y={y}'
f'z={z}')

#para casos indeterminao


if dett[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
elif ico ==1: #Quando tiver uma incognitas, então sistema 1x1.
x1 = float(input(f"digite o coeficiente da {1}ª Variavél da
{1}ºEquação: "))
r1 = float(input(f"digite o resultado da {1}ºEquação: "))
print(f'{x1}X = {r1}')
### Calcular determinates
detx = (r1/x1)

## mostrar valores
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', detx)
print(f'x = {detx}')
if detx[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
else:
colorama.init()
print(Fore.RED + "WARNING! FORMAT INCOMPATIBLE!" +
Style.RESET_ALL)

###Obs¹:Caso solicitado comprovação do valores, usar biblioteca numpy


para realizar operações diretas com as listas.
##np.linalg.det(?)
#or from numpy.linalg import det
#det(?)
TRANSCRITO:
## Importar Bibliotecas e funções para usar cores e matrizes
from typing import List

import numpy as NP
import numpy
import colorama
from colorama import Fore
from colorama import Style

# Lista para quais eu vou guardar os valores e aplicar método dos determinantes
eq = []
eq2 = []
eq3 = []
det =[]

print("Seja Bem Vindo ao LEQS ")


print("---------------------------\n"
"AS EQUAÇÃO DEVEM TER COMO INCOGNITAS X,Y,Z\n"
"E SEGUIR ORDEM ALFABÉTICA, OU SEJA, NA ORDEM X,Y,Z\n"
"OBS: A SOLUÇÃO DOS SISTEMAS LINEARES SERÁ OBTIDA ATRAVÉS DA REGRA DE
KRAMER\n"
"---------------------------\n")

# determino a quantidade de equações e incognitas presentes no sistema


equ = int(input('o Sistema tem Quantas Equações: '))
ico = int(input('o Sistema tem Quantas incognitas: '))

#Para Determinates de 2x2!


if ico == 2: #Quando tiver duas incognitas, então sistema 2x2.
for i in range(1, equ):
#1º Equação - 2x2
x1 = float(input(f"digite o coeficiente da {i}ª Variavél da {i}ºEquação: "))
eq.append(x1)
y1 = float(input(f"digite o coeficiente da {i+1}ª Variavél da {i}ºEquação: "))
eq.append(y1)
r1= float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r1)
for i in range(1, equ):
##2º Equação - 2x2
x2 = float(input(f"digite o coeficiente da {i}ª Variavél da {i+1}ºEquação: "))
eq2.append(x2)
y2 = float(input(f"digite o coeficiente da {i+1}ª Variavél da {i+1}ºEquação: "))
eq2.append(y2)
r2 = float(input(f"digite o resultado da {i}ºEquação: "))
eq2.append(r2)
#calcular os determinantes
dett = (eq[0] * eq2[1]) - (eq[1] * eq2[0])
detx = (eq[2] * eq2[1]) - (eq[1] * eq2[2])
dety = (eq[0] * eq2[2]) - (eq[2] * eq2[0])
#--------------------------------#
x = (detx / dett)
y = (dety / dett)

det.append(dett)
#mostrar valores
print(f'{x1}X {y1}Y = {r1}')
print(f'{x2}X {y2}Y = {r2}')
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', dett)
print(f'x={x}\n'
f'y={y}')

if dett[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
# Para Determinates de 3x3!
elif ico == 3: #Quando tiver três incognitas, então sistema 3x3.
for i in range(1, equ):
x1 = float(input(f"digite o coeficiente da {i}ª Variavél da {i}ºEquação: "))
eq.append(x1)
y1 = float(input(f"digite o coeficiente da {i+1}ª Variavél da {i}ºEquação: "))
eq.append(y1)
z1 = float(input(f"digite o coeficiente da {i+2}ª Variavél da {i}ºEquação: "))
eq.append(z1)
r1 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r1)
for i in range(1, equ):
x2 = float(input(f"digite o coeficiente da {i}ª Variavél da {i+1}ºEquação: "))
eq2.append(x2)
y2 = float(input(f"digite o coeficiente da {i+1}ª Variavél da {i+1}ºEquação: "))
eq2.append(y2)
z2 = float(input(f"digite o coeficiente da {i+2}ª Variavél da {i+1}ºEquação: "))
eq2.append(z2)
r2 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r2)
for i in range(1, equ):
x3 = float(input(f"digite o coeficiente da {i}ª Variavél da {i + 1}ºEquação: "))
eq3.append(x3)
y3 = float(input(f"digite o coeficiente da {i + 1}ª Variavél da {i + 1}ºEquação: "))
eq3.append(y3)
z3 = float(input(f"digite o coeficiente da {i + 2}ª Variavél da {i + 1}ºEquação: "))
eq3.append(z3)
r3 = float(input(f"digite o resultado da {i}ºEquação: "))
eq.append(r3)
# calcular os determinantes
dett = ((eq[0] * eq2[1] * eq3[2]) + (eq[1] * eq2[3] * eq3[0]) + (eq[2] * eq2[0] *
eq3[1])) - ((eq[1] * eq2[0] * eq3[2]) + (eq[0] * eq2[2] * eq3[1]) + (eq[2] * eq2[1] *
eq3[0]))
detx = ((eq[3] * eq2[1] * eq3[2]) + (eq[1] * eq2[2] * eq3[3]) + (eq[2] * eq2[3] *
eq3[1])) - ((eq[1] * eq2[3] * eq3[2]) + (eq[3] * eq2[2] * eq3[1]) + (eq[2] * eq2[1] *
eq3[3]))
dety = ((eq[0] * eq2[3] * eq3[2]) + (eq[3] * eq2[2] * eq3[0]) + (eq[2] * eq2[0] *
eq3[3])) - ((eq[3] * eq2[0] * eq3[2]) + (eq[0] * eq2[2] * eq3[3]) + (eq[2] * eq2[3] *
eq3[0]))
detz = ((eq[0] * eq2[1] * eq3[3]) + (eq[1] * eq2[3] * eq3[0]) + (eq[3] * eq2[0] *
eq3[1])) - ((eq[1] * eq2[0] * eq3[3]) + (eq[0] * eq2[3] * eq3[1]) + (eq[3] * eq2[1] *
eq3[0]))
x = (detx/dett)
y = (dety/dett)
z = (detz/dett)

#mostrar valores
print(f'{x1}X + {y1}Y +{z1} = {r1}')
print(f'{x2}X + {y2}Y +{z2} = {r2}')
print(f'{x1}X + {y1}Y +{z1} = {r1}')
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', dett )
print(f'x={x}'
f'y={y}'
f'z={z}')

#para casos indeterminao


if dett[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
elif ico ==1: #Quando tiver uma incognitas, então sistema 1x1.
x1 = float(input(f"digite o coeficiente da {1}ª Variavél da {1}ºEquação: "))
r1 = float(input(f"digite o resultado da {1}ºEquação: "))
print(f'{x1}X = {r1}')
### Calcular determinates
detx = (r1/x1)

## mostrar valores
print('---------------------\n'
'O DETERMINANTE DESSA EQUAÇÃO É:', detx)
print(f'x = {detx}')
if detx[0] == 0:
print("\nO SISTEMA LINEAR É INDETERMINADO!")
else:
colorama.init()
print(Fore.RED + "WARNING! FORMAT INCOMPATIBLE!" + Style.RESET_ALL)

###Obs¹:Caso solicitado comprovação do valores, usar biblioteca numpy para realizar


operações diretas com as listas.
##np.linalg.det(?)
#or from numpy.linalg import det
#det(?)

Você também pode gostar