Fórum Delphi xe8.Como botar todo o conteúdo de um Array em uma única variável? #562699
22/09/2016
0
Eu tenho um Array,
Meu_Array: Array [0..50] of Integer
Eu gostaria de botar todo o conteúdo do Array numa variável; N, por exemplo. Já tentei:
Meu_Array[0][50]:= N;
Dá o seguinte erro de compilação:
[dcc32 Error] ProgreArit.pas(44): E2016 Array type required
Meu_Array: Array [0..50] of integer := N;
Erro:
[dcc32 Error] ProgreArit.pas(44): E2010 Incompatible types: 'array[0..50] of Integer' and 'Set'.
Dentre outras tentativas, mas não compila de jeito nenhum.
É só isso. Se precisar de mais informações, eu posto.
Valew.
Adriano Freitas
Curtir tópico
+ 0Posts
22/09/2016
Natanael Ferreira
Gostei + 0
22/09/2016
Adriano Freitas
Olá, amigo.
É um inteiro.
Por favor, dê uma olhada aqui https://www.devmedia.com.br/forum/progressao-aritmetica-em-delphi-xe8/562724
que eu esclareço tudo.
Obrigado pela resposta. Abraço!
Gostei + 0
22/09/2016
Natanael Ferreira
Imagine 51 inteiros dentro de um 1 Inteiro.
Se for o contrário (atribuir o mesmo valor da variável inteira para todos as posições do array) , é possível através de um loop.
Var
A1, i: Integer;
Meu_Array: Array [0 .. 50] of Integer;
begin
A1 := StrToInt(Edit2.Text);
for i := 0 to 50 do
Meu_Array[i] := A1; // Todos os termos do array serão o valor de A1
end;Gostei + 0
22/09/2016
Raylan Zibel
TNumeros = record
Valores: Array [0..50] of Integer;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Meus_Numeros: TNumeros;
Meu_ArrayVar: Array [0..50] of TNumeros;
i, j: Byte;
begin
mmo1.Lines.Clear;
for i := 0 to 50 do
Meus_Numeros.Valores[i] := i;
for i := 0 to 50 do
Meu_ArrayVar[i] := Meus_Numeros;
for i := 0 to 50 do
begin
for j := 0 to 50 do
begin
if Meu_ArrayVar[i].Valores[j] = 0 then
mmo1.Lines.Add( '- POSIÇÃO '+IntToStr(i)+' -' );
mmo1.Lines.Add( IntToStr( Meu_ArrayVar[i].Valores[j] ) );
end;
end;
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)