Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.21;
Скачать: CL | DM;

Вниз

Маленькая задачка   Найти похожие ветки 

 
altex   (2007-01-04 19:06) [0]

имеется массив array of integer, в нем числа от 0 до 9, нужно узнать какое из них чаще всего встречается и сколько раз оно встречается?


 
MetalFan_pda   (2007-01-04 19:17) [1]

а самому подумать?
а мы подкорректируем если что ;)


 
begin...end ©   (2007-01-04 19:18) [2]

Оплата, надеюсь, натурой?

const
 A: array [1..15] of Integer = (1, 2, 3, 2, 4, 4, 2, 2, 7, 8, 3, 1, 2, 4, 9);
var
 B: array [0..9] of Integer;
 I, N: Integer;
begin
 FillChar(B, sizeof(B), 0);
 for I := Low(A) to High(A) do
   Inc(B[A[I]]);
 N := 0;
 for I := Low(B) + 1 to High(B) do
   if B[I] > B[N] then
     N := I;
 ShowMessageFmt("Число %d встречается чаще всего -- %d раз(а)", [N, B[N]])
end


 
Palladin ©   (2007-01-04 19:22) [3]

Procedure dummy001(Const a:Array of Integer);
var
i:integer;
s:String;
c:array [0..9] of integer;
m:Integer;
Begin

ZeroMemory(@c,sizeof(c));

for i:=0 to length(a)-1 do inc(c[a[i]]);

m:=c[0];
for i:=1 to 9 do if c[i]>m Then m:=c[i];

s:="Количество "+IntToStr(m)+", число(а):";
for i:=0 to 9 do
if c[i]=m then s:=s+IntToStr(i)+",";
SetLength(s,Length(s)-1);

ShowMessage(s);
End;

procedure button1click;
var
a:array of integer;
i:Integer;
begin
randomize;
setlength(a,random(5000)+1000);
for i:=0 to length(a)-1 do a[i]:=random(10);
dummy001(a);
end;


 
altex   (2007-01-04 19:30) [4]

Пасиба товарищи, у меня просто сессия, сижу лекции по линейке учу... в перерывах чтото делаю!


 
Belorus ©   (2007-01-05 21:59) [5]

> [3] Palladin ©   (04.01.07 19:22)

Зачот... Весьма стёбно...
А вот
> [2] begin...end ©   (04.01.07 19:18)

должно быть стыдно за такой код...


 
begin...end ©   (2007-01-06 10:32) [6]

> Belorus ©   (05.01.07 21:59) [5]

Смотрел на свой код. Долго думал. Увы, так и не понял, за что именно мне должно быть стыдно.


 
ors_archangel ©   (2007-01-06 10:50) [7]


> begin...end ©   (06.01.07 10:32) [6]

Не обращай на него внимания, у него юмор такой :) Ещё надо было оптимизацию применить, что если после сканирования n/2 элементов какой-либо счётчик > n - i, то данное число - самое частое, дальше можно только его подсчитывать, а не все счётчики вообще


 
SergP ©   (2007-01-06 13:15) [8]

> [7] ors_archangel ©   (06.01.07 10:50)
>
> > begin...end ©   (06.01.07 10:32) [6]
>
> Не обращай на него внимания, у него юмор такой :) Ещё надо
> было оптимизацию применить, что если после сканирования
> n/2 элементов какой-либо счётчик > n - i, то данное число
> - самое частое, дальше можно только его подсчитывать, а
> не все счётчики вообще


Это называется оптимизацией? :)


 
Palladin ©   (2007-01-06 13:36) [9]


> begin...end ©   (06.01.07 10:32) [6]

Видимо за то, что не учел, что элементов с максимальным количеством значений может быть несколько :)



Страницы: 1 вся ветка

Текущий архив: 2007.01.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
15-1167387391
vasIZmax
2006-12-29 13:16
2007.01.21
Первая тема


15-1167233690
StriderMan
2006-12-27 18:34
2007.01.21
Женские духи


15-1167761848
vidiv
2007-01-02 21:17
2007.01.21
как сделать форму toolwindow всегда выше всех форм


15-1167746350
ProgRAMmer Dimonych
2007-01-02 16:59
2007.01.21
Смотрю на задачу, как баран на новые ворота...


15-1167526668
WR
2006-12-31 03:57
2007.01.21
Казнь Хусейна как предупреждение Лукашенко ?