<file_sep>﻿namespace System //Conversor_BIN_DEC_HEX.Functions
{
    class ConvertHexDecBin
    {
        public void ConvertBinDec()
        {
            int contador = 0;
            Console.WriteLine();
            Console.Write("Digite um número hexadecimal: ");
            ConversorDecimal dec = new ConversorDecimal { digito = Console.ReadLine() };
            ConversorBinario bin = new ConversorBinario();
            char[] s = dec.digito.ToCharArray();

            while (contador == 0)
            {
                foreach (char w in s)
                {
                    if (w != '0' && w != '1' && w != '2' && w != '3' && w != '4' && w != '5' && w != '6' && w != '7' && w != '8' && w != '9' && w != 'a' && w != 'b' && w != 'c' && w != 'd' && w != 'e' && w != 'f' && w != 'A' && w != 'B' && w != 'C' && w != 'D' && w != 'E' && w != 'F') contador = 1;
                }

                if (contador == 1)
                {
                    Console.WriteLine("FAVOR DIGITAR ALGARISMOS ENTRE 0 ATÉ 9 E OU A ATÉ F!!!");
                    Console.WriteLine();
                    Console.Write("Digite um número hexadecimal: ");
                    dec.digito = Console.ReadLine();
                    Console.WriteLine();
                    Console.WriteLine("Número digitado é: " + dec.digito.ToUpper());
                    s = dec.digito.ToCharArray();
                    contador = 0;
                }

                else
                {
                    Console.WriteLine();
                    Console.Write("Número digitado é: " + dec.digito.ToUpper());
                    contador = 1;
                }
            }

            Console.WriteLine();
            dec.DeciHex();
            Console.WriteLine();
            bin.digito = dec.y.ToString();
            bin.Bina();
            Console.WriteLine();
            Console.WriteLine();
        }
    }
}<file_sep>﻿namespace System //Conversor_BIN_DEC_HEX.Functions
{
    class ConvertDecBinHex
    {
        public void ConvertBinHex()
        {
            int contador = 0;
            Console.WriteLine();
            Console.Write("Digite um número decimal: ");
            ConversorBinario bin = new ConversorBinario { digito = Console.ReadLine() };
            ConversorHexadecimal hex = new ConversorHexadecimal();
            char[] s = bin.digito.ToCharArray();

            while (contador == 0)
            {
                foreach (char w in s)
                {
                    if (w != '0' && w != '1' && w != '2' && w != '3' && w != '4' && w != '5' && w != '6' && w != '7' && w != '8' && w != '9') contador = 1;
                }

                if (contador == 1)
                {
                    Console.WriteLine("FAVOR DIGITAR ALGARISMOS ENTRE 0 À 9!!!");
                    Console.WriteLine();
                    Console.Write("Digite um número decimal: ");
                    bin.digito = Console.ReadLine();
                    Console.WriteLine();
                    Console.WriteLine("Número digitado foi: " + bin.digito);
                    s = bin.digito.ToCharArray();
                    contador = 0;
                }

                else
                {
                    Console.WriteLine();
                    Console.Write("Número digitado é: " + bin.digito);
                    contador = 1;
                }
            }

            Console.WriteLine();
            bin.Bina();
            Console.WriteLine();
            hex.digito = bin.digito;
            hex.Hexa();
            Console.WriteLine();
            Console.WriteLine();
        }
    }
}<file_sep>﻿using System;

