
CODIGO:
#include <iostream>
#include <cmath>
using namespace std;
void calcularFlexionHuecos(double F, double L, double D_exterior, double D_interior) {
double momento_inercia = M_PI / 64 * (pow(D_exterior, 4) - pow(D_interior, 4));
double esfuerzo_flexion_huecos = (F * L) / momento_inercia;
cout << "Esfuerzo de flexión en ejes huecos: " << esfuerzo_flexion_huecos << " Pa\n";
}
void calcularFlexionRango(double F, double L, double D_exterior, double D_interior, double rango_min, double rango_max) {
for (double i = rango_min; i <= rango_max; i += 0.1) {
double momento_inercia = M_PI / 64 * (pow(D_exterior, 4) - pow(D_interior, 4));
double esfuerzo_flexion_rango = (F * L) / momento_inercia;
cout << "Esfuerzo de flexión con variable en rango (" << i << "): " << esfuerzo_flexion_rango << " Pa\n";
}
}
void calcularFlexionRangoDoble(double F, double L, double D_exterior, double D_interior, double rango_min_1, double rango_max_1, double rango_min_2, double rango_max_2) {
for (double i = rango_min_1; i <= rango_max_1; i += 0.1) {
for (double j = rango_min_2; j <= rango_max_2; j += 0.1) {
double momento_inercia = M_PI / 64 * (pow(D_exterior, 4) - pow(D_interior, 4));
double esfuerzo_flexion_rango_doble = (F * L) / momento_inercia;
cout << "Esfuerzo de flexión con variables en rango (" << i << ", " << j << "): " << esfuerzo_flexion_rango_doble << " Pa\n";
}
}
}
void ASIGNAR() {
static int A[10]; // static es necesario para que los valores no se pierdan en el bucle
for (int i = 1; i <= 10; i++) {
cout << "A[" << i << "] = ";
cin >> A[i];
}
}
void MOSTRAR() {
static int A[10]; // static es necesario para que los valores no se pierdan en el bucle
for (int i = 1; i <= 10; i++) {
cout << "A[" << i << "] = " << A[i] << endl;
}
}
void SUMAR() {
static int A[10]; // static es necesario para que los valores no se pierdan en el bucle
int SUMA = 0;
for (int i = 1; i <= 10; i++) {
SUMA = SUMA + A[i];
}
cout << "La suma de los elementos del vector A[] = " << SUMA << endl;
}
void CODIGOS() {
static char B[256]; // static es necesario para que los valores no se pierdan en el bucle
for (int i = 1; i <= 256; i++) {
B[i] = char(i);
cout << "B[" << i << "] = " << B[i] << endl;
}
cout << endl;
cout << char(161);
cout << "Listado de alfabeto \n";
for (int i = 65; i <= 90; i++) {
cout << "B[" << i << "] = " << B[i] << endl;
}
}
int main() {
int opcion;
double F, L, D_exterior, D_interior, rango_min, rango_max, rango_min_1, rango_max_1, rango_min_2, rango_max_2;
do {
cout << "Seleccione una opción:\n";
cout << "1. Calcular esfuerzo de flexión en ejes huecos.\n";
cout << "2. Calcular esfuerzo de flexión en ejes huecos con una variable en rango.\n";
cout << "3. Calcular esfuerzo de flexión en ejes huecos con dos variables en rango.\n";
cout << "4. Asignar datos a un vector.\n";
cout << "5. Mostrar datos de un vector.\n";
cout << "6. Suma de los elementos de un vector.\n";
cout << "7. Listado de códigos ASCII.\n";
cout << "Ingrese el número de la opción (0 para salir): ";
cin >> opcion;
switch (opcion) {
case 1:
cout << "Ingrese la fuerza aplicada (F): ";
cin >> F;
cout << "Ingrese la longitud del eje (L): ";
cin >> L;
cout << "Ingrese el diámetro exterior del eje (D_exterior): ";
cin >> D_exterior;
cout << "Ingrese el diámetro interior del eje (D_interior): ";
cin >> D_interior;
calcularFlexionHuecos(F, L, D_exterior, D_interior);
break;
case 2:
cout << "Ingrese la fuerza aplicada (F): ";
cin >> F;
cout << "Ingrese la longitud del eje (L): ";
cin >> L;
cout << "Ingrese el diámetro exterior del eje (D_exterior): ";
cin >> D_exterior;
cout << "Ingrese el diámetro interior del eje (D_interior): ";
cin >> D_interior;
cout << "Ingrese el valor mínimo del rango: ";
cin >> rango_min;
cout << "Ingrese el valor máximo del rango: ";
cin >> rango_max;
calcularFlexionRango(F, L, D_exterior, D_interior, rango_min, rango_max);
break;
case 3:
cout << "Ingrese la fuerza aplicada (F): ";
cin >> F;
cout << "Ingrese la longitud del eje (L): ";
cin >> L;
cout << "Ingrese el diámetro exterior del eje (D_exterior): ";
cin >> D_exterior;
cout << "Ingrese el diámetro interior del eje (D_interior): ";
cin >> D_interior;
cout << "Ingrese el valor mínimo del primer rango: ";
cin >> rango_min_1;
cout << "Ingrese el valor máximo del primer rango: ";
cin >> rango_max_1;
cout << "Ingrese el valor mínimo del segundo rango: ";
cin >> rango_min_2;
cout << "Ingrese el valor máximo del segundo rango: ";
cin >> rango_max_2;
calcularFlexionRangoDoble(F, L, D_exterior, D_interior, rango_min_1, rango_max_1, rango_min_2, rango_max_2);
break;
case 4:
ASIGNAR();
break;
case 5:
MOSTRAR();
break;
case 6:
SUMAR();
break;
case 7:
CODIGOS();
break;
default:
if (opcion != 0)
cout << "Opción no válida. Por favor, seleccione nuevamente.\n";
break;
}
} while (opcion != 0);
return 0;
}





Contacto
Siempre estoy en búsqueda de nuevas oportunidades. Vamos a conectarnos.
914-123-456