Задать вопрос
6 марта, 10:10

Программа на паскале

В массив записаны случайные числа от 1 до 10, количество элементов в массиве 10000. Определить какое число чаще всего повторяется

+4
Ответы (2)
  1. 6 марта, 10:23
    0
    Не самый лёгкий, но работающий способ

    const n = 10000; //Не изменяемая по ходу программы переменная

    var a: array[1 ... n] of integer; b: array[1 ... 10]of integer; c: array[1 ... 10]of integer; i, s, v: integer;

    begin for i : = 1 to 10 do / / Заполнение массива с числами от 1 до 10 c[i] : = i; for i : = 1 to n do / / Заполнение массива a[i] : = random (10) + 1; / / Делается для того чтобы в массиве не было нулей for i : = 1 to n do case a[i] of 1: b[1] : = b[1] + 1; 2: b[2] : = b[2] + 1; 3: b[3] : = b[3] + 1; 4: b[4] : = b[4] + 1; 5: b[5] : = b[5] + 1; 6: b[6] : = b[6] + 1; 7: b[7] : = b[7] + 1; 8: b[8] : = b[8] + 1; 9: b[9] : = b[9] + 1; 10: b[10] : = b[10] + 1; End; for i : = 1 to 10 do for s : = 1 to 9 do if b[s] > b[s + 1] then begin v : = b[s]; b[s] : = b[s + 1]; b[s + 1] : = v; v : = c[s]; c[s] : = c[s + 1]; c[s + 1] : = v; end; writeln (c[10], ' - их ', b[10]) ; end.
  2. 6 марта, 10:34
    0
    Для этого задания необязательно делать массив из 10000 элементов, но если надо то вот простейший вариант.

    var

    a:array[1 ... 10000] of byte;

    count:array[1 ... 10] of integer;

    i, max, index:integer;

    begin

    for i:=1 to 10000 do

    begin

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

    inc (count[ a[i] ]) ;

    end;

    for i:=1 to 10 do

    if max < count[i] then

    begin

    max: = count[i];

    index: = i;

    end;

    writeln (index,' Повторяется ', max) ;

    end.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Программа на паскале В массив записаны случайные числа от 1 до 10, количество элементов в массиве 10000. Определить какое число чаще всего ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы