Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Engenharia Civil - Cálculo Estrutural |
Como calcular as reações de apoio, momento de flexão máxima e forças cortantes em uma viga bi-apoiada com carga distribuída retangular usando Java - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 1455 vezes |
|
Pergunta/Tarefa: Veja a seguinte figura: ![]() Nesta imagem temos uma viga bi apoiada com uma carga q distribuída de forma retangular a uma distância l. Para fins didáticos, vamos considerar que a carga q será em kN/m e a distância l será em metros. O apoio A é de segundo gênero e o apoio B é de primeiro gênero. Escreva um programa Java que solicita ao usuário que informe o valor da carga q e a distância l entre os apoios A e B. Em seguida mostre os valores das reações nos apoios A e B, o momento de flexão máxima da viga e o momento de flexão para uma determinada distância (que o usuário informará) a partir do apoio A. Mostre também as forças cortantes nos apoios A e B. Lembre-se de que, para uma carga distribuída de forma retangular, o diagrama de momento fletor é uma parábola, enquanto o diagrama de cortante é uma reta (com o valor zero para a força cortante no meio da viga). Sua saída deve ser parecida com: Valor da carga em kN/m: 10 Distância em metros: 13 A reação no apoio A é: 65.000000 kN A reação no apoio B é: 65.000000 kN O momento fletor máximo é: 211.250000 kN Informe uma distância a partir do apoio A: 4 O momento fletor na distância informada é: 180.000000 kN A força cortante no apoio A é: 65.000000 kN A força cortante no apoio B é: -65.000000 kN Veja a resolução comentada deste exercício usando Java:
// Algoritmo que calcula reação de apoio, momento fletor
// e força cortante em uma viga bi-apoiada em Java
package estudos;
import java.util.Scanner;
public class Exercicio {
// função principal do programa
public static void main(String[] args) {
// variáveis usadas na resolução do problema
double carga, distancia, reacao_a, reacao_b;
double flexao_maxima, distancia_temp, flexao_distancia;
double cortante_a, cortante_b;
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir para o usuário informar o valor da carga
System.out.print("Valor da carga em kN/m: ");
carga = Double.parseDouble(entrada.nextLine());
// vamos pedir para o usuário informar a distância entre os apoios
System.out.print("Distancia em metros: ");
distancia = Double.parseDouble(entrada.nextLine());
// vamos calcular a reação no apoio A
reacao_a = (1.0 / 2.0) * carga * distancia;
// vamos calcular a reação no apoio B
reacao_b = reacao_a;
// vamos calcular o momento fletor máximo
flexao_maxima = (1.0 / 8.0) * carga * Math.pow(distancia, 2.0);
// e mostramos o resultado
System.out.println("\nA reação no apoio A é: " + reacao_a
+ " kN");
System.out.println("A reação no apoio B é: " + reacao_b +
" kN");
System.out.println("O momento fletor máximo é: " +
flexao_maxima + " kN");
// vamos pedir para o usuário informar uma distância a
// partir do apoio A
System.out.print("\nInforme uma distância a partir do apoio A: ");
distancia_temp = Double.parseDouble(entrada.nextLine());
// vamos mostrar o momento fletor na distância informada
if (distancia_temp > distancia) {
System.out.println("\nDistância inválida.\n");
}
else {
flexao_distancia = (1.0 / 2.0) * carga * distancia_temp *
(distancia - distancia_temp);
System.out.println("O momento fletor na distância informada é: " +
flexao_distancia + " kN");
}
// vamos mostrar a força cortante no apoio A
cortante_a = (1.0 / 2.0) * carga * distancia;
System.out.println("\nA força cortante no apoio A é: " +
cortante_a + " kN");
// vamos mostrar a força cortante no apoio B
cortante_b = cortante_a * -1;
System.out.println("A forca cortante no apoio B e: " +
cortante_b + " kN");
}
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






