Главная » Pascal, Исходники, Массивы » Программа для нахождения неповторяющихся элементов массива
Ноя
29

Программа для нахождения неповторяющихся элементов массива

Программа для нахождения неповторяющихся элементов массива.

[sourcecode highlight=»62″ language=»css»]
Uses Crt;
const
n = 10; { количество элементов массива }
var
A: Array[1..n] of Integer;
i, j, k, Count: Byte;
Exch: Boolean;
Temp: Integer;

begin
ClrScr; Randomize;
for i:=1 to n do { инициализация массива }
begin
A[i]:=Random(10);
Write(A[i]:3);
end;
Writeln;

{ предварительная сортировка массива для облегчения поиска
неповторяющихся элементов }
Exch:=True; j:=1;
While Exch do
begin
Exch:=False;
for i:=1 to n-j do
if A[i] > A[i+1] then
begin
Temp:=A[i];
A[i]:=A[i+1];
A[i+1]:=Temp;
Exch:=True;
end;
Inc(j);
end;

for i:=1 to n do
Write(A[i]:3);
Writeln;

Count:=0; i:=1; { поиск неповторяющихся элементов }
While i < n do
begin
k:=i;
{ просматривание до тех пор, пока не встретим
неодинаковые элементы }
While (A[k] = A[k+1]) and (k < n-1) do
Inc(k);
if (i = k) then
begin
Inc(Count);
Inc(i);
end
else i:=k+1;





end;
{ так как проверка последнего элемента изза специфики алгоритма
не происходит, делаем это в отдельном условии }
if A[n] <> A[n-1]
then Inc(Count);

Write(‘ Count = ‘, Count);{ вывод количеста неповторяющихся элементов }
end.
{ prepared special for www.kpeople.ru by AlexeyJava }
[/sourcecode]

Понравилась статья? Сделай приятно ее автору, поделись с друзьями:



Хотите получать обновления данного блога на EMail?

Введите адрес Почтового Ящика:




Подтвердите подписку в письме пришедшем на Почту, после чего начнете получить рассылку.