namespace Conversor_BIN_DEC_HEX
{
    class Program
    {
        static void Main()
        {
            Decisao decidir = new Decisao();
            decidir.Decide();
        }
    }
}<file_sep>﻿namespace System //Conversor_BIN_DEC_HEX.Functions
{
    class ConvertBinDecHex
    {
        public void ConvertDecHex()
        {
            int contador = 0;
            Console.WriteLine();
            Console.Write("Digite um número binário: ");
            ConversorDecimal dec = new ConversorDecimal {digito = Console.ReadLine()};
            ConversorHexadecimal hex = new ConversorHexadecimal();
            char[] s = dec.digito.ToCharArray();

            while (contador == 0)
            {
                foreach (char w in s)
                {
                    if (w != '0' && w != '1') contador = 1;
                }

                if (contador == 1)
                {
                    Console.WriteLine("FAVOR DIGITAR ALGARISMOS ENTRE 0 OU 1!!!");
                    Console.WriteLine();
                    Console.Write("Digite um número binário: ");
                    dec.digito = Console.ReadLine();
                    Console.WriteLine();
                    Console.WriteLine("Número digitado foi: " + dec.digito);
                    s = dec.digito.ToCharArray();
                    contador = 0;
                }
                else
                {
                    Console.WriteLine();
                    Console.Write("Número digitado foi: " + dec.digito);
                    contador = 1;
                }
            }

            Console.WriteLine();
            dec.DeciBin();
            hex.digito = dec.y.ToString();
            hex.Hexa();
            Console.WriteLine();
            Console.WriteLine();
        }
    }
}

<file_sep>﻿using System.Collections.Generic;

namespace System //Conversor_BIN_DEC_HEX.Conversores
{
    class ConversorBinario
    {
        public List<int> list = new List<int>();
        public string digito;

        public void Bina()
        {
            int valor = int.Parse(digito);

            while (valor != 0)
            {
                int resultado = valor / 2;
                int resto = valor % 2;
                int aux = resultado;
                valor = aux;
                list.Insert(0, resto);
            }

            Console.Write("Convertido em binário é: ");

            foreach (int obj in list)
            {
                Console.Write(obj);
            }
        }
    }
}<file_sep>﻿namespace System //Conversor_BIN_DEC_HEX.Functions
{
    class Decisao
    {
        public int escolha;

        public void Decide()
        {
            Console.WriteLine("CONVERSOR NUMÉRICO!!!");
            Console.Write("Escolha 1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / BINÁRIO & DECIMAL) ou 4 (SAIR): ");
            int contador = 0;
            while (contador == 0)
            {
                try
                {
                    escolha = int.Parse(Console.ReadLine());
                    if (escolha < 1 || escolha > 4)
                    {
                        Console.Write("FAVOR DIGITAR UM VALOR ENTRE 1 À 4!!! Qual a sua escolha [1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / DECIMAL & BINÁRIO) ou 4 (SAIR)]? ");
                    }

                    if (escolha == 1)
                    {
                        ConvertBinDecHex conDecHex = new ConvertBinDecHex();
                        conDecHex.ConvertDecHex();
                        Console.Write("Escolha 1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / BINÁRIO & DECIMAL) ou 4 (SAIR): ");
                    }

                    if (escolha == 2)
                    {
                        ConvertDecBinHex conBinHex = new ConvertDecBinHex();
                        conBinHex.ConvertBinHex();
                        Console.Write("Escolha 1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / BINÁRIO & DECIMAL) ou 4 (SAIR): ");
                    }

                    if (escolha == 3)
                    {
                        ConvertHexDecBin conBinDec = new ConvertHexDecBin();
                        conBinDec.ConvertBinDec();
                        Console.Write("Escolha 1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / BINÁRIO & DECIMAL) ou 4 (SAIR): ");
                    }

                    if (escolha == 4)
                    {
                        contador = 1;
                        Console.WriteLine();
                        Console.WriteLine("ADEUS!!!");
                        Console.ReadLine();
                    }
                }

                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    Console.WriteLine();
                    Console.Write("FAVOR DIGITAR UM VALOR ENTRE 1 À 4!!! Qual a sua escolha [1 (BINÁRIO / DECIMAL & HEXADECIMAL), 2 (DECIMAL / BINÁRIO & HEXADECIMAL), 3 (HEXADECIMAL / BINÁRIO & DECIMAL) ou 4 (SAIR)? ");
                    contador = 0;
                }

            }
        }
    }
}