Подсчет количества разных элементов массива - Pascal
Формулировка задачи:
В массиве N подсчитать количество разных чисел
помогите ,пожалуйста,буду признателен.
Решение задачи: «Подсчет количества разных элементов массива»
textual
Листинг программы
const
n=10;
var
a:array[1..n]of integer;
i,j,count:integer;
fl:boolean;
begin
{Г§Г*Г¤Г*ГҐГ¬ ГЁ âûâîäèì Г¬Г*Г±Г±ГЁГў}
writeln('ÈñõîäГ*ûé Г¬Г*Г±Г±ГЁГў:');
write('[ ');
for i:=1 to n do
begin
a[i]:=random(16)-8;
write(a[i],' ')
end;
writeln(']');
{êîëè÷åñòâî Г°Г*Г§Г*ûõ Г·ГЁГ±ГҐГ«}
count:=0;
for i:=1 to n do
begin
fl:=true;
for j:=1 to n do
if (a[j]=a[i])and(j<>i) then
fl:=false;
if fl then
inc(count)
end;
writeln('Êîëè÷åñòâî Г°Г*Г§Г*ûõ Г·ГЁГ±ГҐГ«: ',count)
end.
Объяснение кода листинга программы
- Объявляется константа
nсо значением10. - Объявляется массив
aразмерности от 1 доnс элементами типаinteger. - Объявляются переменные
i,jиcountтипаinteger. - Объявляется переменная
flтипаboolean. - Выводится сообщение
Вывод массива:. - Выводится символ
[. - Для каждого значения
iот 1 доnвыполняются следующие действия:- Генерируется случайное число от -8 до 7 и присваивается
i-ому элементу массиваa. - Выводится значение
i-ого элемента массиваa.
- Генерируется случайное число от -8 до 7 и присваивается
- Выводится символ
]. - Устанавливается значение переменной
countв 0. - Для каждого значения
iот 1 доnвыполняются следующие действия:- Устанавливается значение переменной
flвtrue. - Для каждого значения
jот 1 доnвыполняются следующие действия:- Если
j-ый элемент массива равенi-ому элементу массива иjне равноi, то значениеflустанавливается вfalse.
- Если
- Если значение
flравноtrue, то увеличиваетсяcountна 1.
- Устанавливается значение переменной
- Выводится количество уникальных элементов массива
a.