Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Arreglo en delphi7 (https://www.clubdelphi.com/foros/showthread.php?t=88088)

franco_cvm 11-04-2015 00:45:52

Arreglo en delphi7
 
me piden que haga un arreglo [1..20] de valores enteros, con la secuencia de valores: 1,4,9,16,...,400.
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
type
  tmiarre=array[1..20] of integer;
var
  miarre:tmiarre;
  i:integer;
begin
  for i:=1 to 20 do
  begin
    miarre[i]:=i*i;
  end;
  for i:= 1 to 20 do
  begin
    StringGrid1.Cells[i-1,0]:=IntToStr(i);
    StringGrid1.Cells[i-1,1]:=IntToStr(miarre[i]);
  end;
end;
¿hay otra forma de hacerlo ademas de esta?
podrian explicarmelo

ecfisa 11-04-2015 02:01:33

Hola franco_cvm, bienvenido a Club Delphi :)

Como acostumbramos con los que recién ingresan, te invitamos a que leas nuestra guía de estilo.

Es innecesaria la carga previa de los cuadrados de los valores en un arreglo, simplemente se puede hacer:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
begin
  for i:= 1 to 20 do
  begin
    StringGrid1.Cells[i-1,0]:=IntToStr(i);
    StringGrid1.Cells[i-1,1]:=IntToStr(i*i);
  end;
end;
No sé si podré darte una explicación mas clara que la que surge de la sola visualización del código, pero a ver...
  • Se ejecuta un ciclo que va desde 1 a 20.
  • La variable de control sirve como índice de las columnas.
  • La variable de control, se va mostrando en la fila 0 (i-1) y sucesivas columnas con su valor original y en la fila subyacente, con su valor multiplicado por si mismo (cuadrado).
Saludos :)

franco_cvm 19-04-2015 00:21:12

gracias por aclararme la duda


La franja horaria es GMT +2. Ahora son las 00:11:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi