Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Inserir Título Aqui 
Inserir Título Aqui
Programação de 
Computadores
Estruturas de Decisão
Responsável pelo Conteúdo:
Prof. Me. Hugo Fernandes
Revisão Textual:
Prof.ª Esp. Kelciane da Rocha Campos
Nesta unidade, trabalharemos os seguintes tópicos:
• Estruturas de Decisão;
• Blocos de Decisão.
Fonte: Getty Im
ages
Objetivos
• Utilizar estruturas de decisão para testar uma ou mais condições e de acordo com o re-
sultado, Verdadeiro ou Falso, seguir um bloco de instruções;
• Estudar os conceitos e a sintaxe de três tipos de estruturas de decisão, bem como exem-
plos de suas aplicações.
Caro Aluno(a)!
Normalmente, com a correria do dia a dia, não nos organizamos e deixamos para o úl-
timo momento o acesso ao estudo, o que implicará o não aprofundamento no material 
trabalhado ou, ainda, a perda dos prazos para o lançamento das atividades solicitadas.
Assim, organize seus estudos de maneira que entrem na sua rotina. Por exemplo, você 
poderá escolher um dia ao longo da semana ou um determinado horário todos ou alguns 
dias e determinar como o seu “momento do estudo”.
No material de cada Unidade, há videoaulas e leituras indicadas, assim como sugestões 
de materiais complementares, elementos didáticos que ampliarão sua interpretação e 
auxiliarão o pleno entendimento dos temas abordados.
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de 
discussão, pois estes ajudarão a verificar o quanto você absorveu do conteúdo, além de 
propiciar o contato com seus colegas e tutores, o que se apresenta como rico espaço de 
troca de ideias e aprendizagem.
Bons Estudos!
Estruturas de Decisão
UNIDADE 
Estruturas de Decisão
Contextualização
Em muitos momentos, nosso aplicativo deve tomar decisões de acordo com as condi-
ções pré-estabelecidas. As estruturas de decisão exigem que o programador especifique 
uma ou mais condições a serem avaliadas ou testadas pelo programa, juntamente com 
uma declaração ou instruções a serem executadas. No Scratch, como em qualquer outra 
linguagem de programação, as condições são testadas e retornam sempre um resultado 
do tipo Boolean (verdadeiro ou falso).
Nesse contexto, iremos estudar os conceitos e a sintaxe de três tipos de estruturas de 
decisão, bem como exemplos de suas aplicações.
6
7
Estruturas de Decisão
Em muitos momentos, nosso aplicativo deve tomar decisões de acordo com as con-
dições pré-estabelecidas. As estruturas de decisão exigem que o programador especifi-
que uma ou mais condições a serem avaliadas ou testadas pelo programa, juntamente 
com uma declaração ou instruções a serem executadas.
Figura 1
O modelo acima representa um fluxograma em que temos uma estrutura de decisão, 
e de acordo com a resposta do teste da condição, falso ou verdadeiro, o programa 
executa um bloco de instruções e segue para a finalização do algoritmo.
Fluxograma e pseudocódigo: https://goo.gl/i1WgUz
No Scratch, como em qualquer outra linguagem de programação, as condições são 
testadas e retornam sempre um resultado do tipo Boolean (verdadeiro ou falso). A sin-
taxe do comando sempre é: testar a condição e executar uma instrução.
Figura 2
7
UNIDADE 
Estruturas de Decisão
Aqui devemos nos atentar ao detalhe do “encaixe” do bloco em formato de hexá-
gono. Isso significa que podemos encaixar, como condição, somente blocos com essa 
forma. Esses blocos são os operadores relacionais e operadores lógicos e alguns 
blocos da categoria Sensores.
Operadores relacionais
Operadores relacionais são utilizados para comparar valores entre dois termos. O 
resultado dessa comparação sempre irá retornar um valor booleano, ou seja, true ou 
false. No Scratch, temos os seguintes operadores:
Tabela 1
OPERADORES RELACIONAIS
Operador Nome Descrição Exemplo
= Igualdade
Verifica se os valores de dois 
operandos são iguais ou não; se a 
resposta for sim, a condição torna-
se verdadeira (true).
> Maior que
Verifica se o valor do operando 
esquerdo é maior que o valor 
do operando à direita; se sim, a 
condição torna-se verdadeira (true).
< Menor que
Verifica se o valor do operando 
esquerdo é menor que o valor 
do operando à direita; se sim, a 
condição torna-se verdadeira (true).
Operadores lógicos
Um operador lógico é um operador que retorna um resultado booleano (true ou false), 
baseado no resultado booleano de uma ou duas outras expressões. O conceito de opera-
dores lógicos é simples. Eles permitem que um programa tome uma decisão com base em 
múltiplas condições. Cada operando é considerado uma condição que pode ser avaliada de 
acordo com o valor (verdadeiro ou falso). Os operadores lógicos no Scratch são e, ou e não.
Tabela 2
OPERADORES LÓGICOS
Operador Descrição Exemplo
e
Retorna verdadeiro se ambas 
as expressões resultarem como 
verdadeiras. Todas as expressões são 
avaliadas antes que o operador e 
seja aplicado.
8
9
OPERADORES LÓGICOS
Operador Descrição Exemplo
ou
Retorna verdadeiro se pelo menos 
uma das expressões resultar 
como verdadeira. Caso a primeira 
expressão retorne como verdadeira, 
o restante da expressão não é 
avaliado. 
não
Retorna verdadeiro se a expressão 
à direita for avaliada como falsa. 
Retorna falso se a expressão à 
direita for verdadeira.
Blocos de Decisão
A linguagem Scratch fornece os seguintes tipos de declarações de tomada de decisão:
Tabela 3
Bloco de comando
(categoria controle)
Nome do conceito em 
programação
se... então (if... then)
se... então... senão (if... 
then... else)
se... então... senão... se (if... 
then... else... if)
Estrutura se... então
A estrutura se... então é utilizada para testar uma condição e caso retorne verdadeiro, 
executa um bloco de instruções. Toda declaração se... então segue uma sintaxe padrão: 
teste uma condição e, se for verdade, execute uma ação.
9
UNIDADE 
Estruturas de Decisão
Se (condição) então
 executa bloco de instruções
