Olá pessoal, chegamos hoje ao assunto mais importante do nosso curso. Você deve estar pensando que tudo que aprendemos até agora não pode ser aplicado em nada, isso é verdade, o mesmo vai acontecer com as listas, vamos aprender, mas por enquanto não conseguiremos aplicar em nada. Mas tudo que vimos até agora é necessário antes de começarmos a criar programas. De tudo aquilo que foi visto até agora as listas são, sem sombra de dúvida, o mais importante e imprescindível para o Autolisp.
Teremos quantas aulas forem necessárias para que vocês consigam entender como criar e como manipular uma lista. Não sei ao certo ainda quantas aulas serão, conforme eu for escrevendo e gravando as aulas terei uma ideia melhor da quantidade necessária.
O que é uma lista
Não adianta nada ensinar como se cria uma lista se não entendermos antes como é uma lista e como a mesma é utilizada em Autolisp. Uma lista nada mais é do que um conjunto de dados. Em uma lista podemos abrigar diversos tipos de dados, número, textos e até mesmo listas. Podemos criar uma lista da forma que desejarmos, assim podemos organizar os dados da lista de forma a facilitar a manipulação dos mesmos.
Vamos começar com um exemplo de lista simples:
(1 2 3 4 5)
Veja o exemplo acima: é uma lista contendo 5 elementos numéricos, do número 1 ao número 5. Quando estamos falando de texto sabemos que uma variável é numérica ou texto porque os textos são cercados por aspas duplas; no caso das listas elas começam e terminam com parênteses.
Vamos ver outro exemplo:
(“A” “B” “C”)
No exemplo acima temos uma lista simples contendo 3 elementos. São 3 textos “A” “B” “C”.
Agora vamos ver um exemplo diferente, mas também bem simples:
(“A” 1 2 3 “B” 4 5 6 “C”)
Essa lista mescla dois tipos diferentes de dados: numéricos e strings (textos). Essa lista contém 9 elementos, sendo 6 numéricos e 3 strings.
Preste bem atenção no exemplo abaixo:
( ( “A” “B” “C”) (“D” “E” “F”) )
Essa lista possui apenas dois elementos. Isso mesmo, dois elementos e não seis. Temos dentro dessa lista mais duas listas, cada uma das listas possui 3 objetos, mas a lista principal possui apenas 2 elementos que são as duas listas. Vamos ver um exemplo um pouco mais complexo.
No exemplo abaixo criarei uma lista mais complexa armazenando os seguintes dados:
nome idade altura peso
O que vamos fazer agora é analisar a melhor maneira para a criação dessa lista até chegarmos ao resultado final.
Uma das alternativas iniciais é criar simplesmente uma lista com esses dados (Não aprendemos ainda como se cria uma lista, estamos apenas entendendo como ela funciona, logo falaremos sobre esse assunto).
( “Carlos” 30 1.60 68 “Andre” 22 2.65 22 “Jorge” 44 1.66 90)
Pronto, montamos uma lista, mas será que montamos da melhor maneira? Vamos pensar um pouco: se um dia você quiser pegar os dados, por exemplo, do Andre, vai ter que saber obrigatoriamente a posição dos dados. Para tentar resolver esse problema podemos montar essa lista de uma forma diferente.
( (“Carlos” 30 1.60 68) (“Andre” 22 2.65 22) (“Jorge” 44 1.66 90) )
Aparentemente a nossa lista agora ficou mais organizada. Agora temos uma lista com 3 elementos e cada elemento dessa lista é outra lista contendo, cada uma, 4 elementos. Mesmo assim, o que parece ter ficado melhor pode não ter ficado assim tão bom, podemos deixar ainda melhor.
( ( “Carlos” (30 1.60 68) ) (“Andre” (22 2.65 22) )(“Jorge” (44 1.66 90) ) )
Calma lá, como isso pode ter ficado melhor? Agora temos os mesmos 3 elementos na lista, porém agora em cada uma das listas temos dois elementos, um desses elementos é o nome e o outro elemento é uma lista contendo 3 elementos, e esses elementos são os dados da pessoa. Ficou difícil? Vamos ver a ilustração abaixo, ela pode nos ajudar.
Na verdade, o que parece ter ficado pior na verdade ficou melhor. Agora, quando você precisar consultar os dados do Andre, basta fazer o seguinte: achar a lista pertencente ao Andre e pegar o segundo elemento de sua lista, que contém os seus dados. Organizar uma lista de forma a manipular os dados de forma mais fácil é de extrema importância em Autolisp.
Nessa aula sobre lista aprendemos apenas como funciona a estrutura de uma lista, na próxima aula veremos mais alguns exemplos de listas complexas e vamos aprender a criar as listas.
Assista também essa aula em nosso canal Manual de Cad no youtube.
Não faremos exercícios nessa aula, pois não terminamos de aprender ainda como se cria uma lista. Os exercícios estarão disponíveis na próxima aula.
Sergio Fernandes
Manual de Cad