/// <summary>
/// Verifica si un número binario es válido.
/// </summary>
/// <param name="binaryNumber">El número binario a verificar.</param>
/// <returns>True si el número binario es válido, False en caso contrario.</returns>
public static bool IsBinary(string binaryNumber)
{
bool isBinary = true;
foreach (char digit in binaryNumber)
{
if (digit != '0' && digit != '1')
{
isBinary = false;
}
}
return isBinary;
}
/// <summary>
/// Verifica si un número octal es válido.
/// </summary>
/// <param name="octalNumber">El número octal a verificar.</param>
/// <returns>True si el número octal es válido, False en caso contrario.</returns>
public static bool IsOctal(string octalNumber)
{
bool isOctal = true;
foreach (char digit in octalNumber)
{
if (digit < '0' || digit > '7')
{
isOctal = false;
}
}
return isOctal;
}
/// <summary>
/// Verifica si un número hexadecimal es válido.
/// </summary>
/// <param name="hexadecimalNumber">El número hexadecimal a verificar.</param>
/// <returns>True si el número hexadecimal es válido, False en caso contrario.</returns>
public static bool IsHexadecimal(string hexadecimalNumber)
{
bool isHexadecimal = true;
foreach (char digit in hexadecimalNumber)
{
if (!IsHexDigit(digit))
{
isHexadecimal = false;
}
}
return isHexadecimal;
}
/// <summary>
/// Verifica si un carácter es un dígito hexadecimal válido.
/// </summary>
/// <param name="hexDigit">El carácter a verificar.</param>
/// <returns>True si el carácter es un dígito hexadecimal válido, False en caso contrario.</returns>
public static bool IsHexDigit(char hexDigit)
{
bool isHexDigit = (hexDigit >= '0' && hexDigit <= '9') ||
(hexDigit >= 'A' && hexDigit <= 'F') ||
(hexDigit >= 'a' && hexDigit <= 'f');
return isHexDigit;
}
C#: Comprobar si una cadena corresponde a un número binario/octal/hexadecimal
Tiempo de lectura: < 1 minuto