Tomada de Decisão


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.