Criação de vetores multidimensionais e matrizes em lua

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Criação de vetores multidimensionais e matrizes em lua

Leonardo Ivo Neves da Silva
Gente,
   Aproveitando o gancho, eu gostaria que vocÊs me dessem o seguinte auxilio. Eu gostaria de fazer um vetor de duas ou mais posições em lua. No Java e no C é só fazer isso dado [] [], mas no Lua não é assim. Por isso eu peço o auxilo de vocês

Atenciosamente.
Leonardo Ivo

--
Lua BR - http://groups.google.com/group/lua-br
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Elias Barrionovo

On Aug 24, 2012 5:33 PM, "Leonardo Ivo Neves da Silva" <[hidden email]> wrote:
>Eu gostaria de fazer um vetor de duas ou mais posições em lua.

Não sei se eu entendi sua dúvida, mas em Lua tabelas também podem se comportar como vetores:

vec = {2, 4, 6, 8}
vec2, vec 3 = {}, {}
for i = 1, 5 do
  vec2[i] = i*2
  vec3[#vec3+1] = i*2
end

for i, v in ipairs(vec2) do
  print(i, vec[i], v, vec3[i])
end

--
Lua BR - http://groups.google.com/group/lua-br
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Andrws Vieira
Leonardo, podes fazer uma matriz igual a de C e JAVA asim ...

mt = {}          -- Cria Matrix
    for i=1,5 do
      mt[i] = {}     -- Cria nova linha
      for j=1,5 do
        mt[i][j] = i*j 
      end
    end


for i=1,5 do
for j=1,5 do
io.write (mt[i][j] .. " ")
end
io.write ("\n")
end


Em 24 de agosto de 2012 20:01, Elias Barrionovo <[hidden email]> escreveu:

On Aug 24, 2012 5:33 PM, "Leonardo Ivo Neves da Silva" <[hidden email]> wrote:
>Eu gostaria de fazer um vetor de duas ou mais posições em lua.

Não sei se eu entendi sua dúvida, mas em Lua tabelas também podem se comportar como vetores:

vec = {2, 4, 6, 8}
vec2, vec 3 = {}, {}
for i = 1, 5 do
  vec2[i] = i*2
  vec3[#vec3+1] = i*2
end

for i, v in ipairs(vec2) do
  print(i, vec[i], v, vec3[i])
end




--
Andrws Aires Vieira         
Ciência da Computação 8° Semestre
Grupo PET Computação
Grupo de Arquitetura e Circuitos Integrados - GACI
Universidade Federal de Pelotas - UFPel

--
Lua BR - http://groups.google.com/group/lua-br
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Leonardo Ivo Neves da Silva
Gente,
  Muito obrigado pela dica!
Um abraço a todo!
Leonardo IVo

Em 24 de agosto de 2012 20:52, Andrws Vieira <[hidden email]> escreveu:
Leonardo, podes fazer uma matriz igual a de C e JAVA asim ...

mt = {}          -- Cria Matrix
    for i=1,5 do
      mt[i] = {}     -- Cria nova linha
      for j=1,5 do
        mt[i][j] = i*j 
      end
    end


for i=1,5 do
for j=1,5 do
io.write (mt[i][j] .. " ")
end
io.write ("\n")
end


Em 24 de agosto de 2012 20:01, Elias Barrionovo <[hidden email]> escreveu:

On Aug 24, 2012 5:33 PM, "Leonardo Ivo Neves da Silva" <[hidden email]> wrote:
>Eu gostaria de fazer um vetor de duas ou mais posições em lua.

Não sei se eu entendi sua dúvida, mas em Lua tabelas também podem se comportar como vetores:

vec = {2, 4, 6, 8}
vec2, vec 3 = {}, {}
for i = 1, 5 do
  vec2[i] = i*2
  vec3[#vec3+1] = i*2
end

for i, v in ipairs(vec2) do
  print(i, vec[i], v, vec3[i])
end




--
Andrws Aires Vieira         
Ciência da Computação 8° Semestre
Grupo PET Computação
Grupo de Arquitetura e Circuitos Integrados - GACI
Universidade Federal de Pelotas - UFPel

--
Lua BR - http://groups.google.com/group/lua-br
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

swfly@zipmail.com.br
In reply to this post by Leonardo Ivo Neves da Silva
Olá,
 
Véio, dá uma olhada no livro de Lua do Augusto Manzano

A*e

SW-Fly




Em 24/08/2012 17:33, Leonardo Ivo Neves da Silva < [hidden email] > escreveu:
Gente,
   Aproveitando o gancho, eu gostaria que vocÊs me dessem o seguinte auxilio. Eu gostaria de fazer um vetor de duas ou mais posições em lua. No Java e no C é só fazer isso dado [] [], mas no Lua não é assim. Por isso eu peço o auxilo de vocês

Atenciosamente.
Leonardo Ivo

 

--
Lua BR - http://groups.google.com/group/lua-br
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Leonardo Ivo Neves da Silva

Gente,
  Estou com uma dúvida que no www.lua.org não encontrei explicação. E sobre a criação de matrizes. Embora vocês tenham me passado sugestões de formas de criação de matrizes, estas de fato funcionam, embora o exemplo dado pelo site do lua não gere uma matriz, mas sim uma fila dupla .http://www.lua.org/pil/11.2.html  Vejam:


    mt = {}          -- create the matrix
    for i=1,N do
      mt[i] = {}     -- create a new row
      for j=1,M do
        mt[i][j] = 0
      end
    end



.  Mais eu descobri uma forma de criação de matrizes e mesmo tabelas que tem me encucado, mas que não encontro explicação na documentação do Lua. Eu ha uns meses atras peguei uma matriz em python e coloquei num fonte em Lua. Vejam:
self.squares = [['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e']]
Teoricamente o interpretador deveria acusar esso, mas isso não aconteceu. Ele interpretou como tabela ou cadeia de caracteres. Sempre soube que para criação de tabela se usa {} e para dar nome os indices [""]. E nesse caso, a cadeia de caracteres ou tabela está sendo aberta e fechada com []. A propósito, eu também percebi que determinados comandos, como estes que descrevi,acima funcionam em ambas as linguagens, algo que não acontece em outras linguagens de programação.  O que vocês tem a dizer sobre isso? Tem alguma explicação?

Att,

Leonardo Ivo
Rio de Janeiro-RJ

Em domingo, 16 de setembro de 2012 17h42min38s UTC-3, [hidden email] escreveu:
Olá,
 
Véio, dá uma olhada no livro de Lua do Augusto Manzano

A*e

SW-Fly




Em 24/08/2012 17:33, Leonardo Ivo Neves da Silva < <a href="javascript:" target="_blank" gdf-obfuscated-mailto="s6Ujfho8gAQJ">leonard...@... > escreveu:
Gente,
   Aproveitando o gancho, eu gostaria que vocÊs me dessem o seguinte auxilio. Eu gostaria de fazer um vetor de duas ou mais posições em lua. No Java e no C é só fazer isso dado [] [], mas no Lua não é assim. Por isso eu peço o auxilo de vocês

Atenciosamente.
Leonardo Ivo

 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
 
 
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Vagner nascimento
Leonardo, o que você fez foi declarar uma string usando [[ string longa ]] .
Para fazer com a tabela com uma matriz você pode declarar de diversas maneiras:
m = {}
m[1] = { 1, 2, 3 }
m[2] = { 1, 2, 3 }
m[3] = { 1, 2, 3 }

ou
m = {
 { 1 , 2 , 3 },
 { 1 , 2 , 3 },
 { 1 , 2 , 3 }
}

Com isso você consegue percorrer como linha e coluna.
Abs

Vagner


2013/1/25 Leonardo Ivo Neves da Silva <[hidden email]>

Gente,
  Estou com uma dúvida que no www.lua.org não encontrei explicação. E sobre a criação de matrizes. Embora vocês tenham me passado sugestões de formas de criação de matrizes, estas de fato funcionam, embora o exemplo dado pelo site do lua não gere uma matriz, mas sim uma fila dupla .http://www.lua.org/pil/11.2.html  Vejam:


    mt = {}          -- create the matrix
    for i=1,N do
      mt[i] = {}     -- create a new row
      for j=1,M do
        mt[i][j] = 0
      end
    end



.  Mais eu descobri uma forma de criação de matrizes e mesmo tabelas que tem me encucado, mas que não encontro explicação na documentação do Lua. Eu ha uns meses atras peguei uma matriz em python e coloquei num fonte em Lua. Vejam:
self.squares = [['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e']]
Teoricamente o interpretador deveria acusar esso, mas isso não aconteceu. Ele interpretou como tabela ou cadeia de caracteres. Sempre soube que para criação de tabela se usa {} e para dar nome os indices [""]. E nesse caso, a cadeia de caracteres ou tabela está sendo aberta e fechada com []. A propósito, eu também percebi que determinados comandos, como estes que descrevi,acima funcionam em ambas as linguagens, algo que não acontece em outras linguagens de programação.  O que vocês tem a dizer sobre isso? Tem alguma explicação?

Att,

Leonardo Ivo
Rio de Janeiro-RJ

Em domingo, 16 de setembro de 2012 17h42min38s UTC-3, [hidden email] escreveu:
Olá,
 
Véio, dá uma olhada no livro de Lua do Augusto Manzano

A*e

SW-Fly




Em 24/08/2012 17:33, Leonardo Ivo Neves da Silva < [hidden email] > escreveu:
Gente,
   Aproveitando o gancho, eu gostaria que vocÊs me dessem o seguinte auxilio. Eu gostaria de fazer um vetor de duas ou mais posições em lua. No Java e no C é só fazer isso dado [] [], mas no Lua não é assim. Por isso eu peço o auxilo de vocês

Atenciosamente.
Leonardo Ivo

 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
 
 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
 
 
Reply | Threaded
Open this post in threaded view
|

Re: Criação de vetores multidimensionais e matrizes em lua

Leonardo Ivo Neves da Silva
Gente,
  Obrigado pelas informações. ME ajudou bastante.

Leonardo Ivo
Rio de JAneiro-RJ



Em 25 de janeiro de 2013 16:24, Vagner nascimento <[hidden email]> escreveu:
Leonardo, o que você fez foi declarar uma string usando [[ string longa ]] .
Para fazer com a tabela com uma matriz você pode declarar de diversas maneiras:
m = {}
m[1] = { 1, 2, 3 }
m[2] = { 1, 2, 3 }
m[3] = { 1, 2, 3 }

ou
m = {
 { 1 , 2 , 3 },
 { 1 , 2 , 3 },
 { 1 , 2 , 3 }
}

Com isso você consegue percorrer como linha e coluna.
Abs

Vagner


2013/1/25 Leonardo Ivo Neves da Silva <[hidden email]>

Gente,
  Estou com uma dúvida que no www.lua.org não encontrei explicação. E sobre a criação de matrizes. Embora vocês tenham me passado sugestões de formas de criação de matrizes, estas de fato funcionam, embora o exemplo dado pelo site do lua não gere uma matriz, mas sim uma fila dupla .http://www.lua.org/pil/11.2.html  Vejam:


    mt = {}          -- create the matrix
    for i=1,N do
      mt[i] = {}     -- create a new row
      for j=1,M do
        mt[i][j] = 0
      end
    end



.  Mais eu descobri uma forma de criação de matrizes e mesmo tabelas que tem me encucado, mas que não encontro explicação na documentação do Lua. Eu ha uns meses atras peguei uma matriz em python e coloquei num fonte em Lua. Vejam:
self.squares = [['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e'],\
['e','e','e','e','e','e','e','e']]
Teoricamente o interpretador deveria acusar esso, mas isso não aconteceu. Ele interpretou como tabela ou cadeia de caracteres. Sempre soube que para criação de tabela se usa {} e para dar nome os indices [""]. E nesse caso, a cadeia de caracteres ou tabela está sendo aberta e fechada com []. A propósito, eu também percebi que determinados comandos, como estes que descrevi,acima funcionam em ambas as linguagens, algo que não acontece em outras linguagens de programação.  O que vocês tem a dizer sobre isso? Tem alguma explicação?

Att,

Leonardo Ivo
Rio de Janeiro-RJ

Em domingo, 16 de setembro de 2012 17h42min38s UTC-3, [hidden email] escreveu:
Olá,
 
Véio, dá uma olhada no livro de Lua do Augusto Manzano

A*e

SW-Fly




Em 24/08/2012 17:33, Leonardo Ivo Neves da Silva < [hidden email] > escreveu:
Gente,
   Aproveitando o gancho, eu gostaria que vocÊs me dessem o seguinte auxilio. Eu gostaria de fazer um vetor de duas ou mais posições em lua. No Java e no C é só fazer isso dado [] [], mas no Lua não é assim. Por isso eu peço o auxilo de vocês

Atenciosamente.
Leonardo Ivo

 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
 
 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
 
 

--
--
Lua BR - http://groups.google.com/group/lua-br
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para [hidden email].
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.