Navigace: Hlavní stránka -> BASIC -> 05 Jednorozměrná pole -> 05.05 Aplikace funkce signum na pole a naplnění výsledkem druhého pole

MENU

05.05 Aplikace funkce signum na pole a naplnění výsledkem druhého pole

Zadání:
Sestavte program, který nageneruje pole o 15 prvcích hodnotami z intervalu -10..10. Do druhého pole na pozici kladných čísel z prvního pole umístí hodnotu -1, nulové ponechá a na pozici kladných vloží hodnotu +1 (funkce signum). Obě pole vytiskne.
Řešení:
Pro jednoduchost budeme generovat hodnoty prvků pole z intervalu -10..+10 (pole1(i)=Rnd()*21-10).
Pomocí cyklu FOR nagenerujeme každou hodnotu prvku pole, vložíme jí na příslušnou pozici a hned otestujeme,
zda je menší, rovno či větší než nula a na základě výsledku do druhého pole vložíme hodnotu -1, 0 nebo +1.
Na konci programu pomocí cyklu FOR obě pole vytiskneme.
Module Module1

    Sub Main()

        Dim pole1(14), pole2(14), i As Integer
        Randomize(Timer)

        For i = 0 To 14
            pole1(i) = Rnd() * 21 - 10
            If pole1(i) < 0 Then pole2(i) = -1
            If pole1(i) = 0 Then pole2(i) = 0
            If pole1(i) > 0 Then pole2(i) = 1
        Next

        Console.Write("Původní pole: ")

        For i = 0 To 14
            Console.Write("{0} ", pole1(i))
        Next

        Console.WriteLine()

        Console.Write("Nové pole:   ")

        For i = 0 To 14
            Console.Write(" {0}", pole2(i))
        Next

        Console.ReadLine()

    End Sub

End Module
program ke stažení