1. logo.png
Raciocı́nio Lógico Algorı́tmico
Aula 1
Vidal. Ronnison Reges1
1Análise e Desenvolvimento de Sistemas
UNIFOR
2022
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 1 / 27
2. logo.png
ROTEIRO
1 Algoritmos
Resolução de problemas
Lógica de Programação
Representação de Algoritmos
Fluxograma
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 2 / 27
3. logo.png
ROTEIRO
1 Algoritmos
Resolução de problemas
Lógica de Programação
Representação de Algoritmos
Fluxograma
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 3 / 27
4. logo.png
Resolução de problemas
Conceitos
Problema
Tudo que é difı́cil de explicar, resolver, tratar, lidar etc.
Com o uso crescente dos recursos da Tecnologia da Informação (TI)
para resolução de problemas do dia a dia das empresas e das pessoas,
ocorreu um crescimento nos Cursos relacionados à área.
Para que a TI possa resolver esses problemas, é necessário construir
algoritmos e transformá-los em programas de computador.
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 4 / 27
5. logo.png
Resolução de problemas
Conceitos
Algoritmo
sequência de etapas que visam atingir um objetivo especı́fico.
Por exemplo, resolver um determinado problema;
Não necessariamente envolve aspectos computacionais. Ex.: Uma
receita de bolo, trocar um pneu de carro, trocar uma lâmpada, manual
de instruções;
Programa
conjunto de comandos especı́ficos que traduzem para o computador o
que um algoritmo determinou que deva ser realizado.
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 5 / 27
6. logo.png
Resolução de problemas
Conceitos
Algoritmo - Exemplo
Sequência para fritar um ovo:
1 Retirar o ovo da geladeira
2 Colocar a frigideira no fogo
3 Colocar óleo
4 Esperar até o óleo ficar quente
5 Quebrar o ovo separando a casca
6 Colocar o conteúdo do ovo na frigideira
7 Esperar um minuto
8 Retirar o ovo da frigideira
9 Apagar o fogo
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 6 / 27
7. logo.png
Resolução de problemas
Conceitos
Algoritmo - Exemplo
Tal sequência é um algoritmo? Vejamos...
Possui uma sequência de instruções finitas e ordenadas?
R.: SIM. Instruções de 1 a 9.
O objetivo da sequência foi atingido?
R.: SIM. O ovo foi frito.
Logo, é um algoritmo!
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 7 / 27
8. logo.png
Resolução de problemas
Conceitos
Algoritmo - Exercı́cio
Ordene e estruture uma sequência para a realização de uma ligação
telefônica em um orelhão.
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 8 / 27
9. logo.png
Resolução de problemas
Conceitos
O que podemos concluir sobre algoritmos?
Algoritmo é uma espécie de passo a passo;
Algoritmos realizam uma saı́da (ex.: Um ovo frito) a partir de uma
determinada entrada (um ovo) através de uma sequência de passos;
Os passos tem que ser executados um após o outro;
Um algoritmo está correto quando sua sequência de instruções resulta
em uma saı́da esperada.
Podem existir um ou mais algoritmos para atingir um resultado, desde
que o resultado (a saı́da) seja o mesmo!
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 9 / 27
10. logo.png
Resolução de problemas
Conceitos
Existe a necessidade da construção de modelos do mundo real, de
forma que seja possı́vel traduzir isso para a linguagem de
computadores.
Os principais problemas encontrados no desenvolvimento de
algoritmos são:
Dificuldade na resolução de problemas;
Dificuldade na interpretação de enunciados;
e Dificuldade em abstrair e formalizar informações.
Dessa forma, é necessário desenvolver essas habilidades, começando
pela solução de problemas sem a necessidade do uso de ferramentas
computacionais.
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 10 / 27
11. logo.png
ROTEIRO
1 Algoritmos
Resolução de problemas
Lógica de Programação
Representação de Algoritmos
Fluxograma
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 11 / 27
12. logo.png
Resolução de problemas
Lógica de Programação
Lógica
modo de raciocinar: As soluções dos problemas utilizam a lógica para
serem criadas, ou seja, elas são ordenadas de uma forma que sejam
possı́veis de ser realizadas e de uma maneira que essa forma seja a mais
adequada para o que se deseja obter
a ordenação do procedimento da solução segue uma lógica de
raciocı́nio;
a formalização dos procedimentos de resolução de problemas precisa ser
refinada para aproximar-se do que será aplicado na prática: a lógica de
programação);
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 12 / 27
13. logo.png
Resolução de problemas
Lógica de Programação
Lógica de programação
”Uso correto das leis do pensamento, da ordem da razão e de processos
de raciocı́nio e simbolização formais na programação de computadores,
objetivando racionalidade e o desenvolvimento de técnicas que
cooperem para a produção de soluções logicamente válidas e coerentes,
que resolvam com qualidade os problemas que se deseja programar
(Forbellone; Eberspacher, 2000).”
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 13 / 27
14. logo.png
Resolução de problemas
Lógica de Programação
Lógica de programação
Para que as soluções aproximem-se do que é visto na lógica de
programação, é importante padronizar alguns procedimentos utilizados
na solução do problema. Esses procedimentos, num primeiro momento,
não precisam ser rigidamente especificados, mas é importante o contato
com as estruturas básicas. Essas estruturas básicas consistem de:
Estrutura sequencial
Estrutura de decisão
Estrutura de repetição
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 14 / 27
15. logo.png
Resolução de problemas
Lógica de Programação
Estruturas
Estrutura sequencial: indica que uma operação deve ser realizada em
sequência à outra, ou seja, determina a ordem com que as operações
devam ser realizadas;
Estrutura de decisão: indica que, em um determinado momento, será
necessário tomar uma decisão sobre qual operação realizar (entre uma
gama limitada de opções) de acordo com um determinado critério (esse
critério deve ser determinado pelo problema enunciado);
Estrutura de repetição: indica que determinadas operações devem ser
repetidas uma determinada quantidade de vezes (essa quantidade pode
ser determinada exatamente ou pode depender de critérios, também
determinados pelo problema enunciado).
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 15 / 27
16. logo.png
ROTEIRO
1 Algoritmos
Resolução de problemas
Lógica de Programação
Representação de Algoritmos
Fluxograma
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 16 / 27
17. logo.png
Resolução de problemas
Representação de Algoritmo
Essas três estruturas podem ser representadas de diversas formas,
respeitando-se padrões para que sejam reconhecidas e utilizadas por
quem conhece esses padrões.
Normalmente são utilizadas duas formas para representação dos
algoritmos: fluxograma (ou diagrama de blocos) e pseudocódigo
(pseudolinguagem ou portugol).
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 17 / 27
18. logo.png
Resolução de problemas
Representação de Algoritmo
Fluxograma: representação gráfica dos algoritmos, em que cada
sı́mbolo apresentado representa uma operação a ser realizada
(também é conhecido como diagrama de blocos, dependendo do
autor);
Pseudocódigo: representação dos algoritmos na forma de textos, em
que cada operação será representada por uma sintaxe e semântica
especı́ficas (também é conhecido como pseudolinguagem ou como
portugol, dependendo do autor).
Obs.: As duas formas de representar permitem que se pense na
solução do problema, e não, no equipamento que irá executar o
algoritmo.
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 18 / 27
19. logo.png
ROTEIRO
1 Algoritmos
Resolução de problemas
Lógica de Programação
Representação de Algoritmos
Fluxograma
Vidal. Ronnison Reges (UNIFOR) Raciocı́nio Lógico Algorı́tmico 2022 19 / 27