using System;
public class CalculadoraCoulomb
{
/// <summary>
/// Calcula la fuerza eléctrica entre dos cargas puntuales.
/// </summary>
/// <param name="q1">El valor de la primera carga en Coulombs (C).</param>
/// <param name="q2">El valor de la segunda carga en Coulombs (C).</param>
/// <param name="r">La distancia entre las cargas en metros (m).</param>
/// <returns>La magnitud de la fuerza eléctrica en Newtons (N).</returns>
public static double CalcularFuerzaElectrica(double q1, double q2, double r)
{
// La constante de Coulomb (k) es aproximadamente 8.98755 × 10^9 N·m²/C²
const double k = 8.98755e9;
// Aplicamos la fórmula de la Ley de Coulomb: F = k * |q1 * q2| / r²
// Usamos Math.Abs() para obtener el valor absoluto del producto de las cargas
// y Math.Pow() para elevar la distancia al cuadrado.
double fuerza = k * (Math.Abs(q1 * q2)) / Math.Pow(r, 2);
return fuerza;
}
public static void Main(string[] args)
{
Console.WriteLine("--- ⚡ Calculadora de la Ley de Coulomb ⚡ ---");
// --- ENTRADA DE DATOS ---
Console.Write("Introduce el valor de la primera carga (q1) en Coulombs: ");
double carga1 = Convert.ToDouble(Console.ReadLine());
Console.Write("Introduce el valor de la segunda carga (q2) en Coulombs: ");
double carga2 = Convert.ToDouble(Console.ReadLine());
Console.Write("Introduce la distancia de separación (r) en metros: ");
double distancia = Convert.ToDouble(Console.ReadLine());
// --- LLAMADA A LA FUNCIÓN Y SALIDA DE RESULTADOS ---
// Se llama a la función con los valores proporcionados por el usuario.
double fuerzaResultante = CalcularFuerzaElectrica(carga1, carga2, distancia);
// Se imprime el valor retornado por la función.
Console.WriteLine("\n----------------------------------------------------");
// Usamos el formato "N" para una mejor visualización del número.
Console.WriteLine($"➡️ La magnitud de la fuerza eléctrica es: {fuerzaResultante:N} Newtons (N)");
Console.WriteLine("----------------------------------------------------");
}
}