Есть ответ 👍

Составьте программу поиска чаще всего встречающегося элемента массива с(м,м)

126
314
Посмотреть ответы 3

Ответы на вопрос:


{attention! это самое отвратное моё решение на знаниях. запаситесь валерьянкой перед прочтением кода} //pascal abc.net 3.1 сборка 1219 type   ty=record   valu: integer;   count: integer; end; const   n=3;   var   ma: array[1..n,1..n] of integer;   tyar: array of ty;   se: set of integer;   i,j,z,k,maxcount: integer; begin   randomize;   se: =[];   k: =0;   maxcount: =integer.minvalue;   writeln('matrix: ');   for i: =1 to n do   begin     for j: =1 to n do     begin       ma[i,j]: =random(-10,10);       write(ma[i,j]: 4);       if not(ma[i,j] in se) then         begin         inc(k);         setlength(tyar,k+1);         tyar[k].valu: =ma[i,j];         tyar[k].count: =1;         se: =se+[ma[i,j]];       end       else         for z: =1 to k do {o(n^3) в худшем случае - нормальные люди ненавидят это}         if tyar[z].valu=ma[i,j] then           begin           inc(tyar[z].count);           break;           end;     end;     writeln;   end;   for i: =1 to k do   if maxcount< tyar[i].count then maxcount: =tyar[i].count;   writeln('res: ');   for i: =1 to k do  if tyar[i].count=maxcount then writeln(tyar[i].valu); end. пример работы программы: matrix:   -7   -2   10     8   0   -2     6   10   1 res: -2 10

Можно воспользоваться преимуществами, которые дает pascal 3.1 и программа будет достаточно короткой. // pascalabc.net 3.1, сборка 1250 от 28.05.2016 begin   var m: =readinteger('m=');   var c: =matrixrandom(m,m,10,99);   var d: =new dictionary< integer,integer> ;   for var i: =0 to m-1 do begin       for var j: =0 to m-1 do print(c[i,j]);       println;       end;   foreach var e in c do d[e]: =d.get(e)+1;   var q: =d.orderbydescending(x-> x.value);   var p: =q.first.value;   if p=1 then writeln('все значения в массиве уникальны')   else begin       var s: =q.takewhile(x-> x.value=p).select(x-> x.key);         write('наиболее часто (',p,') ');       if s.count=1 then begin           print('встречается значение');           s.print           end       else begin           print('встречаются значения: ');           s.println           end       end end. тестовые решения m= 3 76 34 96 47 99 79 94 33 11 все значения в массиве уникальны m= 5 43 19 46 70 51 73 46 50 18 25 19 10 32 83 81 32 46 81 23 84 27 91 84 79 28 наиболее часто (3) встречается значение 46 m= 10 89 11 84 46 18 68 56 13 28 34 86 25 84 34 51 13 37 41 26 23 33 74 87 21 11 42 61 42 32 65 34 37 47 23 24 20 61 14 93 31 71 27 19 31 81 94 38 87 74 83 19 74 81 28 70 24 23 72 44 76 17 24 80 62 10 58 78 71 19 40 52 33 48 94 51 16 64 65 40 16 13 74 68 48 56 60 56 28 53 99 97 88 69 27 23 57 46 57 31 33 наиболее часто (4) встречаются значения: 23 74
366023
4,5(61 оценок)

12000 байт.///если я пригодилась дай ///

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS