Problem przy sprawdzaniu czy dany element w tablicy się powtarza

0

Witajcie, jestem początkujący i potrzebuję pomocy, a mianowicie zrealizowałem sprawdzanie tablicy na występowanie takich samych elementów za pomocą histogramu:

for(int i=0;i<256;i++)
        histogram[i]=0;
    for(int i=0;i<r;i++)
        histogram[(int) tab[i]]++;

    for(int i=0; i<256; i++)
    {
        if(histogram[i] != 0)
            cout<<"Liczba "<<i<<" powtorzyla sie: "<<histogram[i]<<" razy"<<endl;
    }

Natomiast rozwiązanie nie jest tak do końca idealne gdyż gdy w tablicy podam wartości np.: {2,3,3,4} w wyniku otrzymuje:

Liczba 2 powtorzyla sie: 1 razy
Liczba 3 powtorzyla sie: 2 razy
Liczba 4 powtorzyla sie: 1 razy

Moje pytanie, jak zrobić by liczba która występuje w tablicy tylko jeden raz nie była traktowana jako powtórzenie?

2

Zaczynaj liczyć od -1. Albo po prostu sprawdzaj w warunku czy było > 1

0

Cześć, nie za bardzo rozumiem o co chodzi z tym -1, natomiast zmieniłem warunek if (histogram[i] )>1 i działa dokładnie tak jak chciałem. Dzięki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1