Кол-во повторяющихся элементов

Тема в разделе "Pascal and Delphi", создана пользователем NemoI3, 21 ноя 2010.

  1. NemoI3

    NemoI3 Гость

    Для массива А[sub]1[/sub],...А[sub]20[/sub] найти кол-во повторяющихся элементов.

    Код (Delphi):
    var i,j,k,m:integer; a:array[1..20] of integer;
    begin
    randomize; m:=0; for i:=1 to 20 do begin
    a[i]:=random(20)-10;
    stringgrid1.Cells[0,i-1]:=inttostr(a[i]);
    end;
    for i:=1 to 19 do
    for j:=i+1 to 20 do begin
    if a[i]=a[j] then k:=1 else k:=0;
    m:=m+k;
    end;
    label1.caption:=inttostr(m);
    end.
    чувствую, что где-то ошибся, но не вижу где!
    Выручите пожалуйста!
     
  2. Dock1100

    Dock1100 :-]

    Регистрация:
    9 ноя 2009
    Сообщения:
    678
    Симпатии:
    0
    Код (Delphi):
    uses crt;
    const N=20;
    var a,b:array[1..N] of integer;
    i,j,m:integer;
    ind:boolean;
    begin
    for i:=1 to N do
    begin
    write('a[',i,'] = ');
    readln(a[i]);
    end;
    clrscr;
    for i:=1 to n do
    write(a[i],' ');
    writeln;
    m:=0;
    for i:=1 to N-1 do
    begin
    ind:=false;
    for j:=i+1 to N do {проверка повтаряется ли елемент далее в масиве}
    if a[i]=a[j] then ind:=true;
    for j:=1 to m do {был ли повтор елемента до этого}
    if a[i]=a[j] then ind:=false;
    if ind=true then {если все условия выполнились}
    begin
    m:=m+1; {то увеличеваем счетчик}
    b[m]:=a[i]; {и добавляем елементв список "повторов"}
    end;
    end;
    writeln('kol-vo',m);
    readln;
    end.
     
  3. NemoI3

    NemoI3 Гость

    аааа...вон оно как)
    спасибо огромное)
     
Загрузка...

Поделиться этой страницей