Emudesc en Facebook!RSS

Retroceder   Foros de Emudesc > Tecnología > Informática > Programación

 
 
Herramientas
  #1  
Antiguo 02-jul-2011, 18:46
Avatar de felomeno
bald Tod
 
Fecha de Ingreso: abril-2007
Mensajes: 7,500
felomeno es un usuario distinguidofelomeno es un usuario distinguidofelomeno es un usuario distinguido
Predeterminado [Aporte][C#]Conversor de Números

C#

El programa convierte un número entero decimal a binario, octal y hexadecimal

Se requiere:
Código:
Visual Studio o similares
Ejemplo
Código:
Entrada:
Introduce un número:
100

Salida:
El número es 100
El número en binario es: 1100100
El número en octal es: 144
El número en hexadecimal es: 64
Ya que el foro está en sus inicios, lo haré de la manera más fácil (aunque larga) para que sea más entendible, no me meteré a explicar cómo se convierte manualmente un número decimal a cada base, pero explicaré el código poniendo comentarios en las líneas que me parezcan importantes.
Código
[SPOILER]
Código PHP:
//Se importan las librerías (Visual Studio lo hace solo)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 
ConversionNumeros  //Esto sirve únicamente para agrupar clases, Visual Studio también lo hace solo
{
    class 
Program  //El nombre de la clase, en este caso "Program"
    
{
        static 
void Main(string[] args)  //El main
        
{
            
int num;
            
int numero;
            
string bin=String.Empty, binc=String.Empty, octal=String.Empty;
            
string  octalc=String.Empty, hexa=String.Empty, hexac=String.Empty;
            
Console.WriteLine ("Introduce un número: ");
            
num Convert.ToInt32(Console.ReadLine()); //C# sólo lee cadenas de texto por lo que hay que convertirlo a número
            
numero num;

          
//Se hace un do-while que siempre se cumple al menos una vez, esto para convertir de decimal a binario
            
do{
                if (
num%2==1)
                    
bin+="1";
                else
                    
bin+="0";
                
num/=2;
            }while (
num!=1);
            
bin+="1";  //Siempre se le agrega un 1 al final

           //Se hace un ciclo for porque el número quedó al revés y hay que invertirlo
            
for (int i=1i<=bin.Length;i++)
                
binc+=bin[bin.Length-i];
            
num=numero;
            
//Un do-while para convertir a octal
            
do{
               
octal+=(num%8);
               
num/=8;
            }while (
num>=8);
            
octal+=num;
           
//Un for para invertir el úmero
            
for (int i=1i<= octal.Length;i++)
                
octalc+=octal[octal.Length-i];
            
num=numero;
            /
Un do-while para convertir a hexadecimal
            
do{
                
//En el caso del hexadecimal también se usan letras por lo que es necesario crear condiciones
                
if(num%16==10)
                    
hexa+="A";
                else if (
num%16==11)
                    
hexa+="B";
                else if (
num%16==12)
                    
hexa+="C";
                else if (
num%16==13)
                    
hexa+="D";
                else if (
num%16==14)
                    
hexa+="E";
                else if (
num%16==15)
                    
hexa+="F";
                else
                    
hexa+=(num%16);
                
num/=16;
            }while (
num!=0);
        
           
//Un for para invertir
            
for (int i=1i<=hexa.Length;i++)
                
hexac+=hexa[hexa.Length-i];
           
            
//La impresión de los resultados
            
Console.WriteLine ("El número es {0}\nEl número en binario es: {1}\n" +
                    
"El número en octal es: {2}"numerobincoctalc); //Lo que está entre corchetes indica
// que serán valores que se darán después de las comillas
            
Console.WriteLine ("El número en hexadecimal es: " hexac);

            
Console.ReadKey();  //Como es en consola, esto evita que se cierre al terminar el programa y espera que se presione una tecla
        
}
    }

[/SPOILER]

Ejecutable (Exe)
[Spoiler]
Conversion de numeros.rar
Nota: Cuando descarguen y descompriman verán una carpeta con varias cosas, no las eliminen, son las librerías necesarias para que el programa funcione, si lo quieren usar sólo den click en el .exe

[/Spoiler]



Última edición por felomeno fecha: 02-jul-2011 a las 18:53.
  #2  
Antiguo 03-nov-2011, 04:22
Newbie
 
Fecha de Ingreso: noviembre-2011
Mensajes: 1
mysterio619619 se está dando a conocer
Predeterminado Re: [Aporte][C#]Conversor de Números

Ok graciaz espero que me funcione!!! graciaz de nuevo!!!
 



Temas Similares para: [Aporte][C#]Conversor de Números
Tema Autor Foro Respuestas Último mensaje
Conversor ACC Guilty Nintendo DS 2 24-jun-2011 18:16
Conversor!! danielaaitaita Nintendo Wii 2 29-ene-2011 17:54
Conversor de Videos ;) ~Sasuke Ayuda 1 25-ago-2009 03:56
[Aporte] TXT60 conversor online de formatos multimedia Keegan70 Informática 0 06-oct-2008 23:00
necesito conversor 3gp Chivi-san Ayuda 4 12-may-2008 20:04


La franja horaria es GMT +1. La hora actual es: 09:51.


Powered by vBulletin®


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93