В одномерном массиве из 10 элементов подсчитать количество каждого элемента - Pascal

Узнай цену своей работы

Формулировка задачи:

В одномерном массиве из 10 элементов подсчитать количество каждого элемента. Прошу вас, помогите решить) Вроде бы легкая задача, да вот что-то не понимаю.

Решение задачи: «В одномерном массиве из 10 элементов подсчитать количество каждого элемента»

textual
Листинг программы
uses crt;
const n=10;//размер массива
var a:array[1..n] of integer;
    m,i,j,k,l:integer;
begin
clrscr;
writeln('Введите элементы массива:');
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(a[i]);
 end;
clrscr;
writeln('Массив:');
for i:=1 to n do
write(a[i],' ');
writeln;
m:=n;//запомним размер, он будет меняться
i:=1;
while i<=m do//пока не конец масива
 begin
  k:=1;//пока 1 раз
  for j:=m downto i+1 do//смотрим массив с конца до числа за данным
  if a[j]=a[i] then//если есть такое
   begin
    k:=k+1;//считаем
    for l:=j to m-1 do//сдвигаем массив влево
    a[l]:=a[l+1];//удаляем элемент чтобы не было повтора
    dec(m);//уменьшаем размер
   end;
  writeln('chislo ',a[i],' vzstr ',k,' raz');
  inc(i);//смотрим следующее
 end;
readln
end.

Объяснение кода листинга программы

Этот код написан на языке Pascal и выполняет следующую задачу: подсчитывает количество каждого элемента в одномерном массиве из 10 элементов. В начале кода объявляются необходимые переменные: n (размер массива), a (массив для хранения элементов), m, i, j, k, l (переменные для работы с индексами). Затем происходит инициализация массива и вывод его содержимого на экран. Далее идет цикл while, который выполняется до тех пор, пока i меньше или равно m. Внутри цикла происходит сравнение элементов массива a[j] и a[i]. Если они равны, то увеличивается счетчик k и происходит сдвиг массива a влево, удаляя элемент a[j]. После этого размер массива уменьшается на единицу. В конце выводится количество повторений каждого элемента. Код завершается вызовом функции readln для чтения последнего ввода пользователя и завершением программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы