namespace IntegralTrapeciosOp2
static void Main(string[] args)
Console.WriteLine("Integral de g(x) = e^(x^2) usando método de los trapecios");
double a = ReadDouble("Introduce el límite inferior:");
double b = ReadDouble("Introduce el límite superior:");
if (a > b) Swap(ref a, ref b);
double resultado = Trapecios(x => Math.Exp(x * x), a, b, n);
Console.WriteLine($"\nResultado aproximado con {n} trapecios: {resultado:F6}");
static double Trapecios(Func<double, double> f, double a, double b, int n)
double suma = 0.5 * (f(a) + f(b));
for (int i = 1; i < n; i++)
static double ReadDouble(string prompt)
Console.Write($"{prompt} ");
while (!double.TryParse(Console.ReadLine(), out val))
Console.Write("Entrada inválida. Intenta de nuevo: ");
static void Swap(ref double x, ref double y)