Buscar

01 Introdução de Algoritmos e Raciocínio Lógico

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Introdução de Algoritmos e Raciocínio 
Lógico
APRESENTAÇÃO
Para criar programas computacionais é necessário empregar a lógica de programação, uma técni
ca onde se faz necessário o desenvolvimento de competências para interpretação, abstração, reso
lução e formalização de problemas. Trata-se da base da ciência da computação onde sequências 
lógicas de passos são aplicados a fim de fornecer uma solução a um determinado problema ou p
ara executar uma tarefa específica. 
Para tal, é aplicado o desenvolvimento de algoritmos que são passo a passos ou sequências lógic
as de instruções bem definidas para atingir um objetivo claro, não ambíguo e em um tempo finit
o. Os algoritmos podem ser expressos por meio de linguagem natural, fluxogramas e pseudocódi
go, por exemplo. Eles são os primeiros passos de um programa (software) que são traduzidos e
m uma linguagem de programação qualquer, como Python, C, Java, PHP e Java Script, para entã
o ser entendidos pelo computador na execução do programa ou na exibição de uma página Web. 
Um exemplo clássico e simplificado da criação de um algoritmo são as receitas culinárias, como 
os passos a passos realizados por uma pessoa na concepção de um bolo. 
Nesta unidade de aprendizagem, estudaremos os conceitos básicos que envolvem algoritmos e l
ógica de programação, o funcionamento básico de um computador e as etapas básicas para o des
envolvimento de um algoritmo.
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Definir o conceito de algoritmos e lógica de programação.•
Diferenciar os componentes básicos de funcionamento de um computador na execução de 
algoritmos.
•
Aplicar as etapas de construção de um algoritmo na solução de problemas.•
DESAFIO
Muitos são os processos hoje automatizados com o uso do computador dentro das empresas nas 
mais variadas áreas do setor industrial, comercial e de serviços.
 
 
Auxilie a empresa a identificar e descrever os passos para o processo de apostas na lotérica. Para 
isso, identifique:
Quais são os dados de entrada? 
Quais são as etapas que envolvem o processamento? 
Quais são os dados de saída? 
Em seguida, descreva, elaborando um texto/narrativa, os principais passos que uma pessoa da co
munidade precisa seguir para a realização de uma aposta na lotérica. 
INFOGRÁFICO
O esquema a seguir mostra o conteúdo que será abordado nesta unidade de aprendizagem.
Conteúdo interativo disponível na plataforma de ensino!
CONTEÚDO DO LIVRO
O estudo sobre algoritmos são parte essencial na construção e desenvolvimentos de programas. 
A partir de um algoritmo bem estruturado, claro e não ambíguo é possível facilitar a depuração 
de programas e consequentemente ajudar os programadores no desenvolvimento.
Saber identificar a relação entre os componentes de um computador e os algoritmos é important
e, pois ajuda no entendimento do fluxo das informações em um algoritmo. Para isso são levados 
em consideração a entrada, processamento e saída.
A criação e a interpretação de algoritmos pode ser algo desafiador na área da computação. Conh
ecer as etapas da construção de um programa faz com que o desenvolvimento se torne um pouco 
menos difícil, pois ajuda na extração e interpretação de problematizações.
No capítulo Introdução de Algoritmos e Raciocínio Lógico, você vai poder entender o que são o
s algoritmos e a lógica de programação, tendo como base exemplos do dia a dia. Além disso, o c
apítulo aborda a relação entre computador e os algoritmos. E por fim conhecer as etapas na cons
trução de um programa, observando o quanto os algoritmos são essenciais no desenvolvimento d
e programas de qualidade.
Boa leitura!
ALGORITMOS E 
PROGRAMAÇÃO
OBJETIVOS DE APRENDIZAGEM
 > Definir o conceito de algoritmos e lógica de programação.
 > Diferenciar os componentes básicos de funcionamento de um computador 
na execução de algoritmos.
 > Aplicar as etapas de construção de um algoritmo na solução de problemas.
Introdução
Compreender o que são e como funcionam os algoritmos é essencial na área de 
informática. A partir da análise e da criação de algoritmos, é possível fazer um 
estudo sistematizado sobre um determinado problema que pode ser resolvido 
via computação.
O pontapé inicial na caminhada da programação é o estudo sobre algoritmos, 
pois é a partir dele que é extraída e compreendida a problematização. Tal proble-
matização deve ser desenvolvida em forma de programa, facilitando o trabalho 
do programador.
De acordo com Berg e Figueiró (2006), é possível definir os algoritmos como 
um meio de obter a solução de qualquer problema ao seguir uma ordem lógica 
e compreensível para o computador, considerando o raciocínio lógico. Existem 
diversas formas de representar algoritmos, como descrição narrativa, fluxogramas 
e pseudocódigo (linguagem algorítmica).
Introdução de 
algoritmos e 
raciocínio lógico
Renata Junges Padilha
Neste capítulo, você vai ver o que são algoritmos e lógica de programação. 
Além disso, vai estudar como os algoritmos podem ser representados e qual é 
a relação do computador com o desenvolvimento dos algoritmos. Também vai 
conhecer exemplos que demonstram como os algoritmos podem ser criados e 
interpretados.
Algoritmos e lógica de programação
De acordo com Manzano e Oliveira (2016), o termo algoritmo é utilizado tanto 
para a computação quanto para a matemática. Na matemática, ele serve 
para representar processos de cálculo ou resolução de problemas. Na área 
da computação, o termo teve origem no ano 830 d.C., quando foi usado na 
publicação de um livro de Al-Khwarizmi sobre álgebra.
Os algoritmos podem ser aplicados em diversos segmentos, incluindo para 
problemas do dia a dia, como a compra de um determinado livro. Diferentes 
passos devem ser tomados para se chegar a um ponto final, que é efetivar 
a compra do livro. O exemplo a seguir ilustra o algoritmo desse cenário da 
compra de um livro. É importante lembrar que um algoritmo tem um estado 
inicial, executa algumas ações, tem um resultado e apresenta um estado final 
(EDELWEISS; LIVI, 2014, p. 6).
1. Entrar na livraria.
2. Verificar se o livro está disponível. Para isso, é necessário conhecer o 
título e o autor do livro e ter disponibilidade financeira para a compra. 
Caso a compra venha a ser efetuada, deve-se:
a) esperar que a compra seja registrada no caixa;
b) esperar que seja feito o pacote;
c) levar o livro até o balcão;
d) levar o livro comprado;
e) pagar o valor correspondente;
3. Sair da livraria.
Na área da computação, os algoritmos podem ser definidos como uma 
sequência de ações executadas em uma ordem preestabelecida, tendo como 
objetivo demonstrar o passo a passo para se chegar a uma determinada 
solução de uma problematização (EDELWEISS; LIVI, 2014).
Atrelada ao conhecimento de algoritmos, a lógica de programação é um 
ponto muito importante. A palavra lógica está relacionada a coerência e ra-
cionalidade, e na informática isso não é diferente. A lógica de programação é 
Introdução de algoritmos e raciocínio lógico2
uma área bem ampla, que capacita o programador ao entendimento de todas 
as esferas da programação. De acordo com Manzano e Oliveira (2016), a lógica 
de programação objetiva ações que devem ser tomadas para se desenvolver 
e chegar a um resultado final. Algumas das principais ações que podem e/
ou devem ser observadas na construção de um programa são a facilidade 
de depuração, a verificação de possíveis falhas, a facilidade de alterações e 
a reutilização de códigos.
Saber interpretar ou criar algoritmos eficientes é o pontapé inicial para 
desenvolver as ações citadas. As principais formas de representar os algo-
ritmos são por meio de descrição narrativa, fluxogramas e pseudocódigo. 
Na descrição narrativa, a representação é simples, por meio de linguagem 
natural (utilizada no cotidiano). Geralmente, a descrição narrativa é pouco 
utilizada para representar algoritmos, pois abre brechas para a ambiguidade. 
Oexemplo de algoritmo que vimos, da compra do livro, é uma forma de 
descrição narrativa.
Os fluxogramas são a forma gráfica de representar os algoritmos, por 
meio da utilização de formas geométricas com significados diferentes para 
cada parte do fluxo. É possível demonstrar a entrada, as ações e a saída do 
algoritmo de uma forma bem dinâmica. É possível dizer que os fluxogramas 
são a segunda forma mais utilizada para representar algoritmos (atrás apenas 
do pseudocódigo), pois são mais precisos que a descrição narrativa, ainda 
que não se preocupem com muitos detalhes computacionais (OLIVEIRA, 2004). 
A Figura 1 ilustra um fluxograma cujo objetivo é representar o algoritmo de 
um programa que recebe três notas de alunos e tem como saída a soma e a 
média aritmética.
Introdução de algoritmos e raciocínio lógico 3
Figura 1. Fluxograma de algoritmo lendo notas e obtendo diferentes saídas.
Fonte: Edelweiss e Livi (2014, p. 66).
De acordo com Edelweiss e Livi (2014), um pseudocódigo expressa os 
algoritmos de uma forma similar a uma linguagem de programação, mas 
sem entrar em detalhes, como informações sobre os tipos de dados. Além 
disso, as operações são expressas em uma linguagem natural, facilitando 
o entendimento. O exemplo a seguir mostra um pseudocódigo que tem o 
mesmo objetivo do fluxograma da Figura 1.
Algoritmo media1 
 {INFORMA A SOMA E A MÉDIA DAS 3 NOTAS DE UM ALUNO} 
 Entradas: nota1, nota2, nota3 (real) 
 Saídas: soma, média (real) 
 início 
 ler (nota1, nota2, nota3) {ENTRADA DAS 3 NOTAS} 
 escrever (nota1, nota2, nota3) {INFORMA AS NOTAS LIDAS} 
 soma ← nota1 + nota2 + nota3 {CALCULA A SOMA} 
 escrever (soma) {INFORMA SOMA} 
 média ← soma / 3 {CALCULA A MÉDIA} 
 escrever (média) {INFORMA MÉDIA CALCULADA} 
 fim
