Задать вопрос
4 января, 01:01

При помощи датчика случайных чисел вводится последовательность a, состоящая из N (случайное трёхзначное число) целых положительных случайных 4-х значных чисел. Получить последовательность b, куда включить только простые числа из последовательности а. Обе последовательности вывести в соседние столбцы рабочего листа. на языке VBA

+1
Ответы (1)
  1. 4 января, 04:24
    0
    Function IsPrime (n As Integer) As Boolean

    Dim found As Integer

    found = n Mod 2 = 0

    Dim p As Integer

    p = 3

    Do While Not found And p * p < = n

    found = n Mod p = 0

    p = p + 2

    Loop

    IsPrime = Not found

    End Function

    Sub main ()

    Randomize Timer

    Dim n As Integer, i As Integer, k As Integer

    n = 100 + Int (Round (899 * Rnd))

    ReDim a (1 To n) As Integer

    ReDim b (1 To n) As Integer

    i = 0: k = 0

    MsgBox n

    Do While i < n

    i = i + 1

    a (i) = 1000 + Int (Round (8999 * Rnd))

    If IsPrime (a (i)) Then

    k = k + 1

    b (k) = a (i)

    End If

    Loop

    Rows ("1:1000"). Clear

    Range (Cells (1, 1), Cells (n, 1)) = a

    For i = 1 To k

    Cells (i, 1) = a (i)

    Cells (i, 2) = b (i)

    Next i

    If k > 1 Then 'Сортировка второй колонки, так красивее

    Dim r As Range

    Set r = Range (Cells (1, 2), Cells (k, 2))

    r. Sort Range ("B1")

    End If

    For i = k + 1 To n

    Cells (i, 1) = a (i)

    Next i

    End Sub
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «При помощи датчика случайных чисел вводится последовательность a, состоящая из N (случайное трёхзначное число) целых положительных ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы