Você está na página 1de 4

Instituto Federal do Maranhão (IFMA)

Disciplina: Introdução a Algoritmos


Docente: Emmanuel Xavier
Discente: Iasmim Lorany Gomes de Jesus
Eng. Elétrica. 1° período

RESENHA DESCRITIVA DO 4° CAPÍTULO DO LIVRO DE MANZANO E


OLIVEIRA (2019): LÓGICA PARA DESENVOLVIMENTO DE PROGRAMAÇÃO
DE COMPUTADORES

No início do capítulo 4 os autores retratam os aspectos de programação com decisão,


apresentando operadores relacionais e lógicos, e também a utilização de decisões simples,
compostas, sequenciais, encadeadas e de seleção. Manzano e Oliveira (2019) também
abordam o questionamento do que é ser um programador através do ideário de Guerreiro
(2000) que definia os aspectos de um bom profissional dessa área como sendo definido pelo
indivíduo que possua disciplina, humildade e perseverança. Do mesmo modo que fazem uma
observação importante, onde afirmam que o leitor ou programador que não possua as
características supracitadas não devem prosseguir no estudo do tema, pois o se tornará um
martírio para o mesmo.
O foco principal do capítulo 4 aparece como o entendimento da capacidade dos
computadores realizarem determinadas atividades e tomarem decisões através de
processamentos lógicos. Onde uma tomada de decisão proveniente do computador pode
encadear uma ação de desvio no fluxo do programa. Os autores relatam que para melhor
compreensão do assunto estudado no capítulo é necessário um melhor entendimento das
definições dos conceitos de decisão e condição. Na condição, o texto apresenta características
que a definem como uma obrigação que é imposta e aceita, já na decisão existe o ato de
escolher e decidir, onde o processo de tomada de decisão está relacionado ao fato de haver
uma condição. Na linguagem de programação a condição em forma de código deve ser escrito
entre parênteses. Graficamente, a representação da tomada de decisão é feita através da
utilização dos símbolos decision e conector, onde se usa um bloco adjacente para decisões
simples ou dois blocos adjacentes para decisões compostas, formando diagramas de blocos e
não mais um diagrama de bloco.
Manzano e Oliveira (2019) afirmam que a partir do ponto de vista computacional, uma
condição é uma expressão denominada booleana, onde se pode obter valores falsos ou
verdadeiros. Sendo essa expressão, concebida mediante a relação lógica entre dois elementos
e um operador relacional. Em suma, uma condição é uma relação lógica entre dois elementos.
Essa relação lógica (condição) é realizada a partir de operadores relacionais, onde têm-se uma
condição do tipo variável vs variável, assim como também é apresentado no corpo textual as
condições do tipo variável vs constante. Sobre o operador de igualdade, o texto relata que o
sinal em algumas linguagens de programação o símbolo está relacionado a atribuição quando
utilizado em situações envolvendo cálculos matemáticos, e operação relacional quando é
utilizado em operações lógicas. No entanto, por causa dessa diferença que pode gerar
situações conflituosas nos leitores iniciantes, os autores utilizam no texto o símbolo de
igualdade somente para representar situações lógicas, e a  como operador de atribuição em
operações matemáticas.
Tratando-se do processo de tomada decisão simples, os autores optam por explicarem
através do diagrama de blocos, onde o desvio condicional simples é representado pelos
símbolos decision e connector, já citados anteriormente. Sendo esses desvios processados
somente para o lado verdadeiro, independentemente de ser do lado esquerdo ou direito, por
isso as duas linhas do fluxo deverão ser sinalizadas com S ou N, para uma melhor
identificação da condição verdadeira. Onde a principal característica de um desvio
condicional simples é a existência de um bloco de operações somente se a condição for
verdadeira. Por conseguinte, independentemente do resultado da condição, algumas instruções
são executadas após o connector. Na tomada de decisão simples, a partir da utilização da
codificação no português estruturado, utiliza-se os comandos se, então e fim_se. Onde
percebe-se que se a condição for falsa serão executadas somente as instruções que estiverem
após o comando fim_se. Durante esse processo os trechos entre colchetes são instruções a
serem executadas.
Já em relação ao desvio condicional composto ou tomada de decisão composta, têm-se
que assim como o desvio condicional simples é representado pelos símbolos decision e
connector no diagrama de blocos. Na tomada de decisão composta é desviado o fluxo do
programa tanto para o lado verdadeiro, quanto para o lado falso, sem importar a relação entre
o lado direito ou esquerdo do diagrama, utilizando também os rótulos S e N para indicar os
lados estabelecidos pela condição. Onde no processamento do programa, a partir da condição,
poderá ser obtido um resultado falso ou verdadeiro. É importante frisar que a principal
característica de uma tomada de decisão composta está relacionada com a existência de um
bloco de operações para cada um dos lados da condição. Independentemente se o resultado for
verdadeiro ou falso, é executado algumas instruções após o símbolo connector, utilizando os
comandos: se, então, senão, fim_se. A partir disso, se a condição entre os comandos se e então
forem verdadeiras, as instruções entre os comandos adjacentes entre os comandos se, então e
senão. Caso seja tida como uma instrução falsa, serão executadas as instruções entre os
comandos senão e fim_se.
Ademais, Manzano e Oliveira (2019) apresentam outras formas de desvios
condicionais: Tomada de decisão sequencial; Tomada de decisão encadeada; Tomada de
decisão por seleção. A tomada de decisão sequencial é definida após utilizações sequenciadas
de tomadas de decisão simples e composta, ou sucessivas, uma após a outra. Na tomada de
decisão encadeada ocorre quando se utiliza decisões simples e compostas simultaneamente
uma dentro da outra, onde uma depende da outra para ser executada no programa. Já na
tomada de decisão por seleção têm-se que a mesma ocorre em situações onde ocorre um
grande número de verificações a serem realizadas pelo programador, onde se torna uma
alternativa rápida no processo de tomada de decisão sequenciais ou encadeadas, e utiliza os
comandos: caso, seja, faça, senão e fim_caso.
Ademais, tratando-se de um ponto de vista teórico sobre operadores lógicos de
disjunção inclusiva, têm-se que esses operadores tratam-se de uma relação lógica entre duas
ou mais preposições, onde o seu resultado lógico só será verdadeiro se ao menos uma das
preposições for verdadeira, do mesmo modo o operador lógico de negação (.não.) é bastante
utilizado no processo de programação, onde tem como finalidade a negação do estado lógico
de uma condição. Além desse operador lógico, outros são constantemente utilizados (.e.,
.ou., .xou) auxiliando no uso de mais de uma condição no processo de tomada de decisão.
Onde .não. significa negação, .e. uma conjunção, .ou. uma disjunção inclusiva, .xou. uma
disjunção exclusiva.
Os autores também abordam a divisibilidade: múltiplos e divisores, onde apresenta a
necessidade da identificação dos valores naturais, inteiros e de regras de divisibilidade para a
construção de um programa relacionado a esses aspectos, como por exemplo, calcular o resto
da divisão de N por 4, onde N é qualquer número natural. Na sequência é abordado os Laços
ou Malhas (loopings ou loops), que se caracteriza como uma estrutura de programação que
facilita a utilização de laços de trechos ou códigos de programas, reduzindo o trabalho do
programador quando há a necessidade de repetir determinados códigos, sendo classificados
em interativos ou iterativos. São definidos como interativos quando necessitam da intervenção
de um usuário para a repetição de uma ação várias vezes. E são iterativos quando executam
automaticamente as repetições um determinado número de vezes. Existem seis laços de
repetições existentes, desses, cinco são condicionais e um é considerado condicional. Os
condicionais são divididos em três categorias: controle condicional pré-teste, controle
condicional pós- teste e controle condicional seletivo.

Você também pode gostar