Задать вопрос
21 октября, 01:19

Заполнить массив случайными целыми числами и выделить в другой массив все числа, которые встречаются более одного раза. (Паскаль)

+2
Ответы (1)
  1. 21 октября, 02:31
    0
    const

    n = 15;

    var

    a, b: array[1 ... n] of integer;

    i, j, step, t: integer;

    flag: boolean;

    begin

    Randomize;

    Writeln ('Исходные элементы массива') ;

    for i : = 1 to n do

    begin

    a[i] : = Random (10) - 5;

    Write (a[i]:4)

    end;

    { Сортируем массив (метод Шелла) }

    step : = n div 2;

    while step > 0 do

    begin

    for j : = n - step downto 1 do

    begin

    i : = j;

    while i < = n - step do

    begin

    if a[i] > a[i + step] then

    begin

    t : = a[i]; a[i] : = a[i + step]; a[i + step] : = t

    end;

    i : = i + step

    end

    end;

    step : = step div 2

    end;

    {

    проходим по массиву и если элемент встречается более одного раза подряд,

    переносим его в другой массив

    }

    j : = 0; t : = a[1]; flag : = false;

    for i : = 2 to n do

    begin

    if (a[i] = t) and (not flag) then

    begin

    j : = j + 1; b[j] : = t; flag : = true

    end

    else begin flag : = false; t : = a[i] end

    end;

    Writeln;

    Writeln ('Отобранные элементы массива') ;

    for i : = 1 to j do Write (b[i]:4) ;

    Writeln

    end.

    Тестовое решение:

    Исходные элементы массива

    -2 4 1 - 3 - 1 - 2 - 5 - 1 2 4 1 3 - 5 - 2 - 3

    Отобранные элементы массива

    -5 - 3 - 2 - 1 1 4
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Заполнить массив случайными целыми числами и выделить в другой массив все числа, которые встречаются более одного раза. (Паскаль) ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике
1. Заполнить массив а [1 ... 14] случайными целыми числами в диапазоне от 1 до 18 и вывести на экран элементы массива с нечетными значениями, меньшими 10. 2. Заполнить массив а [1 ...
Ответы (1)
дано 2 одномерных массива размером 20 ячеек первый массив заполнить случайными числами от 10 до 50 второй заполнить случайными числами от 30 до 90 первый массив отсортировать по возврастанию второй по убыванию посчитать среднее арифметическое
Ответы (1)
Во имя радостных мессий, помогите хоть одну задачку. Не шарю ( Дан массив из 15 элементов. Необходимо заполнить его с помощью оператора присваивания (случайными числами), вывести все элементы в строку, а затем вывести произведение всех элементов
Ответы (1)
1) Заполнить массив размером N целыми числами последовательно от 1 до N. Вывести его на экран. Найти сумму элементов массива и вывести ее на экран. 2) Заполнить массив размером N целыми числами последовательно от N до 1. Вывести его на экран.
Ответы (1)
1. Массив из 25 элементов заполнить случайными числами из диапазона [-100 ... 100] и вывести на экран. Найдите элемент массива с максимальной суммой цифр. 2. Массив из 20 элементов заполнить случайными числами из диапазона [1 ...
Ответы (1)