Линейный поиск: найти количество различных элементов, не упорядочивая массив - C (СИ)

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

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

В массиве М(к) много совпадающих элементов. Найти количе- ство различных элементов в нём (не упорядочивая массива).

Решение задачи: «Линейный поиск: найти количество различных элементов, не упорядочивая массив»

textual
Листинг программы
#include<stdio.h>
 
int main(){
    int n, t, i, j, arr[30],len, halflen,flag=0,count=0;
    
    printf("Enter number of elements to insert in an array:");
    scanf("%d",&len);
    printf("Enter elements to insert in an array:");
    for(i=0;i<len;i++){
        scanf("%d",&t);
        arr[i]=t;
    }
    printf("\n");
    
    /*****************************/
    for(i=0;i<len;i++){
        count=1;
        for(j=i+1;j<=len-1;j++){
            if(arr[i]==arr[j] && arr[i]!='\0'){
                count++;
                arr[j]='\0';
            }
        }
        if(arr[i]!='\0'){
            printf("%d is %d times.\n",arr[i],count);
        }
    }
 
    /*****************************/
    getch();
    return 0;
}

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

В этом коде реализуется линейный поиск для подсчета количества уникальных элементов в массиве, введенных пользователем. Вот список ключевых шагов:

  1. Ввод количества элементов и самих элементов массива с помощью функции scanf().
  2. Создание переменных для хранения количества уникальных элементов и их количества, а также переменной для отслеживания найденного уникального элемента.
  3. Два вложенных цикла: внешний для обхода всех элементов массива, внутренний для проверки, является ли текущий элемент уникальным.
  4. Если внутренний цикл обнаруживает, что текущий элемент уникален, он увеличивает счетчик уникальных элементов и устанавливает флаг.
  5. Если внешний цикл обнаруживает, что флаг установлен, он выводит текущий элемент и количество его вхождений.
  6. Функция getch() используется для приостановки программы и ожидания ввода пользователя.
  7. Код завершается возвратом 0, что означает успешное выполнение.

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


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

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

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