Introdução de algoritmos e raciocínio lógico4
O algoritmo tratado tem as informações sobre as três notas dos alunos. 
Inicialmente, há a entrada (leitura), e depois as três notas são impressas na 
tela, mostrando para o usuário o que foi lido (digitado). O próximo passo é 
realizar a soma das notas e mostrá-las. Por fim, a média é calculada e mostrada 
para o usuário. Diferentemente do fluxograma da Figura 1, o pseudocódigo 
do exemplo traz informações de tipos de dados e declaração das variáveis, 
além de comentários para facilitar o entendimento.
As variáveis são um determinado espaço de memória que foi utilizado 
para guardar valores. Tais valores podem variar ao longo da execução 
de um programa.
Com base nos exemplos e conceitos apresentados, é possível notar como 
os algoritmos e a lógica de programação são importantes para a área da 
computação. Na próxima seção, vamos estudar a relação dos componentes 
básicos de um computador com o desenvolvimento de algoritmos.
Relação entre computador e algoritmos
Como visto, os algoritmos são uma sequência de ações definidas para se 
chegar a um determinado resultado. Também vimos que os algoritmos podem 
ser executados por um computador. É importante entender essa relação 
entre computador e algoritmo, pois ela permite conhecer como os algoritmos 
podem ser executados.
A partir da tradução de um algoritmo para uma linguagem que o computa-
dor entenda, é gerado o programa que pode ser executado pelo computador. 
O componente responsável por essa execução e pela execução de todas as 
instruções na ordem correta é a CPU (central processing unit, ou unidade 
central de processamento) (EDELWEISS; LIVI, 2014).
A CPU é composta pela unidade aritmética e lógica e pela unidade de 
controle. A unidade de controle é responsável por executar instruções de 
controle do computador, direcionando instruções. Já a unidade aritmética e 
lógica é o componente mais importante da CPU, pois executa o processamento 
de operações matemáticas e lógicas (MANZANO; OLIVEIRA, 2016).
A unidade de entrada está relacionada aos dados inseridos no computa-
dor (dados de entrada). Esses dados podem ser armazenados em memória 
primária ou secundária. Alguns exemplos de componentes de entrada 
são os periféricos teclado e mouse. Já a unidade de saída representa os 
Introdução de algoritmos e raciocínio lógico 5
dados que foram processados e retornados como resultados (MANZANO; 
OLIVEIRA, 2016).
Por meio das unidades de entrada e saída, é possível realizar a comuni-
cação do computador com o usuário durante a execução de um programa, 
pois é a partir da entrada que são inseridos, por exemplo, os valores iniciais 
de uma soma de números. Como saída, é mostrado o resultado desse cálculo.
Na Figura 2, é possível visualizar o esquema de processamento de um 
computador. De forma geral, o processamento que um computador faz diz 
respeito a executar ações e/ou tarefas, como comparações, operações arit-
méticas, etc. Para isso acontecer, é necessário ter os dados de entrada, que 
são processados para, em seguida, mostrar resultados na saída. O fluxo de 
processamento ocorre a partir da leitura dos dados na unidade de entrada. 
Tais dados são processados na CPU (composta por unidades que realizam a 
execução de ações/atividades), juntamente com a memória principal, reali-
zando o retorno do processamento na unidade de saída (EDELWEISS; LIVI, 2014).
Figura 2. Esquema simplificado de um computador.
Fonte: Edelweiss e Livi (2014, p. 11).
Compreender o fluxo de processamento realizado pelo computador ajuda 
a entender como os programas são lidos e como funciona a relação entre 
computador e algoritmos. Deve-se ter em mente que o computador executa 
programas feitos em diferentes linguagens de programação, mas que têm 
Introdução de algoritmos e raciocínio lógico6
o mesmo esquema (entrada, processamento e saída). É por isso que os al-
goritmos são tão importantes. Afinal, independentemente da linguagem de 
programação utilizada, a forma como eles são criados ajuda os programa-
dores a entender como o programa deve se comportar. Vale lembrar que os 
algoritmos têm dados, informações e fluxo, que podem ser observados no 
processamento de um computador.
Na próxima seção, vamos ver as principais fases que constituem a criação 
de um algoritmo. Para isso, conheceremos alguns exemplos de algoritmos 
construídos a partir de problematizações.
Etapas de construção de um algoritmo
Até aqui, estudamos os conceitos de algoritmo e lógica de programação, vimos 
alguns exemplos de representação de algoritmos e identificamos a relação 
importante entre o computador e os algoritmos. Nesta seção, vamos ver as 
etapas que constituem o esquema ideal para a construção de um algoritmo, 
considerando alguns exemplos de problematizações.
Pereira (2018) aborda a importância das etapas na construção de um pro-
grama. Ter conhecimento sobre a evolução das etapas é um ponto crucial no 
desenvolvimento de um programa de qualidade. É importante saber analisar 
a problematização, construir o algoritmo, realizar a implementação, testar e 
manter o programa em bom funcionamento.
A Figura 3 ilustra um esquema que define as etapas na construção de um 
programa bem analisado. De acordo com Edelweiss e Livi (2014), as etapas para 
a construção de um algoritmo são bem dinâmicas, e seguir esses passos faz 
com que o programa seja de qualidade e atenda às necessidades. As etapas 
podem ser definidas como a seguir (EDELWEISS; LIVI, 2014).
 � Análise do problema: tem como foco a problematização, definindo 
