Navigace: Hlavní stránka -> BASIC -> 04 Cykly -> 04.22 Hledání prvočísla dle zadaného pořadí

MENU

04.22 Hledání prvočísla dle zadaného pořadí

Zadání:
Sestavte program, který nalezne prvočíslo dle zadaného pořadí.
Řešení:
Řešení vychází z programu 04.21. Na začátku programu vložíme do proměnné c hodnotu 1 (jedna). Pomocí cyklu
DO ... LOOP UNTIL vždy zvýšíme hodnotu této proměnné o 1 a otestujeme, zda obsahuje prvočíslo. Pokud ano,
zvýšíme hodnotu proměnné p o 1 (v této proměnné evidujeme počet nalezených prvočísel). Cyklus ukončíme tehdy,
když bude počet nalezených prvočísel shodný se zadaným pořadím. Pak nalezené prvočíslo vytiskneme.
Module Module1

    Sub Main()

        Dim c, i, n, p As Integer
        Dim prvocislo As Boolean

        Console.Write("Zadejte, kolikate prvocislo chcete najit: ")
        n = Console.ReadLine

        c = 1
        p = 0

        Do
            c = c + 1
            prvocislo = True
            For i = 2 To Math.Round(Math.Sqrt(c))
                If c Mod i = 0 Then prvocislo = False
            Next
            If prvocislo Then p = p + 1
        Loop Until p = n

        Console.WriteLine("{0}.prvocislo: {1}", n, c)

        Console.ReadLine()

    End Sub

End Module
program ke stažení
Pro studenty:
Uvedený program předpokládá, že prvním prvočíslem je hodnota 2.