Los sistemas de numeración son conjuntos de dígitos usados para
representar cantidades, así se tienen los sistemas de numeración decimal,
binario, octal, hexadecimal, romano, etc. Los cuatro primeros se caracterizan
por tener una base (número de dígitos diferentes: diez, dos, ocho, dieciséis
respectivamente).
Este es el diseño del proyecto realizado.
Este es el código utilizado:
Public Class Form1
Private Sub
Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button4.Click
Me.Close()
End Sub
Private Sub
Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button1.Click
Dim bits() As Integer
Dim pos As Integer = -1
Dim x As Integer = Val(txtnume.Text)
Dim bit As Integer
Do While x >= 2
bit = x Mod 2 'se obtiene el bit
x = Int(x / 2) 'se obtiene el siguiente numero
pos = pos + 1
ReDim
Preserve bits(pos) 'asignar
el tamaño del vector
bits(pos) = bit
Loop
'******se
almacena el ultimo bit*****************
'**************que
se obtiene de lo que halla quedado************
pos = pos + 1
ReDim Preserve bits(pos) 'se crea
una nueva posicion
bits(pos) = x
txtresultado.Text = ""
For i As Integer = pos To 0 Step -1
'MsgBox(bits(i))
txtresultado.Text = txtresultado.Text & bits(i)
Next
End Sub
Private Sub
Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button5.Click
Dim binarios As String
binarios
= txtnume.Text()
Dim potencia As Integer = -1
Dim bit As Integer
Dim base As Integer
Dim numdecimal As Integer
For i = (binarios.Length - 1) To 0 Step -1
potencia = potencia + 1
bit = Val(binarios(i)) 'obtengo el bit de la cadena
base = 2 ^ potencia 'elevo el bit a la potencia
numdecimal = numdecimal + (bit *
base)
txtresultado.Text = ""
Next
'MsgBox(numdecimal)
txtresultado.Text = txtresultado.Text
& numdecimal
End Sub
Private Sub
Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button2.Click
Dim bits() As Integer
Dim pos As Integer = -1
Dim x As Integer = Val(txtnume.Text)
Dim bit As Integer
Do While x >= 8
bit = x Mod 8 'se obtiene el bit
x = Int(x / 8) 'se obtiene el siguiente numero
pos = pos + 1
ReDim
Preserve bits(pos) 'asignar
el tamaño del vector
bits(pos) = bit
Loop
'******se
almacena el ultimo bit*****************
'**************que
se obtiene de lo que halla quedado************
pos = pos + 1
ReDim Preserve bits(pos) 'se crea
una nueva posicion
bits(pos) = x
txtresultado.Text = ""
For i As Integer = pos To 0 Step -1
'MsgBox(bits(i))
txtresultado.Text = txtresultado.Text & bits(i)
Next
End Sub
Private Sub
Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button6.Click
Dim octales As String
octales
= txtnume.Text()
Dim potencia As Integer = -1
Dim octal As Integer
Dim base As Integer
Dim numdecimal As Integer
For i = (octales.Length - 1) To
0 Step -1
potencia = potencia + 1
octal = Val(octales(i))
base = 8 ^ potencia
numdecimal = numdecimal + (octal *
base)
txtresultado.Text = ""
Next
'MsgBox(numdecimal)
txtresultado.Text = txtresultado.Text
& numdecimal
End Sub
Private Sub
Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button3.Click
Dim hexa() As String
Dim pos As Integer = -1
Dim hexad As String
Dim x As Integer = Val(txtnume.Text)
Dim hex As String
Do While x >= 16
hex
= x Mod 16
x =
Int(x / 16)
pos
= pos + 1
Select Case hex
Case "10"
: hexad = "A"
Case "11" : hexad = "B"
Case "12"
: hexad = "C"
Case "13"
: hexad = "D"
Case "14"
: hexad = "E"
Case "15"
: hexad = "F"
Case Else
hexad = hex
End Select
ReDim Preserve
hexa(pos)
hexa(pos) = hexad
Loop
pos = pos + 1
ReDim Preserve hexa(pos)
hexa(pos) = x
txtresultado.Text = ""
For i As Integer = pos To 0 Step -1
txtresultado.Text = txtresultado.Text & hexa(i)
Next
End Sub
Private Sub
Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button7.Click
Dim hexadecimales As String
hexadecimales
= txtnume.Text
Dim potencia As Integer = -1
Dim Hex As String
Dim base As Integer
Dim numdecimal As Integer
Dim numero As Integer
For i = (hexadecimales.Length - 1) To 0 Step -1
potencia = potencia + 1
Hex = UCase(hexadecimales(i))
Select Case Hex
Case "A"
: numero = 10
Case "B"
: numero = 11
Case "C"
: numero = 12
Case "D"
: numero = 13
Case "E"
: numero = 14
Case "F"
: numero = 15
Case Else
numero = Val(Hex)
End Select
base = 16 ^ potencia 'elevo el bit a la potencia
numdecimal = numdecimal + (numero *
base)
txtresultado.Text = ""
Next
'MsgBox(numdecimal)
txtresultado.Text = txtresultado.Text
& numdecimal
End Sub
Private Sub
Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button8.Click
txtnume.Clear()
txtresultado.Clear()
End Sub
Private Sub
Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
End Sub
End Class
No hay comentarios:
Publicar un comentario