ALGORITMOS E IMPLEMENTAÇÕESLinguagem C Tópico resolvido

Implementação de equações dentro da computação, programação e algoritmos.

Moderador: [ Moderadores TTB ]

Avatar do usuário
Autor do Tópico
GrayWolf
Junior
Mensagens: 12
Registrado em: Qua 06 Mai, 2020 17:06
Última visita: 16-12-20
Mai 2020 07 14:58

Linguagem C

Mensagem não lida por GrayWolf »

Escrever um código para resolver um sistema de Equações Lineares 2x2
usando a regra de KRAMER. Os coeficientes a1,b1,c1 e a2,b2,c2 são dados de entrada pelo teclado.
Exemplos: 2x + 5y = 7 4x - 3y = 9 a1x + b1y = c1
5x - 3y = 2 2x - 5y = 8 a2x + b2y = c2



Não consegui desenvolver esta questão, achei complexo demais.




mcarvalho
3 - Destaque
Mensagens: 553
Registrado em: Sex 12 Abr, 2019 15:13
Última visita: 21-10-23
Mai 2020 07 17:13

Re: Linguagem C

Mensagem não lida por mcarvalho »

Boa tarde.

Você tem familiaridade com a regra de Cramer ou não?



"Dizem que não existe almoço grátis. Mas o universo é o derradeiro almoço grátis"

Alan Guth

Avatar do usuário
Autor do Tópico
GrayWolf
Junior
Mensagens: 12
Registrado em: Qua 06 Mai, 2020 17:06
Última visita: 16-12-20
Mai 2020 08 10:12

Re: Linguagem C

Mensagem não lida por GrayWolf »

mcarvalho escreveu:
Qui 07 Mai, 2020 17:13
Boa tarde.

Você tem familiaridade com a regra de Cramer ou não?


Sim, ja conheço o assunto.



mcarvalho
3 - Destaque
Mensagens: 553
Registrado em: Sex 12 Abr, 2019 15:13
Última visita: 21-10-23
Mai 2020 08 13:07

Re: Linguagem C

Mensagem não lida por mcarvalho »

Bom dia.

Você já conhece mas eu vou relembrar pra gente orientar o raciocínio aqui:

Seja o sistema [tex3]a_1\cdot x+b_1\cdot y=c_1\\a_2\cdot x+b_2\cdot y=c_2[/tex3]

Teremos [tex3]x=\frac{D_x}{D},y=\frac{D_y}{D}[/tex3]

Calculando [tex3]D[/tex3]:

[tex3]D[/tex3] é o determinante da matriz dos coeficientes das incógnitas:

[tex3]D=\left| \begin{array}{rcr}
a_1 & b_1 \\
a_2 & b_2 \end{array} \right|[/tex3]

Então [tex3]\boxed{D=a_1b_2-a_2b_1}[/tex3]

Calculando [tex3]D_x[/tex3]:

[tex3]D_x[/tex3] é o determinante da matriz em que se substitui os coeficientes de x pelos termos independentes.

[tex3]D_x=\left| \begin{array}{rcr}
c_1 & b_1 \\
c_2 & b_2 \end{array} \right|[/tex3]

Então [tex3]\boxed{D_x=c_1b_2-c_2b_1}[/tex3]

Calculando [tex3]D_y[/tex3]:

[tex3]D_y[/tex3] é o determinante da matriz em que se substitui os coeficientes de y pelos termos independentes.

[tex3]D_y=\left| \begin{array}{rcr}
a_1 & c_1 \\
a_2 & c_2 \end{array} \right|[/tex3]

Então [tex3]\boxed{D_y=a_1c_2-a_2c_1}[/tex3]

Com base nessas equações, teremos:

[tex3]\boxed{\boxed{x=\frac{D_x}{D}=\frac{c_1b_2-c_2b_1}{a_1b_2-a_2b_1}\\y=\frac{D_y}{D}=\frac{a_1c_2-a_2c_1}{a_1b_2-a_2b_1}}}[/tex3]

O que você precisa é implementar isso no seu código. No fim acho que não vou nem precisar lhe mostrar o código, tente fazer a partir daqui. Se não der certo eu monto.


"Dizem que não existe almoço grátis. Mas o universo é o derradeiro almoço grátis"

Alan Guth

Avatar do usuário
Autor do Tópico
GrayWolf
Junior
Mensagens: 12
Registrado em: Qua 06 Mai, 2020 17:06
Última visita: 16-12-20
Mai 2020 08 13:19

Re: Linguagem C

Mensagem não lida por GrayWolf »

Boa tarde.

Eu ate consegui chegar nesta parte do raciocínio, porem exatamente ai que não consegui prosseguir. Não consegui juntar tudo e fazer o código. Tentei algumas vezes, mas foi falho.



mcarvalho
3 - Destaque
Mensagens: 553
Registrado em: Sex 12 Abr, 2019 15:13
Última visita: 21-10-23
Mai 2020 08 13:58

Re: Linguagem C

Mensagem não lida por mcarvalho »

GrayWolf escreveu:
Sex 08 Mai, 2020 13:19
Eu ate consegui chegar nesta parte do raciocínio, porem exatamente ai que não consegui prosseguir. Não consegui juntar tudo e fazer o código. Tentei algumas vezes, mas foi falho.
O mais difícil você já fez, então. O problema agora é estritamente a parte de programação.

Vou tentar desenferrujar o pouco que sei de C.

O código ficaria mais ou menos assim:

#include <stdio.h>

int main()
{
int a1,a2,b1,b2,c1,c2;
printf("Seu sistema é: \n \n %ix + %iy = %i \n %ix + %iy = %i \n", a1,b1,c1,a2,b2,c2);
float x = (c1 * b2 - c2 * b1) / (a1 * b2 - a2 * b1);
float y = (a1 * c2 - a2 * c1) / (a1 * b2 - a2 * b1);
printf("As soluções do sistema são x = %f e y = %f", x, y);
}


Eu deixei indefindas as variáveis do programa inicialmente, depois você teria que ver o que faz com elas, se coloca um scanf pro usuário digitar, ou o que for. Não sei se do ponto de vista de otimização e bom código é o melhor programa possível, porque faz um bom tempo que não programo nada em C, mas tá aí, faz o que você pede.

OBS: gostaria que alguém me dissesse como faz pra colocar aquele negócio que deixa os "códigos" de um jeito diferente, com fundo amarelo. Acho que os moderadores devem saber do que tô falando.

Última edição: mcarvalho (Sex 08 Mai, 2020 13:59). Total de 1 vez.


"Dizem que não existe almoço grátis. Mas o universo é o derradeiro almoço grátis"

Alan Guth

Responder
  • Tópicos Semelhantes
    Respostas
    Exibições
    Última msg

Voltar para “ALGORITMOS E IMPLEMENTAÇÕES”