Ver Mensaje Individual
  #7  
Antiguo 09-05-2022
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Reputación: 14
bulc Va por buen camino
Ya lo tengo. Uso un TStringList1.IndexOf prop.

Código Delphi [-]
Var
 SL: TStringList;  I, IAzar, IDigits: Integer;  S : String;
 Arr : Array[0..23] of Integer;  // Much exact start 0..N Array
begin
IDigits := 24;  Memo1.Clear ;  // El TMemo muestra el resultado del TStringList
TRY
   SL:= TStringList.Create;
   while SL.Count <= IDigits - 1 do
      begin
        IAzar:= Random( IDigits) + 1 ;
         if SL.IndexOf( (IntToStr(IAzar))) = - 1  then
         begin
           SL.Add( IntToStr(IAzar ) ) ;   // El A_Int sirve de Índice.
           Memo1.Lines.Add(IntToStr(IAzar ) ) ;
         end;
      end;
      for I := 0 to Length(Arr) -1 do
      begin
          Arr[i] := StrToInt(Memo1.Lines[i]) ;  // Paso del TMemo al Array. Igual sería del TStringList.
      end;
      //ShowMessage( IntToStr(Arr[Low(Arr)] )  +'   ' + IntToStr( Arr[High(Arr)-1] )   );
      ShowMessage('Extremos del Array : ' + IntToStr(Arr[Low(Arr)] )  +'   ' + IntToStr( Arr[High(Arr)] )   );
      for I := 0 to Length(Arr) -1 do
        begin
          S := S +' '+ IntToStr( Arr[i]  ) ;
        end;
      Edit1.Text := S;  // Muestra el contenido del Array of Integer
FINALLY
        SL.Free;
END;
procedure TForm1.Button1Click(Sender: TObject);
Cuando alguien encuentre un camino más fácil se agradecerá saberlo. El mió es más bien alambicado. Saludos

Última edición por bulc fecha: 09-05-2022 a las 16:08:31.
Responder Con Cita