Introdução
Neste laboratório, você aprenderá a resolver uma equação linear da forma ax + b = 0 usando a programação em C. Você começará lendo os coeficientes a e b do usuário, em seguida, calculará a solução x aplicando a fórmula x = -b/a, garantindo que o coeficiente a não seja zero. Finalmente, imprimirá a solução ou indicará que não existe solução.
O laboratório abrange os conceitos fundamentais de expressões algébricas e sua implementação em C. Ao final deste laboratório, você terá uma compreensão sólida de como resolver equações lineares simples de forma programática.
Ler os Coeficientes a e b
Neste passo, você aprenderá a ler os coeficientes a e b para resolver uma equação linear em C. Criaremos um programa simples que solicita ao usuário que insira os coeficientes e os armazena em variáveis.
Primeiro, crie um novo arquivo C no diretório do projeto:
cd ~/project
nano linear_equation.c
Agora, insira o seguinte código para ler os coeficientes:
#include <stdio.h>
int main() {
double a, b;
// Solicitar ao usuário para inserir o coeficiente a
printf("Digite o coeficiente a (não deve ser zero): ");
scanf("%lf", &a);
// Solicitar ao usuário para inserir o coeficiente b
printf("Digite o coeficiente b: ");
scanf("%lf", &b);
// Imprimir os coeficientes inseridos
printf("Coeficiente a: %.2f\n", a);
printf("Coeficiente b: %.2f\n", b);
return 0;
}
Compile e execute o programa:
gcc linear_equation.c -o linear_equation
./linear_equation
Exemplo de saída:
Digite o coeficiente a (não deve ser zero): 2
Digite o coeficiente b: 4
Coeficiente a: 2.00
Coeficiente b: 4.00
Vamos analisar o código:
- Usamos
doublepara permitir entradas decimais para os coeficientes printf()é usado para solicitar a entrada do usuárioscanf()lê a entrada do usuário e a armazena nas variáveisaeb- Imprimimos os coeficientes inseridos para confirmar que foram lidos corretamente
Calcular x = -b/a (Verificar se a ≠ 0)
Neste passo, você modificará o programa anterior para calcular a solução da equação linear ax + b = 0, com foco especial na manipulação do caso em que a é zero.
Abra o arquivo anterior e atualize o código:
cd ~/project
nano linear_equation.c
Substitua o conteúdo pelo seguinte código:
#include <stdio.h>
int main() {
double a, b, x;
// Solicitar ao usuário para inserir o coeficiente a
printf("Digite o coeficiente a (não deve ser zero): ");
scanf("%lf", &a);
// Verificar se a é zero
if (a == 0) {
printf("Erro: O coeficiente 'a' não pode ser zero.\n");
return 1;
}
// Solicitar ao usuário para inserir o coeficiente b
printf("Digite o coeficiente b: ");
scanf("%lf", &b);
// Calcular a solução x
x = -b / a;
// Imprimir a solução
printf("Solução da equação %.2fx + %.2f = 0:\n", a, b);
printf("x = %.2f\n", x);
return 0;
}
Compile e execute o programa:
gcc linear_equation.c -o linear_equation
./linear_equation
Exemplo de saída para entrada válida:
Digite o coeficiente a (não deve ser zero): 2
Digite o coeficiente b: 4
Solução da equação 2.00x + 4.00 = 0:
x = -2.00
Exemplo de saída para entrada inválida (a = 0):
Digite o coeficiente a (não deve ser zero): 0
Erro: O coeficiente 'a' não pode ser zero.
Pontos-chave deste código:
- Adicionamos uma verificação para garantir que
anão seja zero antes de calcular a solução - Se
afor zero, imprimimos uma mensagem de erro e encerramos o programa - A solução
xé calculada usando a fórmula x = -b/a - Usamos
%.2fpara formatar a saída para duas casas decimais
Imprimir a Solução ou Indicar Ausência de Solução
Neste passo final, você aprimorará o solucionador de equações lineares para lidar com diferentes cenários e fornecer uma saída clara para a solução.
Abra o arquivo anterior e atualize o código:
cd ~/project
nano linear_equation.c
Substitua o conteúdo pelo seguinte código:
#include <stdio.h>
#include <math.h>
int main() {
double a, b, x;
// Solicitar ao usuário para inserir o coeficiente a
printf("Digite o coeficiente a: ");
scanf("%lf", &a);
// Solicitar ao usuário para inserir o coeficiente b
printf("Digite o coeficiente b: ");
scanf("%lf", &b);
// Verificar diferentes cenários
if (a == 0 && b == 0) {
printf("Soluções infinitas: Todo número real é uma solução.\n");
} else if (a == 0 && b != 0) {
printf("Sem solução: A equação não pode ser resolvida.\n");
} else {
// Calcular a solução x
x = -b / a;
// Imprimir a solução
printf("Equação: %.2fx + %.2f = 0\n", a, b);
printf("Solução: x = %.2f\n", x);
}
return 0;
}
Compile e execute o programa:
gcc linear_equation.c -o linear_equation
./linear_equation
Cenários de exemplo de saída:
Cenário 1 (solução normal):
Digite o coeficiente a: 2
Digite o coeficiente b: 4
Equação: 2.00x + 4.00 = 0
Solução: x = -2.00
Cenário 2 (sem solução):
Digite o coeficiente a: 0
Digite o coeficiente b: 5
Sem solução: A equação não pode ser resolvida.
Cenário 3 (soluções infinitas):
Digite o coeficiente a: 0
Digite o coeficiente b: 0
Soluções infinitas: Todo número real é uma solução.
Melhorias-chave nesta versão:
- Lidar com três cenários distintos para equações lineares
- Fornecer mensagens claras e informativas para diferentes casos
- Utilizar lógica matemática precisa para determinar o tipo de solução
Resumo
Neste laboratório, você aprendeu a ler os coeficientes a e b para resolver uma equação linear em C. Você criou um programa simples que solicita ao usuário a entrada dos coeficientes e os armazena em variáveis. Também aprendeu a calcular a solução da equação linear ax + b = 0, com foco especial na manipulação do caso em que a é zero. O programa verifica se a é zero e fornece uma mensagem de erro se for, caso contrário, calcula a solução x = -b/a e a imprime.



