Página 1 de 1

Como procurar um valor numa matriz ???

Enviado: 17 Jan 2008 14:07
por janio
Pessoal,

Como procurar um valor numa matriz ???

Exemplo:

Código: Selecionar todos

   Local1 := {}
   aadd(Local1, { "1234", "FORTALEZA", "CE" })
   aadd(Local1, { "4343", "TEREZINA" , "PI" })
   aadd(Local1, { "8362", "SAO LUIS" , "MA" })
   aadd(Local1, { "1252", "RECIFE"   , "PE" })
Gostaria de procurar por SAO LUIS, retornando o valor do PRIMEIRO parâmetro "8362".

Jânio

Enviado: 17 Jan 2008 14:33
por Maligno
No caso de matrizes multidimensionais, a pesquisa só pode ser feita por meio de um bloco de código:

Código: Selecionar todos

#define _CIDADE 2
Nome := "SAO LUIS"
Pos  := AScan(Local1,{|a,i|a[_CIDADE] == Nome})
Acho que o código já explica o process. A variável Pos conterá a posição da matriz onde a cidade foi encontrada. Para obter o primeiro, valor, claro: Local1[Pos][1].

Enviado: 18 Jan 2008 10:55
por janio
Valeu,

Funcionou certinho!

Jânio