Navigace: Hlavní stránka -> BASIC -> 04 Cykly -> 04.26 Převod zlomku na základní tvar

MENU

04.26 Převod zlomku na základní tvar

Zadání:
Sestavte program, který převede zlomek na základní tvar.
Řešení:
Program využívá program 04.25 - hledání největšího společného dělitele. Na začátku programu otestujeme, zda
jmenovatel není nulový. Pokud ano, vytiskneme chybové hlášení. Poté otestujeme čitatel na nulovou hodnotu.
Pokud ji obsahuje, vytiskneme hlášení o nulovém zlomku. Pokud ani jedna zadaná hodnota není nulová, zjistíme
znaménko výsledného zlomku, absolutní hodnotou odstraníme znaménka čitatele i jmenovatele a dalčí část
programu zjistí největší společný dělitel jmenovatele a čitatele. Poté čitatel a jmenovatele vydělíme největším
společným dělitelem a výsledek vytiskneme včetně znaménka.
Module Module1

    Sub Main()
 
        Dim a, b, c, j, nsd As Integer
        Dim znamenko As Char

        Console.Write("Zadejte citatel: ")
        a = Console.ReadLine
        Console.Write("Zadejte jmenovatel: ")
        b = Console.ReadLine

        If b = 0 Then
            Console.WriteLine("Nelze vypocitat.")
        Else
            If a = 0 Then
                Console.WriteLine("Zlomek v zakladnim tvaru: 0")
            Else
                If a * b < 0 Then
                    znamenko = "-"
                Else
                    znamenko = " "
                End If
            End If
            c = Math.Abs(a)
            j = Math.Abs(b)
            Do While c <> j
                If c > j Then
                    c = c - j
                Else
                    j = j - c
                End If
            Loop
        End If
        nsd = c
        c = Math.Abs(a) \ nsd
        j = Math.Abs(b) \ nsd

        If j = 1 Then
            Console.WriteLine("Zlomek v zakladnim tvaru: {0}{1}", znamenko, c)
        Else
            Console.WriteLine("Zlomek v zakladnim tvaru: {0}{1}/{2}", znamenko, c, j)
        End If

        Console.ReadLine()

    End Sub

End Module
program ke stažení