Mam za zadanie stworzyć tablice 'histogram', która na każdym indeksie będzie mieć taka wartość, ile razy wartość danego indeksu występuje w drugiej (podanej) tablicy. Mam kod, działa, ale nie o to chodzi w zadaniu. Powinna być wykorzystana ewentualnie tylko jedna pętla, i powinno się wykorzystać wskaźniki. Ktoś ma pomysł? Mój kod:
#include <stdio.h>
void hist(unsigned char x[], int r, unsigned int h[])
{
for(int j=0; j<40; j++)
{
for(int i = 0; i<14; i++)
{
if(x[i]==j)
{
h[j]++;
}
}
}
for(int i=0; i<40; i++)
{
printf("%d ", h[i]);
}
}
int main()
{
unsigned char x[14] = {4, 2, 33, 29, 32, 11, 43, 1, 4, 10, 12, 12, 32, 4};
unsigned int h[40]={0};
hist(x, 14, h);
return 0;
}