Desvio Condicional Simples: https://goo.gl/8mT5hg
Vamos a um exemplo. Um programa deve obter as notas A e B de um aluno, somar 
as notas e, em seguida, verificar se a nota do aluno é maior que seis (6); se sim, o progra-
ma exibe na tela a mensagem “Aprovado”. A seguir, temos um fluxograma descrevendo 
esse algoritmo.
Figura 3
Qual é a condição para que o aluno possa ser aprovado?
A condição é que a soma das notas A e B deve ser maior que seis (6); caso o teste 
dessa condição retorne verdadeiro, o programa executa as instruções previstas para 
esta situação.
10
11
Nesse cenário, vejamos o seguinte exemplo no Scratch:
Figura 4
Explicando o código
• Linha 1 – bloco “quando for clicado”. Esse bloco indica que o programa será exe-
cutado quando o usuário clicar no ícone da bandeira verde.
• Linha 2 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
primeira nota.
• Linha 3 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_A”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_A”.
• Linha 4 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
segunda nota.
• Linha 5 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_B”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_B”.
• Linha 6 – nessa linha, utiliza-se o bloco “mude para” para alterar o valor contido na 
variável “soma”. Para isso, utilizamos o bloco “+” da categoria Operadores.
• Linha 7 – bloco “se... então”. Esse bloco testa a condição proposta pelo operador 
relacional “>” (maior). Ou seja, caso o teste resulte em verdadeiro (a soma for maior 
que 6), será executada a linha 8.
11
UNIDADE 
Estruturas de Decisão
• Linha 8 – bloco “diga por”. Esse bloco é responsável por exibir mensagens em 
texto na área do ator. Nesse caso específico, essa linha será executada somentese 
a condição testada pelo bloco “se... então” for verdadeira.
Estrutura se... então... senão
Na estrutura se... então... senão, além de ser testada uma condição e executado um 
bloco de instruções no caso de retorno do teste ser verdadeiro, também são descritas as 
instruções para quando o retorno for falso. Utilizamos essa estrutura quando o programa 
deve tomar duas decisões.
Toda declaração se... então... senão segue uma sintaxe padrão: teste uma condição 
e, se for verdade, execute o bloco de instrução 1; caso contrário, o bloco de instrução 2.
Se (condição) então
 executa bloco de instruções 1
