PDA

View Full Version : [c] Rimuovere elemento da Array


bebbo203
18-04-2013, 13:52
Salve a tutti, volevo un'informazione riguardo gli Array.

Stavo facendo, con i miei amici, un programma che, riempito un array di caratteri con una certa parola, avrebbe restituito in output, grazie alla funzione rand() le lettere mescolate.
(In poche parole ho randomizzato un numero compreso tra 0 e il numero massimo di lettere -1 e poi ho stampato il video l'elemento dell'array con il numero randomizzato.)

Capita però, che qualche lettera venga stampata più di una volta e qualche lettera per niente.

C'è un modo per far si che l'elemento x dell'Array, una volta letto, si "svuoti", in modo da non far ripetere più di una volta la stessa lettera?

gianmpu
20-04-2013, 10:02
Salve a tutti, volevo un'informazione riguardo gli Array.

Stavo facendo, con i miei amici, un programma che, riempito un array di caratteri con una certa parola, avrebbe restituito in output, grazie alla funzione rand() le lettere mescolate.
(In poche parole ho randomizzato un numero compreso tra 0 e il numero massimo di lettere -1 e poi ho stampato il video l'elemento dell'array con il numero randomizzato.)

Capita però, che qualche lettera venga stampata più di una volta e qualche lettera per niente.

C'è un modo per far si che l'elemento x dell'Array, una volta letto, si "svuoti", in modo da non far ripetere più di una volta la stessa lettera?

La prima soluzione che mi viene in mente è sostituire l'array con una lista a puntatori in modo che tu possa eliminare un elemento della lista dopo averlo usato

Eduadie
20-04-2013, 13:48
Estrai un elemento e lo scambi con il primo dell'array, dopo estrai un altro elemento partendo dal secondo all'ultimo e così via...