bem o problema abordado.
 � Especificação dos requisitos do problema: realiza uma verificação de 
quais dados/informações devem ser fornecidos para a entrada e quais 
resultados devem ser apresentados na saída.
 � Construção do algoritmo: etapa em que o algoritmo é construído, 
considerando a análise realizada na etapa anterior. Nessa etapa, é 
construído o algoritmo que caracteriza os passos que devem ser to-
mados para se chegar a um resultado final.
 � Validação do algoritmo: verifica se o algoritmo atende à necessidade do 
programa. Para isso, podem ser realizados testes de mesa, atribuindo 
Introdução de algoritmos e raciocíniológico 7
diversos valores possíveis para ver se o algoritmo consegue realizar 
o processamento.
 � Construção do programa: a implementação em uma linguagem de 
programação (como a linguagem C) é aplicada considerando a estrutura 
do algoritmo.
 � Verificação do programa: é realizada a compilação e depuração do 
programa. Permite realizar testes (como o teste de mesa), inserindo 
valores no programa para verificar se o processamento está correto.
 � Manutenção: etapa importante que tem como objetivo acompanhar 
o programa depois de finalizado. Esse acompanhamento diz respeito 
ao cuidado com eventuais erros que podem surgir, assim como a atu-
alizações e novas funcionalidades que podem ou devem ser inseridas.
Figura 3. Etapas da construção de um programa.
Fonte: Edelweiss e Livi (2014, p. 16).
Introdução de algoritmos e raciocínio lógico8
Para ilustrar as etapas de construção de um programa, pense na seguinte 
problematização: um professor de educação física necessita de um programa 
que realize o cálculo de índice de massa corporal (IMC) de seus alunos para 
fazer treinos específicos conforme a classificação resultante.
Considerando essa problematização, devemos seguir os passos para a 
construção do programa. A princípio, é realizada a análise do problema, 
obtendo resumidamente a definição do problema, que é informar a classi-
ficação do IMC.
Na etapa de especificação dos requisitos do problema, são identificadas 
as entradas e as saídas necessárias para o programa; veja a seguir.
 � Entradas: peso e altura da pessoa, digitados via teclado.
 � Saídas: o resultado do cálculo do IMC e a classificação correspondente, 