senão
 executa bloco de instruções 2
Estrutura de decisão SE-ENTÃO-
-SENÃO: https://goo.gl/mWJnqh
Continuemos com o exemplo anterior, 
em que nosso programa recebe duas notas e 
em seguida efetua a soma entre as duas. Ire-
mos complementar com mais uma decisão. 
Caso a condição retorne falso, o programa 
irá imprimir na tela o texto “Reprovado”.
Na Figura 5 temos um fluxograma descre-
vendo esse algoritmo.
Do mesmo modo que o algoritmo ante-
rior, a condição para o aluno ser aprovado 
é possuir uma nota maior que seis (6); con-
tudo, nesse novo algoritmo, temos previstas 
instruções em caso de o retorno ser falso, 
ou seja, caso o aluno possua nota menor ou 
igual a seis (6).
Vejamos a implementação desse algorit-
mo no Scratch: Figura 5
12
13
Figura 6
Explicando o código
• Linha 1 – bloco “quando for clicado”. Esse bloco indica que o programa será exe-
cutado quando o usuário clicar no ícone da bandeira verde.
• Linha 2 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
primeira nota.
• Linha 3 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_A”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_A”.
• Linha 4 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
segunda nota.
• Linha 5 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_B”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_B”.
• Linha 6 – nessa linha, utiliza-se o bloco “mude para” para alterar o valor contido na 
variável “soma”. Para isso, utilizamos o bloco “+” da categoria Operadores.
• Linha 7 – bloco “se... então... senão”. Esse bloco testa a condição proposta pelo 
operador relacional “>” (maior). Ou seja, caso o teste resulte em verdadeiro (a soma 
for maior que 6), será executada a linha 8. Por outro lado, se o teste resultar falso, 
a linha 9 será executada.
• Linha 8 – bloco “diga por”. Esse bloco é responsável por exibir mensagens em 
texto na área do ator. Essa linha será executada somente se a condição testada pelo 
bloco “se... então... senão” for verdadeira.
• Linha 9 – bloco “diga por”. Essa linha será executada somente se a condição testa-
da pelo bloco “se... então... senão” for falsa.
13
UNIDADE 
Estruturas de Decisão
Estrutura se... então... senão... se
Utilizamos a estrutura se... então... senão... se quando é necessário avaliar mais do 
que dois resultados e condições possíveis.
A sintaxe para essa estrutura é:
Se (condição) então
 executa bloco de instruções 1
senão
 Se (condição2) então
 executa bloco de instruções 2
