Ah, mi sono dimenticato l'inserimento lol
codice:
type dati[N];
for(int i = 0; i < N; ++i) {
  type tmp;
  //leggi in tmp
  boolean found = false;
  //scorro gli elementi precedenti per vedere se ce n'è uno uguale
  //se c'è interrompo il ciclo
  for(int j = 0; j < i && !found; j++) {
     found = dati[j] == tmp;
  }
  if(found) {
    cout << messaggio_errore;
    //torno allìiterazione precedente
    --i;
  }
else {
  dati[i] = tmp;
 }
}
Volendo puoi anche non usarla e leggere direttamente in dati[i]