string archivo = "bitacora.txt";
using (StreamWriter sw = new StreamWriter(archivo, false))
Console.Write(" nombre ");
string nombre = Console.ReadLine();
sw.WriteLine($"{nombre} hizo");
Console.WriteLine("\nMenu");
Console.WriteLine("1 Tabla de un número");
Console.WriteLine("2 Serie 4n");
Console.WriteLine("3 Potencia x^n");
Console.WriteLine("4 Salir e imprimir bitácora");
string inputOpcion = Console.ReadLine();
if (EsNumeroValido(inputOpcion, out opcion))
Console.Write("Ingrese el número para la tabl ");
string inputX = Console.ReadLine();
Console.Write("Hasta qué número? ");
string inputHasta = Console.ReadLine();
if (EsNumeroValido(inputX, out int x) && EsNumeroValido(inputHasta, out int hasta))
sw.WriteLine("Tabla del {0} hasta {1}", x, hasta);
Recursividad.Tabla(x, 1, hasta);
Console.WriteLine("Entradas inválidas.");
Console.Write("Ingrese el número límite para la serie 4n ");
string inputN = Console.ReadLine();
if (EsNumeroValido(inputN, out int n))
sw.WriteLine("- Serie 4n hasta {0}", n);
Recursividad.Serie4n(1, n);
Console.WriteLine("Entrada inválida");
Console.Write("Ingrese la base x: ");
string inputBase = Console.ReadLine();
Console.Write("Ingrese el exponente n: ");
string inputExp = Console.ReadLine();
if (EsNumeroValido(inputBase, out int baseNum) && EsNumeroValido(inputExp, out int exp))
sw.WriteLine("Potencia {0}^{1}", baseNum, exp);
int resultado = Recursividad.Potencia(baseNum, exp);
Console.WriteLine(" {0}^{1} = {2}", baseNum, exp, resultado);
Console.WriteLine("Entradas inválidas.");
Console.WriteLine("Opción no válida.");
Console.WriteLine("Ingrese un número válido.");
Console.WriteLine("\nBitácora");
string contenido = File.ReadAllText(archivo);
Console.WriteLine(contenido);
static bool EsNumeroValido(string input, out int resultado)
foreach (char c in input)
resultado = int.Parse(input);
public static void Tabla(int numero, int actual, int limite)
Console.WriteLine("{0} x {1} = {2}", numero, actual, numero * actual);
Tabla(numero, actual + 1, limite);
public static void Serie4n(int actual, int limite)
Console.WriteLine(valor);
Serie4n(actual + 1, limite);
public static int Potencia(int baseNum, int exponente)
return baseNum * Potencia(baseNum, exponente - 1);