EDesvio Condicional Aninhado (SE...ENTÃO...SENÃO...SE): https://goo.gl/3hQmAb
Vamos dar continuidade ao exemplo do programa que recebe duas notas e em segui-
da efetua a soma das notas e exibe na tela “Aprovado” ou “Reprovado”. Iremos com-
plementar com mais uma condição. Caso a nota seja inferior a seis (6), porém superior 
a quatro (4), o programa irá imprimir na tela o texto “Avaliação Final”.
A seguir temos um fluxograma descrevendo esse algoritmo.
Figura 6
14
15
A condição para o aluno ser aprovado é possuir uma nota maior que seis (6); porém 
abaixo dessa nota, temos uma nova condição. O aluno pode efetuar a avaliação final 
se sua nota for maior que quatro (4). Se sua nota for menor ou igual a quatro (4), será 
reprovado.
No Scratch, essa estrutura se dá por meio do encaixe entre blocos “se... então” e/ou 
“se... então...senão”. Vejamos a implementação desse algoritmo no Scratch:
Figura 7
Explicando o código
• Linha 1 – bloco “quando for clicado”. Esse bloco indica que o programa será exe-
cutado quando o usuário clicar no ícone da bandeira verde.
• Linha 2 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
primeira nota.
• Linha 3 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_A”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_A”.
• Linha 4 – bloco “pergunte e espere”. Esse bloco é responsável pela funcionalidade 
de entrada de dados. Nesse caso, essa instrução solicita ao usuário que digite a 
segunda nota.
• Linha 5 – bloco “mude para”. Esse bloco é responsável por alterar o valor contido 
na variável “nota_B”. O resultado da resposta solicitada na linha 3 será inserido na 
variável “nota_B”.
• Linha 6 – nessa linha, utiliza-se o bloco “mude para” para alterar o valor contido na 
variável “soma”. Para isso, utilizamos o bloco “+” da categoria Operadores.
15
UNIDADE 
Estruturas de Decisão
• Linha 7 – bloco “se... então... senão”. Esse bloco testa a condição proposta pelo 
operador relacional “>” (maior). Ou seja, caso o teste resulte em verdadeiro (a soma 
for maior que 6), será executada a linha 8. Por outro lado, se o teste resultar falso, 
o bloco se... então... senão na linha 9 será executado.
• Linha 8 – bloco “diga por”. Essa linha será executada somente se a condição testa-
da pelo bloco “se... então... senão” for verdadeira.
• Linha 9 – bloco “se... então... senão”. Essa linha será executada somente se a con-
dição da linha 7 retornar falso. Uma vez executado, esse bloco testa a condição: 
Soma “>” (maior) que “4”. Caso retorne verdadeiro, a linha 10 será executada; 
caso retorne falso, será executada a linha 11.
• Linha 10 – bloco “diga por”. Essa linha será executada somente se a condição tes-
tada pelo bloco “se... então... senão” da linha 9 for verdadeira.
• Linha 11 – bloco “diga por”. Essa linha será executada somente se a condição tes-
tada pelo bloco “se... então... senão” da linha 9 for falso.
Considerações finais
Concluímos nossa unidade de estudo sobre estruturas de decisão.
Ao longo desta unidade, exploramos as principais estruturas de decisão juntamente 
com o uso de operadores lógicos e relacionais.
Para avançar nos estudos de programação de computadores, deve-se ter em mente 
que o domínio na criação de algoritmos é fundamental.
Dito isso, deixo como sugestão a leitura do livro Algoritmos: lógica para desenvol-
vimento de programação de computadores, dos autores José Augusto N. G. Manza-
no e Jayr F. de Oliveira.
Até breve!
16
17
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Livros
Algoritmos: Lógica para desenvolvimento de programação de computadores
MANZANO, José Augusto N. G.; OLIVEIRA, Jayr F. de. Algoritmos: lógica para desenvol-
vimento de programação de computadores. 28ª edição. Cap. 4 - Programação com decisão.
 Vídeos
Lógica de programação com Scratch - Parte 3 - Condicionais e mais operadores
Tutorial sobre Scratch focando em condicionais. Vamos entender o funcionamento dos 
dois tipos de condicionais se... então e se... então... senão.
https://youtu.be/YiPCIvItJnc
 Leitura
Estruturas de condição encadeadas
https://goo.gl/oRsLq6
Algoritmo - estruturas condicionais
https://goo.gl/ycyXNt
17
UNIDADE 
Estruturas de Decisão
Referências
MARJI, Majed. Aprenda a programar com Scratch: uma introdução visual à pro-
gramação com jogos, arte, ciência e matemática. São Paulo: Novatec Editora, 2014.
SCRATCH.Scratch. 2019. Disponível em: <https://Scratch.mit.edu/about/>, 
Acesso em: 15 de jan. de 2019.
18

Mais conteúdos dessa disciplina