Array
(
)

TStringList ou array

Mysys
   - 03 abr 2006

blz .. oque eu to tentando fazer é o seguinte...

tenho uma sequencia exemplo : 1 a 10
dentro desse intervalo tem alguns numeros que ja forao usados.
entao eu quero o resultado so dos LIVER..

eu to fazendo assim


//====== aki eu listo todos os numeros que forao dados entrada.
teste := TStringList.Create;
i := 1; //====== numero inicial
f := 10; //====== numero final
for n := i to f do
teste.Add(´´+IntToStr(n)+´´);


ai meu teste ficou 1,2,3,4,5,6,7,8,9,10.
vamos supor que eu diga que o numero 7 já foi usado.

como encontralo no TStringList e retiralo

eu tava tentando assim
teste.IndexOf(´7´);

mais ai ele deleta o 8 porque ele ta deletando pelo index do TStringList e nao pelo Text ou String sei lá ...

COMO ENCONTRAR E DELETAR SEM SER PELO INDEX ..??


ou me passe uma rotina com o Array que eu nunca e tambem nao achei como deletar valor ...


Rjun
   - 03 abr 2006

Como que você está dando o Delete? O IndexOf retorna a posição do valor que você está procurando, lembrando que a primeira posição é igual a ZERO.


Joni Nunes
   - 03 abr 2006

se vc passar como parametro o valor 8 teste.IndexOf(´8´); irá funcionar pois vc esqueceu que a contagem inicia do zero (0)

1,2,3,4,5,6,7,8,9,10.
0 1 2 3 4 5 6 7 8 9