Introdução
Neste laboratório, você aprenderá a calcular a área de um trapézio usando programação em C. O laboratório cobre os passos para ler os dois lados paralelos e a altura de um trapézio, e então calcular sua área usando a fórmula: Área = 0,5 _ (a+b) _ h. O programa solicita ao usuário que insira os valores necessários e, em seguida, calcula e exibe a área do trapézio.
Ler Dois Lados Paralelos e a Altura
Neste passo, você aprenderá a ler os dois lados paralelos e a altura de um trapézio para se preparar para calcular sua área em programação C.
Primeiro, vamos criar um novo arquivo C para o cálculo da área do trapézio:
cd ~/project
nano trapezoid_area.c
Agora, adicione o seguinte código para ler os lados paralelos e a altura:
#include <stdio.h>
int main() {
float side1, side2, height;
// Solicitar ao usuário para inserir o primeiro lado paralelo
printf("Digite o comprimento do primeiro lado paralelo: ");
scanf("%f", &side1);
// Solicitar ao usuário para inserir o segundo lado paralelo
printf("Digite o comprimento do segundo lado paralelo: ");
scanf("%f", &side2);
// Solicitar ao usuário para inserir a altura
printf("Digite a altura do trapézio: ");
scanf("%f", &height);
// Imprimir os valores de entrada para verificação
printf("Primeiro lado: %.2f\n", side1);
printf("Segundo lado: %.2f\n", side2);
printf("Altura: %.2f\n", height);
return 0;
}
Compile e execute o programa:
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
Exemplo de saída:
Digite o comprimento do primeiro lado paralelo: 5
Digite o comprimento do segundo lado paralelo: 7
Digite a altura do trapézio: 3
Primeiro lado: 5.00
Segundo lado: 7.00
Altura: 3.00
Explicação
- Usamos
floatpara armazenar números decimais para os comprimentos dos lados e a altura printf()é usado para solicitar ao usuário a entradascanf()lê os valores em ponto flutuante inseridos pelo usuário- Imprimimos os valores de entrada para verificar se foram capturados corretamente
Calcular Área = 0.5*(a+b)*h
Neste passo, você modificará o programa C anterior para calcular a área de um trapézio usando a fórmula: Área = 0,5 _ (a+b) _ h.
Abra o arquivo existente e atualize o código:
cd ~/project
nano trapezoid_area.c
Substitua o código anterior pela seguinte implementação:
#include <stdio.h>
int main() {
float side1, side2, height, area;
// Solicitar ao usuário para inserir o primeiro lado paralelo
printf("Digite o comprimento do primeiro lado paralelo: ");
scanf("%f", &side1);
// Solicitar ao usuário para inserir o segundo lado paralelo
printf("Digite o comprimento do segundo lado paralelo: ");
scanf("%f", &side2);
// Solicitar ao usuário para inserir a altura
printf("Digite a altura do trapézio: ");
scanf("%f", &height);
// Calcular a área usando a fórmula da área do trapézio
area = 0.5 * (side1 + side2) * height;
// Imprimir a área calculada
printf("Área do Trapézio: %.2f\n", area);
return 0;
}
Compile e execute o programa:
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
Exemplo de saída:
Digite o comprimento do primeiro lado paralelo: 5
Digite o comprimento do segundo lado paralelo: 7
Digite a altura do trapézio: 3
Área do Trapézio: 18.00
Explicação
- Adicionamos uma nova variável
areapara armazenar a área calculada - A fórmula
0.5 * (side1 + side2) * heightcalcula a área do trapézio printf()exibe a área calculada com duas casas decimais- O cálculo utiliza a fórmula padrão da área do trapézio: A = 0,5(a+b)h
Imprimir a Área
Neste passo, você aprimorará o programa de cálculo da área do trapézio adicionando saída formatada e tratamento de erros para melhorar a experiência do usuário.
Abra o arquivo existente e atualize o código:
cd ~/project
nano trapezoid_area.c
Substitua o código anterior pela seguinte implementação:
#include <stdio.h>
int main() {
float side1, side2, height, area;
// Validação de entrada
printf("Calculadora de Área de Trapézio\n");
printf("---------------------------------\n");
// Solicitar ao usuário para inserir o primeiro lado paralelo
printf("Digite o comprimento do primeiro lado paralelo: ");
if (scanf("%f", &side1) != 1 || side1 <= 0) {
printf("Erro: Entrada inválida para o primeiro lado.\n");
return 1;
}
// Solicitar ao usuário para inserir o segundo lado paralelo
printf("Digite o comprimento do segundo lado paralelo: ");
if (scanf("%f", &side2) != 1 || side2 <= 0) {
printf("Erro: Entrada inválida para o segundo lado.\n");
return 1;
}
// Solicitar ao usuário para inserir a altura
printf("Digite a altura do trapézio: ");
if (scanf("%f", &height) != 1 || height <= 0) {
printf("Erro: Entrada inválida para a altura.\n");
return 1;
}
// Calcular a área usando a fórmula da área do trapézio
area = 0.5 * (side1 + side2) * height;
// Saída formatada dos resultados
printf("\nResultados do Cálculo do Trapézio:\n");
printf("-------------------------------------\n");
printf("Primeiro Lado: %.2f\n", side1);
printf("Segundo Lado: %.2f\n", side2);
printf("Altura: %.2f\n", height);
printf("Área: %.2f unidades quadradas\n", area);
return 0;
}
Compile e execute o programa:
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
Exemplo de saída:
Calculadora de Área de Trapézio
---------------------------------
Digite o comprimento do primeiro lado paralelo: 5
Digite o comprimento do segundo lado paralelo: 7
Digite a altura do trapézio: 3
Resultados do Cálculo do Trapézio:
-------------------------------------
Primeiro Lado: 5.00
Segundo Lado: 7.00
Altura: 3.00
Área: 18.00 unidades quadradas
Explicação
- Adicionada validação de entrada para evitar entradas inválidas.
- Formato de saída aprimorado com cabeçalhos e rótulos claros.
- Tratamento de erros para tipos de entrada incorretos.
- Saída descritiva com todos os parâmetros de entrada e área calculada.
- Usado
%.2fpara exibir números de ponto flutuante com duas casas decimais.
Resumo
Neste laboratório, você aprendeu inicialmente a ler os dois lados paralelos e a altura de um trapézio usando as funções printf() e scanf(). Em seguida, calculou a área do trapézio usando a fórmula: Área = 0,5 _ (a+b) _ h, onde a e b são os lados paralelos e h é a altura. Finalmente, imprimiu a área calculada no console.



