Ver Mensaje Individual
  #2  
Antiguo 03-05-2020
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Podes usar un arreglo de record, vg.r.:
Código Delphi [-]
...
implementation  {$R *.dfm}

const
  NPLANETAS = 9; // (u ocho según consideres a Plutón)

type
  TPlaneta = record   // un planeta
    nombre: string;
    L,B,R : Extended;
  end;

  TvPlanetas = array[1..NPLANETAS] of TPlaneta; // nueve planetas

// Procedimiento que muestra planetas
procedure MostrarPlanetas(VP: TvPlanetas; ST: TStrings);
var
  i : Integer;
begin
  for i := Low(VP) to High(VP) do
    ST.Add(Format('%8s : %8.2f - %8.2f - %8.2f',
      [VP[i].nombre, VP[i].L, VP[i].B, VP[i].R]));
end;

// Codigo de ejemplo
procedure TForm1.btnShowClick(Sender: TObject);
const
  NAMES: array[1..NPLANETAS] of string =('Mercurio','Venus','Tierra','Marte',
    'Jupiter','Saturno','Urano','Neptuno','Plutón');
var
  vp: TvPlanetas;
  i : Integer;
begin
  // Cargar algo en vp...
  for i := 1 to NPLANETAS do
  begin
    vp[i].nombre := NAMES[i];
    vp[i].L := i;
    vp[i].B := i;
    vp[i].R := i;
  end;

  // Mostrar arreglo de planetas en un Memo
  Memo1.Clear;
  Memo1.Font.Name := 'Courier';
  Mostrar_planetas(vp, Memo1.Lines);
end;
...

Salida:



Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita