Vous êtes sur la page 1sur 201

O que é Lógica?

Prof. Eng. Luiz Gustavo


“Lógica”
Algoritmos e argumentos

Computação

Matemática Filosofia
Cálculos Por que penso assim?

Usar corretamente as leis do pensamento!


Arte/técnica
Correção do pensamento!
Afinal de contas: O que é Lógica?

“É a arte de bem pensar” “Ciência das formas dos pensamentos”

“A forma mais complexa A lógica é a ordem da razão. Ela visa


do pensamento é o colocar ordem no pensamento!
raciocínio”
Veja um exemplo...

Neste caso, os argumentos


são verdadeiros!
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Existe lógica ao
nosso redor?

Prof. Eng. Luiz Gustavo


Aqui você já usa a lógica...
Antes de decidir ou agir: Coloque
ordem no pensamento!
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
E a lógica de
Programação?

Prof. Eng. Luiz Gustavo


Significa:
O objetivo é:

São necessárias:
Racionalidade Técnicas que cooperem para
produção de soluções logicamente
válidas e coerentes
Raciocínio do computador?
Raciocínio é algo abstrato e intangível.
Como expressá-lo?
A lógica de programação
pode ser representada
em qualquer linguagem!
Palavra
falada
detalhes
computacionais são

Seres Escrita Máquinas


humanos
Idioma
Linguagem de
Padrão programação
(gramática)
Um probleminha...
Cada linguagem de programação está associada a
uma série de detalhes computacionais!

Estes detalhes pouco tem haver com o


raciocínio original!
Algoritmo é a SOLUÇÃO!!

FOCO NA LÓGICA DE
PROGRAMAÇÃO!
O que é Algoritmo?

Prof. Eng. Luiz Gustavo


Antes da definição...

O objetivo principal da lógica de


programação é a construção de
algoritmos coerentes e válidos
Definição

Sequência de passos que visam


atingir um objetivo bem definido!
Para colocar sequência,
precisamos de ordem, e
portanto: LÓGICA
Exemplo de um algoritmo
Receita de bolo
O algoritmo...
Deve especificar ações Deve partir de um estado
inicial, após um período
claras e precisas!
finito, produzir um
estado final previsível!

O algoritmo fixa um padrão de comportamento a ser seguido, uma norma de


execução a ser trilhada, para alcançar a solução de um problema , garantindo
que seja sempre executado, sob as mesmas condições, produzindo o mesmo
resultado.
Algoritmo é a SOLUÇÃO!!

FOCO NA LÓGICA DE
PROGRAMAÇÃO!
Por que é importante
construir algoritmos?

Prof. Eng. Luiz Gustavo


“Facilite”
Foco!!

Saiba como vai resolver o problema


antes de programar!
Você pode usar seu algoritmo onde
quiser agora! Em qualquer
linguagem de programação!!
Este processo chama-se...
 CODIFICAÇÃO: TRANSFORMAR ALGORITMO
EM CÓDIGO – LINGUAGEM DE PROGRAMAÇÃO!
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
ALGORITMO

Prof. Eng. Luiz Gustavo


Quais são os passos necessários para trocar
uma lâmpada?
Sequência de ações
 Faz com que ele seja seguido naturalmente por
qualquer pessoa

 Estabelece um padrão de comportamento pois


todos baseados neste algoritmo agiriam da mesma
forma
Sequenciação
É uma convenção com o objetivo de
reger o fluxo de execução do algoritmo.

Determina a primeira ação a ser


executada e qual ação vem a seguir.

Neste exemplo, a sequência é linear de cima para baixo,


assim como é a sequência pela qual lemos um texto, de
cima para baixo e da esquerda para a direita
E agora?
Se a lâmpada não
estivesse queimada?
Vamos fazer
um teste
antes?

A execução das ações conduziria a


uma troca independentemente se a
lâmpada estivesse queimada ou não.
Troca com teste

Somente se a condição for verdadeira a


lâmpada será substituída
Teste seletivo
Por meio de uma condição é são
determinada quais ações serão
executadas!

O resultado do teste pode ser


verdadeiro ou falso!
Está bom mas pode melhorar...
Você está indo pegar a escada e a
lâmpada nova sem saber se são
necessárias!

Vamos alterar o teste para o início?


Troca com teste no início

Só será executada alguma ação se


realmente a lâmpada estiver queimada!
Algumas observações...
 Há muitas formas de se resolver um problema pois
cada pessoa pensa e age de forma diferente!

 O importante é atingir o objetivo desejado!

 O bom senso e a prática da lógica de programação


devem conduzir à solução mais adequada de forma
mais objetiva com menos esforço.
Mas...

Se a lâmpada nova
não funcionar?
Podemos fazer um refinamento, uma
melhoria no algoritmo, para trocar a
lâmpada diversas, se necessário, até
funcionar!
Troca de lâmpada com teste e
repetição indefinida
Precisamos definir um limite !
 É necessário expressar esta repetição da ação sem
repetir o texto.

 Precisamos garantir uma condição de parada


Ficaria assim...
Se fosse 10 lâmpadas...

Estamos repetindo a mesma


sequência de ações para
os 10 soquetes
Troca para 10 lâmpadas com
repetição

Podemos alterar o fluxo


sequencial de execução para
executar as ações
correspondente a um soquete
quantas vezes forem
necessárias.
Conceitos a serem lembrados!
 Estrutura sequencial
Passo-a-passo uma após a outra

 Estrutura seletiva e teste condicional


Permite ou não que o fluxo de execução passe por
um conjunto de ações

 Estrutura de repetição
Os computadores precisam dos
seres humanos
 Qualquer pessoa com experiência resolveria

 Mas um computador não tem experiência!

 Devemos determinar com detalhes e na


sequência correta as ações que ele deve
executar. Uma sequência finita que garanta a
solução do problema.

 Esta atividade de instruir os computadores é


realizada pelos programadores ou
construtores de algoritmos!
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
EXERCÍCIOS RESOLVIDOS
Trocar um pneu
com um passo-a-passo

Prof. Eng. Luiz Gustavo


Exercício
Exercício 1- Pegar o pneu reserva
(estepe)

Letra a

2- Tirar o pneu

3- Colocar o pneu novo


Pneu reserva (estepe) está
Exercício em boas condições?

Letra b – E se o estepe NÃO SIM

Comprar outro pneu ou


não estiver em boas ir em uma oficina

condições??
2- Tirar o pneu

3- Colocar o pneu novo


Exercício Comprar outro pneu ou
ir em uma oficina
Letra c NÃO

O pneu realmente Pneu reserva (estepe) está


em boas condições? SIM
está furado?
2- Tirar o pneu
SIM

NÃO

3- Colocar o pneu novo

FIM
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Como representar
um algoritmo?

OU

Prof. Eng. Luiz Gustavo


Importante!

 Um algoritmo é uma linha de raciocínio, e pode ser


representado de diversas maneiras!
 Na forma gráfica ou textual
TEXTUAL – PORTUGUÊS COLOQUIAL

São mais fáceis de usar!


GRÁFICA – FLUXOGRAMAS

 Tradicional
 Chapin
GRÁFICA – FLUXOGRAMA TRADICIONAL

São mais fiéis ao Não são naturais pois


estamos condicionados a
raciocínio original nos expressarmos por
palavras.

Substitui palavras por É mais trabalhoso fazer um


desenho.
convenções de desenho.
É mais trabalhoso fazer
uma correção no desenho.
GRÁFICA – FLUXOGRAMA TRADICIONAL
Mesmas vantagens e
desvantagens

O fluxo é direcionado
por dentro ou fora de
cada bloco.
Temos um problema!
 O português tem uma grande riqueza gramatical!

 Mas não podemos utilizá-la em toda sua plenitude,


devido à ambiguidade.

 Veja um exemplo a seguir!


Quando verbalizado o que
esta frase quer dizer?
 O pregador foi grampeado durante o conserto!

conserto

Pregador Grampeado concerto


vários sentidos diferentes!
Nós conseguiríamos entender mas
o computador não...
(pelo menos até agora pois a Inteligência artificial está vindo aí...)

 Dentro do contexto, seria possível o ser humano decifrar cada


sentido da sentença anterior !

 Mas o computador é desprovido do raciocínio para


interpretar a frase.

O pregador foi grampeado durante o conserto!


Vamos evitar isso!
 Para evitar este e outros problemas utilizamos um conjunto de
regras que visam restringir e estruturar o uso do português no
algoritmo

 As linguagens de programação (como C e Pascal) usam regras!

 O objetivo é facilitar a futura codificação dos algoritmos!

O português para algoritmo na ciência da computação,


restringido e estruturado é conhecido como:
PORTUGUÊS ESTRUTURADO!
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
SIMBOLOGIA
DO FLUXOGRAMA
Início

a <- c + d

Não
receber o
valor de a A> B?
Sim

Prof. Eng. Luiz Gustavo


Fluxo de dados
 Indica o sentido do fluxo de dados
Terminal
 Indica o início ou fim de um processamento

Início
Processamento
 Processamento em geral.
 Ex: a soma, multiplicação entre dois números

a <- c + d
Entrada/Saída
 Operação de entrada e saída de dados

receber o valor de a
Desvio (conector)
 Permite o desvio para qualquer ponto do programa
Entrada manual
 Indica a entrada de dados via teclado
Exibir/Saída
 Mostrar informações ou resultados

Mostrar o valor de a
Decisão
 Permite elaborar processos de decisão

Não
A> B?
Sim
Conector de página
 Permite informar de qual página vem o fluxograma
Colocar conteúdo do livro de lógica
com fluxograma e simbologia
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
EXERCÍCIOS
TROCANDO UMA
RESOLVIDOS
LÂMPADA
FLUXOGRAMA

Prof. Eng. Luiz Gustavo


Faça um fluxograma para trocar a
lâmpada com testes
 Lembrando dos símbolos
Fluxograma - Solução
INÍCIO

Pressionar o
interruptor

Lâmpada Não Pegar uma escada +


acendeu? lâmpada nova

Sim

FIM Subir na escada

Descartar lâmpada velha Substituir lâmpada

Guardar escada Descer da escada


Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Para quem você está
construindo o
algoritmo?

Prof. Eng. Luiz Gustavo


Qual tarefa você está planejando?
 Ir à escola
 Trocar uma lâmpada
 Postar uma foto no Facebook
 Ir à uma festa
 Passear
 Férias
 Fazer um curso
Quem vai fazer?
 Você?
 Alguém da sua família?
 Seu colega de trabalho?
 Seu colega na escola?
 Alguém que você não conhece?
 Alguém que ainda não nasceu?
 Um robô?
Conhecendo quem vai fazer a
tarefa...

 Fica mais fácil fazer um passo-a-passo mais


direcionado e específico.
E se a tarefa for realizada por
qualquer uma das opções
mostradas anteriormente?

 O algoritmo terá que ser mais genérico para


que todos possam entender!
Todos não entendem e raciocinam
da mesma forma!

 Cada receptor pode ter uma forma específica


de entender as instruções que recebe!
No ambiente computacional...
 Nós (programadores) instruímos máquinas
computacionais!

 Precisamos saber a forma que elas


entendem as instruções

 Os computadores tem uma linguagem para


se comunicar!

 Não é o Português!! E agora?


Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Em qual língua uma
máquina computacional
fala?

Prof. Eng. Luiz Gustavo


Instruindo máquina...
 Mas... Espera um pouco!!!
 Como vou instruir o computador? Ele me entende? Ele fala
português?
 Qual língua que o computador fala?

Calma, meu amigo!


O computador, infelizmente não fala em português. Na
verdade, ele não fala na língua dos seres humanos: inglês, português,
espanhol, francês, etc...
Ele fala em uma linguagem de máquina!
Entendendo esta língua...
Esta forma de comunicação utiliza apenas a presença ou ausência de corrente elétrica.
Para facilitar foram criados dois códigos:
Ausência de corrente elétrica (na verdade: nível lógico baixo- LOW) : 0 – zero
Presença de corrente elétrica (na verdade: nível lógico alto- HIGH) : 1 - um

A sequência destes códigos gera as instruções para a máquina

Ex: 000110101011.

Chamamos este tipo de linguagem com apenas dois códigos de linguagem binária.

Mas como faço para gerar esta sequência??

O que esta sequência significa?


Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
O que é um
compilador?

Prof. Eng. Luiz Gustavo


E agora? Como o Arduino vai me
entender? É simples! Imagine se você fosse enviado agora para outro país em que
não soubesse falar a língua daquele lugar.
O que você faria?

Precisamos da ajuda de mais um personagem: “COMPILADOR”.

Ele é um software (programa de computador) capaz de traduzir nossa


mensagem para a linguagem de máquina(00101011) que o Arduino entende.
Definição
Programa de computador que , a partir de um
código fonte escrito em uma linguagem compilada, cria
um programa sematicamente equivalente, porém
escrito em outra linguagem, código objeto.
Resumindo o processo de
comunicação com o Arduino
C/C++ 00111010
Exemplos:

VisualG

IDE Arduino
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
O que é linguagem
de programação?

Prof. Eng. Luiz Gustavo


Qual língua devo usar para
conversar com o compilador?
O compilador entende apenas o que chamamos
de Linguagem de programação.

Linguagem de programação é um método padronizado para


escrever instruções para uma máquina
Exemplos de linguagens de
programação
Existem diversos tipos : C, C/C++,PHP, HTML, java etc. Assim como na
nossa língua portuguesa existem regras, estas linguagens também
possuem.

Aplicada a
desenvolvimento web

Orientada a
Uma das linguagens mais objetos
utilizadas no mundo
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
O que é VISUALG?

Prof. Eng. Luiz Gustavo


O que é o visualg?

Editor e interpretador de
algoritmos escritos em Portugol.
Quem criou?
Por que foi criada?
Para facilitar o ensino de técnicas de elaboração de algoritmos

Para que a preocupação do programador esteja focada na lógica


da resolução dos problemas, e não na sintaxe !
Características da linguagem do
Visualg
Apenas um comando por linha

Não exige ponto e vírgula ao final de cada instrução

Não exige o uso de chaves { } para os blocos de comandos


Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Tipos básicos
de dados

Prof. Eng. Luiz Gustavo


Tipos primitivos
Inteiro
Real
Caracter
Lógico

Para entender vamos voltar ao


conceito de informação...
Informação
Informação é a matéria-prima que faz
necessária a existência de computadores

As máquinas são capazes de manipular e


armazenar grandes volumes de dados.

O homem fica livre para tarefas nas


quais o seu conhecimento é
indispensável
Exemplo de dado x Informação

21 de setembro É simplesmente um dado!

21 de setembro é o Estamos agregando valor ao dado data,

dia da árvore apresentando uma INFORMAÇÃO.


O computador manipula dados e
informações!

Os dados são essenciais para


construção de algoritmos!
Inteiro

Toda e qualquer informação numérica que pertença


ao conjunto dos números inteiros relativos
(negativo, nulo ou positivo)
Exemplos

8-> dado do tipo inteiro


Informação -> associar 8 como número de degraus da escada
Real

Toda e qualquer informação numérica que pertença


ao conjunto dos reais (negativo, nulo ou positivo).
Exemplo
Caracter

Toda e qualquer informação composta de um conjunto


