Decisão é o ato de julgar, de decidir. Para que uma decisão seja tomada é preciso que tenha um propósito, uma condição que do ponto de vista da ciência da computação é a relação lógica entre os elementos que formam a condição para a tomada de uma decisão e que a resposta da tomada de uma decisão poderá ser verdadeira ou falsa.
A forma usada para estabelecer uma relação lógica é conseguida com o uso de operadores relacionais, que são ferramentas que permitem a definição da relação lógica entre elementos de uma condição, a qual será utilizada para a execução do processo de tomada de uma decisão.
A tabela seguinte apresenta os operadores relacionais que podem ser utilizados com a linguagem Lua.
Os operadores relacionais possuem o mesmo nível de prioridade. Assim, não há necessidade de se preocupar em alterar sua prioridade quando de seu uso em uma expressão lógica.
O desvio condicional está associado à utilização de decisões em um programa. A resposta a uma decisão pode ser verdadeira ou falsa. Um desvio condicional pode ser simples, composto ou seqüencial.
Para se fazer uso de um desvio condicional simples é necessário fazer uso de instrução:
if (condição) then
. bloco de ação
end
Se a condição for verdadeira, serão executadas todas as instruções definidas na área de bloco de ação, se for falsa o bloco de ação não será executado.
Para exemplificar este tipo de ação o programa seguinte efetua a leitura de dois valores inteiros, e apresenta os valores em ordem crescente. Para tanto, considere o seguinte código:
O uso dos pontos duplos junto à linha de saída caracteriza-se por efetuar uma ação de concatenação entre os valores das variáveis e o string " e ".
Para se fazer uso de tomada de decisão com desvio condicional composto é necessário utilizar a instrução:
if (condição) then
. bloco de ação se condição verdade
else
. bloco de ação se condição falsa
end
Para uso de tomada de decisão com desvio condicional seqüencial pode-se utilizar a instrução:
if (condição1) then
. bloco de ação 1
elseif (condição2) then
. bloco de ação 2
elseif (condição) then
. bloco de ação N
else
. bloco de ação N + 1
end
Os operadores lógicos na linguagem Lua são três: and (conjunção), or (disjunção) e not (negação), tendo como prioridade de execução a ordem: not, and ou or.
O operador lógico and é utilizado quando duas ou mais relações lógicas necessitam ser verdadeiras, caso contrário, o resultado do valor lógico retornado será falso, ele faz com que o resultado lógico seja verdadeiro (nil) quando todas as condições envolvidas na decisão forem também verdadeiras, gerando assim um resultado lógico verdadeiro.
Para exemplificar este tipo de ação o programa seguinte efetua a leitura de um valor numérico entre 1 e 9 e apresenta mensagem informando se o valor está na faixa de 1 a 9 ou se está fora dessa faixa de valores.
O operador lógico or é utilizado quando pelo menos um dos relacionamentos lógicos de uma decisão necessita ser verdadeiro (nil) para obter-se um resultado lógico verdadeiro (nil), caso contrário, o valor do resultado lógico retornado será false.
Para exemplificar este tipo de ação o programa seguinte efetua a leitura do sexo biológico de um ser humano e apresenta mensagem informando se o sexo fornecido é ou não válido.
O operador lógico not é utilizado quando se necessita estabelecer a inversão do valor de um determinado resultado lógico de uma decisão. É possível obter valores: não verdadeiro e não falso.
Para exemplificar este tipo de ação o programa seguinte efetua a leitura de um valor numérico e apresenta o valor informado caso este valor não seja menor que 3, ou seja, apresenta somente os valores que estejam acima do número 3. Observe o código seguinte.
© Acadêmico F.J.T.P da Unifenas - Todos os direitos reservados.