mostrados na tela.
A etapa de construção do algoritmo pode ser observada no exemplo a 
seguir. Considerando as análises realizadas nas etapas anteriores, o algoritmo 
é construído com base em ações que devem ser executadas para se chegar 
ao objetivo do programa. É importante saber que, nessa etapa, os nomes das 
variáveis já podem ser informados.
Algoritmo – IMC 
 {INFORMAR A CLASSIFICAÇÃO DO IMC DE UMA PESSOA} 
 Entradas: peso, altura 
 Saídas: imc, classificação 
 início 
 ler (peso, altura) {ENTRADA DO PESO E ALTURA DA PESSOA} 
 imc ← peso / (altura * altura) {CALCULA O IMC} 
 escrever (imc) {INFORMA O VALOR ADQUITIDO DO IMC} 
 se imc < 18.5 então 
 escrever “Abaixo do peso” 
 senão 
 se imc >= 18.5 e < 25 então 
 escrever “Peso normal” 
 senão 
 se imc >= 25 e <30 
 escrever “Acima do peso” 
 senão 
 se imc >= 30 e <34 
 escrever “Obeso” 
Introdução de algoritmos e raciocínio lógico 9
 senão “Muito obeso” 
 fimse 
 fim
Depois de construído o algoritmo, a próxima etapa (validação do algoritmo) 
pode ser realizada por meio de testes de mesa, atribuindo diferentes dados 
para ver o que o algoritmo retorna do processamento. Por exemplo, podemos 
atribuir os seguintes valores.
 � Peso: 60.
 � Altura: 1.70.
 � IMC = 60 / (1.70 * 1.70).
 � IMC = 60 / (2.89).
 � IMC = 20.76.
 � IMC < 18.5 (Falso).
 � IMC >= 18.5 e < 25 (Verdadeiro).
 � Classificação “Peso normal”.
A etapa seguinte, a de codificação do programa, é a implementação 
propriamente dita, em que uma linguagem de programação é utilizada. O 
exemplo a seguir ilustra a implementação do algoritmo IMC na linguagem de 
programação C. Apesar de o foco deste capítulo não ser a implementação 
de linguagens de programação, é importante ter uma dimensão de como o 
algoritmo facilita a interpretação para implementar em qualquer linguagem 
de programação.
Linguagem C – Programa IMC 
 
#include <stdio.h> 
 
