Como procurar um valor numa matriz ???

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Como procurar um valor numa matriz ???

Mensagem 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
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem 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].
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Mensagem por janio »

Valeu,

Funcionou certinho!

Jânio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Responder