de caracteres alfanuméricos: (0...9), alfabéticos
( A...Z, a...z) e especiais (por exemplo, #,?, !, @).
Exemplo
Lógico

Toda e qualquer informação que pode


assumir apenas 2 situações (biestável)
Exemplo
Constante

Dado que não sofre nenhuma variação no decorrer do


tempo. É constante do início ao fim do algoritmo
Observações a respeito de
constantes
 Dados constantes do tipo caracter deve ser delimitados
com aspas duplas “”
 Informações do tipo lógico poderão assumir um dos
seguintes valores constantes: verdade(V) ou
falsidade(F).
Para o ambiente computacional

Variável temos um conceito mais profundo para variável!


Iremos apresentar nas próximas aulas!

Recebe esta classificação quando tem a possibilidade de


ser alterado em algum instante no decorrer do tempo,
ou seja, durante o fluxo de execução do algoritmo.

O dado sofre alguma alteração ou é dependente da execução


em um certo momento ou circunstância.
Exemplo 1
Exemplo 2 r1²
r
r2²

r3²
Constante

r Variável
r4²
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
Conceito de variável
para o ambiente
computacional

Prof. Eng. Luiz Gustavo


Onde as informações são
armazenadas?
As informações variáveis são guardadas em dispositivos
eletrônicos analogamente chamados de memória.
Entendendo melhor...
Armário Memória

Gavetas Variáveis

Etiqueta ou rótulos Identificadores

Objetos dados
Declaração de variáveis
 É necessário definir nomes para determinadas gavetas
especificando qual tipo de objeto que podem ser
armazenados.

 Ou seja, declarar as variáveis que serão usadas para


identificar os dados.
Exemplos
Algumas considerações
TIPOS DE
EXPRESSÕES E
OPERADORES

Prof. Eng. Luiz Gustavo


Definições
Expressão aritmética é...
Operadores
Operadores aritméticos é...
Operadores
Exemplos
Expressão lógica
Operadores relacionais
 São utilizados para realizar comparações entre dois
valores de mesmo tipo primitivo.
Exemplos
Operadores Lógicos
Tabela da verdade
Exemplos
Apenas quando os termos
chover e relampejar forem
simultaneamente verdade

Em 3 possibilidades:
1. Somente chover
2. Somente relampejar
3. Chover e relampejar
Exemplos
Prioridades
Exemplos
EXERCÍCIOS RESOLVIDOS
Expressões e variáveis
Onde está o erro?

Prof. Eng. Luiz Gustavo


Exercício

D (inteiro) não
Deve possuir suporta B real
apenas um
identificador No lado esquerdo deve
possuir apenas o
identificador

B não é
lógico
COMANDO DE
ATRIBUIÇÃO

media_aluno

Prof. Eng. Luiz Gustavo


Conceito
 Um comando de atribuição permite-nos fornecer um
valor a uma variável (guardar o objeto em uma gaveta)

 O tipo de dado deve ser compatível com o tipo de


variável
Estes comandos atribuem às

Exemplos variáveis A,X e B, os valores


fornecidos à direita do
símbolo

À esquerda deve existir


apenas um identificador

Se existir uma expressão,


esta deve ser resolvida em
primeiro lugar, para que
depois o seu resultado possa
ser armazenado na variável
Uma variável pode ser utilizada diversas
vezes porém o seu conteúdo será do
último valor atribuído a ela. Ex: X = 2 Ex: A variável B, receberá
falsidade,
pois 5 não é igual a 3
COMANDOS DE
ENTRADA E SAÍDA
leia(a)
Escreva(“Digite seu nome:”)

Prof. Eng. Luiz Gustavo


Eles precisam de alimento...
 Os algoritmos precisam ser alimentados com dados
provenientes do meio externo (usuário, um
sensor, um botão etc) para que efetuem suas
operações e cálculos que são necessários a fim de
alcançar o resultado desejado.
Exemplificando
 Sistema respiratório
Entrada de ar
atmosférico

Respiração celular

Saída de CO2
Sinais elétricos do teclado

No computador correspondente a cada tecla

 Entrada, processamento e saída


de dados
Entrada de dados
Processamento dos sinais
elétricos, e comparação com
o padrão para verificar qual
tecla foi pressionada
Processamento de
dados

Saída de dados
Imagem do texto digitado
Entrada de dados
 Para o algoritmo receber os dados que necessita ele
precisa de um comando de entrada de dados,
denominado leia
 A finalidade deste comando é atribuir o dado a ser
fornecido à variável identificada.
Saída de dados
 Para o algoritmo possa mostrar os dados que calculou
ele precisa de um comando de saída de dados,
denominado escreva
 A finalidade deste comando é exibir o conteúdo da
variável ou um texto.
TELA VISUALG ENTRADA/SAÍDA DE
DADOS
Blocos de
comandos

Instrução dada:
Missão calculada!

Prof. Eng. Luiz Gustavo


Definição – Bloco de comandos é:

Conjunto de ações com


uma função definida
Exemplo
Importante!!

 Devem possuir limitadores marcando o início e o fim


Dica de ouro
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
EXERCÍCIOS
RESOLVIDOS
ENTRADA,
PROCESSAMENTO E
SAÍDA DE DADOS

Prof. Eng. Luiz Gustavo


Exercício
Solução – letra a
 Ler e sintetizar um livro
Escrever
Ler o texto

Entender

Saída de dados processados


Entrada de dados

Processamento de dados
Solução – letra b
 Diálogo
Ouvir as palavras Falar

Entender

Saída de dados processados


Entrada de dados

Processamento de dados
Outro exemplo
 Fazer um suco
Colocar frutas no liquidificador Suco no copo

Processar as frutas

Saída de dados processados


Entrada de dados

Processamento de dados
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
ESTRUTURAS DE
CONTROLE

Prof. Eng. Luiz Gustavo


Veja tudo que vimos até agora...
 Bloco lógico São muitos conceitos!!!
 Entrada e saída de dados
 Variáveis
 Constantes
 Atribuições
 Expressões lógicas, relacionais e aritmética
 Comandos que traduzam estes conceitos em ações
 Entre outros
Precisamos colocar tudo em ordem
agora!
 É necessário existir uma perfeita correlação lógica intrínseca entre o
modo pelo qual este conjunto de ações é executado, e o fluxo de
execução do algoritmo. Tudo deve estar
organizados no
Caos no trânsito trânsito!

Todas as instruções e
Código funcionando
características devem estar em
mas sem lógica
ordem no algoritmo!
Tipos de estruturas de controle
 Estrutura de sequenciação
 Estrutura de seleção
 Estrutura de repetição
 Combinação entre estas estruturas
Gostou do conteúdo?
 Curta, comente e compartilhe
 Prof. Eng. Luiz Gustavo
 Inscreva-se em nosso canal

 Email: LGUSTAVOSDP@YAHOO.COM.BR
 CANAL YOUTUBE: L GUSTAVO
ESTRUTURAS DE
CONTROLE
Sequencial

Prof. Eng. Luiz Gustavo


Definição – Estrutura sequencial

Na mesma ordem em que foram escritas.


Modelo
Exemplo
ESTRUTURAS DE
CONTROLE
Seleção

Prof. Eng. Luiz Gustavo


Definição – Estrutura de seleção
Tipos de estrutura de seleção
 Seleção simples
 Seleção composta
 Seleção encadeada
 Seleção encadeada heterogênea
 Seleção encadeada homogênea
 Seleção de múltipla escolha
Seleção simples
Seleção composta
Seleção encadeada heterogênea
Não tem um padrão lógico
Seleção encadeada homogênea
Segue um padrão lógico
Seleção de múltipla escolha

Facilita a construção do código


quando uma de várias ações
podem ser tomadas
mediante o resultado de uma
condição.
ESTRUTURAS DE
CONTROLE
Repetição

Prof. Eng. Luiz Gustavo


E agora?
 Se quiséssemos calcular a média de mais alunos?

Este algoritmo só
serve para 1 aluno

Se fossem 50
alunos, iríamos
repetir este
algoritmo 50 vezes!
Solução
Usaremos estruturas conhecidas por
de laços de repetição!
Enquanto
 Permite que um bloco de comandos seja executado
enquanto uma determinada <condição> estiver sendo
atendida (for verdadeira).
Quando a condição
se tornar falsa, o
comando de
repetição é
abandonado.

Primeiro a condição é
testada, caso
verdadeira, o bloco é
executado.
Atenção!

A estrutura enquanto não oferece recurso de contagem !

Devemos utilizar contadores!!


Dica importante!

Colocar imagem do relógio


Exemplo

Para o visualG, não


utiliza-se ponto-e-vírgula
E para calcular a média da turma?
 Iremos utilizar uma variável , normalmente conhecida
como acumulador, para ir somando as médias de
aluno para calcular a média da turma.
Outro exemplo
Calcular n médias

Estabelecer um
critério de parada

Quando MA for
igual a -1, o laço é
abandonado

Para o visualG, não


utiliza-se ponto-e-vírgula
Repita...até
A estrutura repita permite
que um bloco ou ação
primitiva seja repetido até
que uma determinada
condição seja verdadeira

Primeiro o bloco de comandos é


executado, e depois a inspeção
da condição é realizada

Para o visualG, não


utiliza-se ponto-e-vírgula
Exemplo
Repetição com variável de controle
Estrutura para

Lembra a função for utilizada no


Arduino
Exemplo

Vous aimerez peut-être aussi