int main() { 
 int peso; 
 float altura, imc; 
 
 printf("Informe seu peso (em kgs):\n"); 
 scanf("%d", &peso); 
 
 printf("\nInforme sua altura:\n"); 
 scanf("%f", &altura); 
 
Introdução de algoritmos e raciocínio lógico10
 imc = peso / (altura * altura); 
 
 printf("\n\n Seu IMC = %.2f", imc); 
 printf("\nClassificacao IMC"); 
 if (imc < 18.5) 
 printf(" Abaixo do peso"); 
 else if ((imc >= 18.5) && (imc < 25)) 
 printf(" Peso normal"); 
 else if ((imc >= 25) && (imc < 30)) 
 printf(" Acima do peso"); 
 else if ((imc >= 30) && (imc < 34)) 
 printf(" Obeso"); 
 else 
 printf(" Muito obeso"); 
 }
A compilação e depuração (verificação do programa) é a etapa em que 
podemos realizar testes (como o teste de mesa já mostrado) inserindo valores 
no programa para verificar se o processamento está correto.
Por fim, a manutenção representa o acompanhamento do programa de-
senvolvido, seja para corrigir eventuais erros, seja para atribuir uma nova 
funcionalidade, como a de informar o nome da pessoa que está realizando 
a classificação do IMC.
Independentemente da abordagem realizada, todas têm um esquema que 
considera etapas que facilitam a construção de um programa de qualidade, 
tanto para os desenvolvedores quanto para os usuários. Os exemplos trazidos 
neste capítulo podem ser dimensionados para problemas mais complexos, 
respeitando as etapas de sua construção.
É essencial saber o quanto os algoritmos são importantes para facilitar 
a depuração dos programas por parte dos programadores e/ou da equipe 
de desenvolvimento. Conhecer como a relação do computador com os algo-
ritmos funciona facilita esse entendimento. Já a construção dos algoritmos 
deve apresentar um conteúdo claro, preciso e não ambíguo. É importante 
seguir as etapas da construção de um programa para ter sucesso em seus 
resultados finais, considerando o propósito e a facilidade do desenvolvimento 
e produzindo um programa de qualidade.
Introdução de algoritmos e raciocínio lógico 11
Referências
BERG, A. C.; FIGUEIRÓ, J. P. Lógica de programação. 3. ed. rev. e atual. Canoas: Ulbra, 2006.
EDELWEISS, N.; LIVI, M. A. C. Algoritmos e programação com exemplos em Pascal e C. 
Porto Alegre: Bookman, 2014.
MANZANO, J. A. N. G.; OLIVEIRA, J. F. Algoritmos: lógica para desenvolvimento de pro-
gramação de computadores. 28. ed. rev. e atual. São Paulo: Saraiva, 2016.
OLIVEIRA, L. A. H. G. Introdução à informática. Natal: Departamento de Computação e 
Automação, 2004. (Apostila de Introdução à informática, Curso de Engenharia Química, 
Universidade Federal do Rio Grande do Norte). 
PEREIRA, S. L. Algoritmos e lógica de programação em C: uma abordagem didática. 
São Paulo: Saraiva, 2018.
Introdução de algoritmos e raciocínio lógico12
DICA DO PROFESSOR
Conhecer um pouco sobre o funcionamento do computador e sobre as etapas de desenvolviment
o de um algoritmo é muito importante a fim de que possamos desenvolver as habilidades para a 
resolução de problemas através de algoritmos com eficiência e eficácia. Assista ao vídeo para co
nhecer um pouco sobre este tema.
Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar.
EXERCÍCIOS
1) Analise as características apresentadas pelos algoritmos em cada alternativa e selecio
ne a alternativa que não representa um algoritmo, ou seja, não atende aos requisitos 
para ser considerado um algoritmo. 
A) 
Calcular todos os números primos de 2 até 100.
B) 
Encontrar e escrever todos os termos da sequência de Fibonacci.
C) 
Calcular a soma de todos os valores no intervalo de 100 até 1000 que são divisíveis por 3 .
D) 
Calcular a média de todos os valores pares entre 100 e 200, inclusive.
E) 
Encontrar e escrever os 10 primeiros termos da sequência de Fibonacci.
A lógica de programação é muito importante para o desenvolvimento de algoritmos, 
que são a descrição de uma sequência finita de instruções ou operações que devem ser 
executadas em uma determinada ordem e em tempo finito para assim atingir o result
ado esperado, ou seja, a resolução de um problema. Considerando o conceito de algoritmos apresentado acima, avalie as afirmações a seguir.
2) 
https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/e743bbd34f28779ba0f437f9bbf29482
I) A sequência lógica é a execução das operações/instruções na ordem determinada pa
ra atingir um objetivo ou chegar a uma solução de um problema. 
II) Um algoritmo possui somente uma única sequência lógica de instruções para a sua 
solução. 
III) A lógica de programação é a técnica de encadear pensamentos para atingir deter
minado objetivo. 
IV) A instrução possui um conjunto de regras/normas definidas para a realização de 
alguma atividade que resulta em uma ação.
É correto apenas o que se afirma em: 
A) 
I e II.
B) 
I e III.
C) 
II e IV.
D) 
I, III e IV.
E) 
II, III e IV
O computador é um dispositivo capaz de realizar cálculos e de tomar decisões lógicas e
m velocidades muito mais rápidas que os seres humanos. Além disso, processam dados 
através de conjuntos de instruções denominados de programas, chamados de software
s. Não importa a aparência física, um computador é composto por vários dispositivos, 
como teclado, monitor, mouse, disco rígido, memória, unidade de processamento, os q
uais são denominados hardware. A figura a seguir representa a estrutura básica de u
m computador. Analise a figura e selecione o componente que representa a parte de “p
rocessamento” do computador, responsável por executar cálculos como adição, subtra
ção, multiplicação e divisão e mecanismos de tomada de decisão, que permitem ao com
putador, por exemplo, comparar dois itens na unidade de memória e determinar se ele
s são ou não iguais. O outro componente é responsável pelo tráfego de dados, obtendo 
dados da memória e os interpretando, e controlando a transferência de dados da mem
ória para a ULA, da entrada para a memória e da memória para a saída.
3) 
Qual o componente que representa a funcionalidade descrita acima?
A) 
Unidade de entrada.
B) 
Unidade de saída.
C) 
As unidades de memória auxiliar.
D) 
A Unidade Lógica e Aritmética (ULA, ou ALU, Arithmetic and Logic Unit) e a Unidade d
e Controle (UC).
E) 
A memória principal.
4) Muitas pessoas encontram dificuldades em converter valores informados em Reais (
R$) para valores em Dólar ($). Selecione a alternativa correta que representa os com
ponentes de entrada, processamento e saída do algoritmo que realize a conversão.
A) 
Entrada: valor em reais e o valor de 1 dólar. 
Processamento: multiplicar o valor em reais pelo valor do dólar diário. 
Saída: mostrar o valor em dólar encontrado. 
Entrada: valor em reais e o valor de 1 dólar. 
B) 
Processamento: dividir o valor em reais pelo valor do dólar diário. 
Saída: mostrar o valor em dólar encontrado. 
C) 
Entrada: valor em reais e o valor de 10 dólares. 
Processamento: subtrair o valor em reais pelo valor do dólar diário. 
Saída: mostrar o valor em dólar encontrado. 
D) 
Entrada: valor em reais e o valor de 1 dólar. 
Processamento: somar o valor em reais pelo valor do dólar diário. 
Saída: mostrar o valor em dólar encontrado. 
E) 
Entrada: valor em reais e o valor de 100 dólares. 
Processamento: dividir o valor em reais pelo valor do dólar diário. 
Saída: mostrar o valor em dólar encontrado. 
5) A construção de um algoritmo para representar a situação de uma aplicação do mun
do real deve ser feita com muito cuidado a fim de que realmente execute as tarefas qu
e se quer de forma correta e em tempo hábil. A dificuldade em gerar bons algoritmos/
programas levou à definição de técnicas específicas que iniciam frequentemente com 
a construção de um algoritmo. Para garantir a qualidade de um programa, deve-se c
onstruí-lo seguindo uma série de etapas para, assim, chegar ao produto final: um pro
grama que execute as funcionalidades necessárias à aplicação. Identifique e selecione 
a alternativa que representa as etapas e a ordem correta de construção de um progra
ma.
A) 
Análise do problema -Identificação das entradas e saídas – Validação do algoritmo – Const
rução do algoritmo – Construção do programa – Teste do programa - Manutenção.
B) 
Análise do problema -Identificação das entradas e saídas – Construção do algoritmo – Con
strução do programa – Validação do algoritmo –Teste do programa - Manutenção.
C) 
Análise do problema -Identificação das entradas e saídas – Construção do algoritmo – Vali
dação do algoritmo – Construção do programa – Teste do programa - Manutenção.
D) 
Análise do problema -Identificação das entradas e saídas – Construção do algoritmo – Vali
dação do algoritmo - Manutenção do algoritmo – Teste do programa - Construção do progr
ama.
E) 
Análise do problema - Identificação das entradas e saídas – Construção do programa – Tes
te do programa - Construção do algoritmo – Validação do algoritmo – Manutenção.
NA PRÁTICA
Você já desenvolveu um algoritmo hoje? Pode ter certeza que sim. Você desenvolveu não some
nte um, mas vários algoritmos!!!
Vamos ver agora alguns casos práticos da aplicação dos algoritmos no nosso dia a dia.
Todos nós sabemos construir algoritmos. Caso contrário, não conseguiríamos sair de casa pela 
manhã, ir ao trabalho, realizar compras, decidir qual o melhor caminho para chegar a um lugar, 
voltar para casa, etc. Para que tudo isso possa ser realizado, é necessário uma série de entradas, c
omo que hora acordar, que hora sair de casa, qual o melhor meio de transporte, qual o melhor tra
jeto conforme o horário do dia, etc.
Veja a sequência de atividades para que possamos realizar um saque em um caixa eletrôni
co:
Assim como o saque apresentado acima, construímos e executamos vários algoritmos durante o 
nosso dia a dia e nem percebemos.
Outro exemplo de aplicação - que, particularmente, não é uma atividade agradável de exec
utar - é o caso de, ao estarmos dirigindo em plena avenida, de repente ..ops....furar o pneu! 
E, então, como trocar, qual a sequência lógica para que tenhamos sucesso nesta empreitad
a?
Mesmo não sendo uma atividade muito agradável, vamos lá!
SAIBA +
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professo
r:
Lógica de Programação - Apresentação e Definições
Neste vídeo introduzimos o curso de Lógica de Programação trazendo alguns conceitos iniciais i
mportantes.
Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar.
https://www.youtube.com/embed/41ubXTEPFO0
Complexidade de Algoritmos
A obra apresenta a complexidade de algoritmos, métodos e problemas com ênfase em conceitos 
e seu emprego em análise e projeto. O livro também analisa as limitações dos problemas em rela
ção à complexidade dos algoritmos que os resolvem e define as principais classes de problemas: 
P, NP e NP-completa.Os autores, reconhecidos e premiados pela comunidade científica, têm lar
ga experiência de ensino e pesquisa nas melhores universidades do país e também no exterior.
Conteúdo interativo disponível na plataforma de ensino!
Raciocínio Lógico nas Escolas: Uma Introdução ao Ensino de Algoritmos de Programação
O presente artigo relata a experiência de discentes do curso de Licenciatura em Computação, inti
tulada “Oficina de Raciocínio Lógico e Programação", com objetivo de auxiliar os alunos do 8o 
e 9o ano na Olimpíada Brasileira de Matemática das Escolas Públicas (OBMEP), e introduzir a 
Computação na Educação Básica.
Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar.
http://publica.sagah.com.br/publicador/objects/attachment/1709001284/RaciocinioLogiconasEscolasUmaIntroducaoaoEn.pdf?v=1428369597

Outros materiais