Navigace: Hlavní stránka -> BASIC -> 07 Podprogramy -> 07.05 Funkce - převod čísla z desítkové do dvojkové soustavy

MENU

07.05 Funkce - převod čísla z desítkové do dvojkové soustavy

Zadání:
Sestavte funkci na převod desítkového čísla do dvojkové soustavy.
Řešení:
Funkce je řešena postupným dělením zadaného desítkového čísla číslem 2 a na základě zbytku tohoto dělení se postupně
ke znakovému řetězci přidává zprava nula nebo jednička. Dělení končí, pokud výsledek bude nulový.

Př.:
34 : 2 = 17, zb. 0
17 : 2 = 8, zb. 1
8 : 2 = 4, zb. 0
4 : 2 = 2, zb. 0
2 : 2 = 1, zb. 0
1 : 2 = 0, zb. 1

Výsledek: 100010
Module Module1

    Function prevod(ByVal x As Integer)
        Dim y As String
        y = ""
        Do
            If x Mod 2 = 1 Then
                y = "1" + y
            Else
                y = "0" + y
            End If
            x = x \ 2
        Loop Until x = 0
        prevod = y
    End Function

    Sub Main()


        Dim a As Integer
        Dim s As String

        Console.Write("Zadejte cislo v desitkove soustave: ")
        a = Console.ReadLine

        s = prevod(a)

        Console.WriteLine("{0}D={1}B", a, s)

        Console.ReadLine()

    End Sub

End Module
program ke stažení