Задать вопрос
12 декабря, 05:21

Заполнить случайными числами в диапазоне от 1 до 10 массив A[N]. Найти в получившемся массиве наиболее часто встречающееся число. Если таких чисел несколько, то вывести наименьшее из них. Вывести на экран сам массив и получившееся число. Протестировать программу на трёх произвольных тестах, доказав правильность её работы.

+1
Ответы (1)
  1. 12 декабря, 07:25
    0
    Значит так: мы создаем массив избыточной длины, куда потом будем записывать рандомные числа. Так же мы создаем массив-счетчик b (у него индексами являются сами числа, а элементами - количество этого числа в массиве А), куда будет присваиваться, сколько раз нам встречается то или иное число (перед этим мы массив обязательно обнулим). В конце мы смотрим максимальное число из массива-счетчика. Вуаля!

    Вот пример программы на паскале ABC:

    var a:array [1 ... 1000000] of integer;

    b:array [1 ... 10] of longint;

    c:integer;

    i, max, n:longint;

    begin

    write ('Введите число элементов массива: ');

    readln (n);

    max:=0;

    for i:=1 to 10 do

    b[i]:=0;

    for i:=1 to n do begin

    a[i]:=random (10) + 1;

    write (a[i],' ');

    b[a[i]]:=b[a[i]]+1

    end;

    for i:=1 to 10 do if b[i]>max then

    begin

    c:=i;

    max:=b[i]

    end;

    writeln;

    writeln ('Чаще всего в массиве встречается число ', c)

    end.
Знаешь ответ?
Не уверен в ответе?
Найди верный ответ на вопрос ✅ «Заполнить случайными числами в диапазоне от 1 до 10 массив A[N]. Найти в получившемся массиве наиболее часто встречающееся число. Если ...» по предмету 📙 Информатика, а если ответа нет или никто не дал верного ответа, то воспользуйся поиском и попробуй найти ответ среди похожих вопросов.
Искать другие ответы