Você está aqui: C++ ::: 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 C++ - Desafio de Programação Resolvido em C++Quantidade de visualizações: 1059 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 C++ 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 C++: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
// Algoritmo que calcula reação de apoio, momento fletor
// e força cortante em uma viga bi-apoiada em C++
#include <iostream>
#include <math.h>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// 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;
// vamos pedir para o usuário informar o valor da carga
cout << "Valor da carga em kN/m: ";
cin >> carga;
// vamos pedir para o usuário informar a distância entre os apoios
cout << "Distancia em metros: ";
cin >> distancia;
// 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 * pow(distancia, 2.0);
// e mostramos o resultado
cout << "\nA reacao no apoio A e: " << reacao_a << " kN" << endl;
cout << "A reacao no apoio B e: " << reacao_b << " kN" << endl;
cout << "O momento fletor maximo e: " << flexao_maxima << " kN" << endl;
// vamos pedir para o usuário informar uma distância a
// partir do apoio A
cout << "\nInforme uma distancia a partir do apoio A: ";
cin >> distancia_temp;
// vamos mostrar o momento fletor na distância informada
if (distancia_temp > distancia) {
cout << "\nDistancia invalida.";
}
else {
flexao_distancia = (1.0 / 2.0) * carga * distancia_temp *
(distancia - distancia_temp);
cout << "O momento fletor na distancia informada e: " <<
flexao_distancia << " kN";
}
// vamos mostrar a força cortante no apoio A
cortante_a = (1.0 / 2.0) * carga * distancia;
cout << "\n\nA forca cortante no apoio A e: " << cortante_a << " kN";
// vamos mostrar a força cortante no apoio B
cortante_b = cortante_a * -1;
cout << "\nA forca cortante no apoio B e: " << cortante_b << " kN";
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
Python - Como gerar permutações de uma string em Python usando o objeto permutations do módulo Itertools |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







