Lógica de
programação
Sistemas Eletrônicos Digitais
–
SELDI
Conteúdo da aula
1. Introdução
2. Algoritmo
3. Fluxograma
4. Variáveis e constantes
5. Operadores
Lógica de programação
“É a técnica de encadear pensamentos para atingir um determinado objetivo”
Como fazer isso? Algoritmo
“Sequência de ações que permite solucionar um determinado problema”
Quais são os passos necessários para se trocar uma lâmpada queimada?
1 – Comprar uma lâmpada nova 2 – Pegar uma escada
3 – Desligar o interruptor 4 – Pegar a lâmpada nova 5 – Subir na escada
6 – Remover a lâmpada queimada 7 – Instalar a lâmpada nova
8 – Descer da escada
9 – Descartar a lâmpada queimada
–
Somar dois números quaisquer
1 – Escrever o primeiro número no espaço A 2 – Escrever o segundo número do espaço B 3 – Somar o número em A com o número em B 4 – Colocar o resultado da soma no espaço C
_____ + _____ = _____
A B C
Processo básico se um algoritmo
Entrada de dados
Processamento de dados
Saída de dados
Diagrama de blocos
Forma padronizada, organizada e eficaz para representar os passos lógicos de um determinado processamento
Facilita a visualização dos passos de um processamento
Símbolos básicos:
Obs.: a utilização foi resumida para os propósitos desta disciplina
Fluxograma
Simbologia Função
Início ou fim de um processamento (programa ou subprograma
Processamento geral. Neste curso, será usado também para entrada ou saída de dados
Exemplo:
Chupar uma bala
Exemplo:
Média de 4 números
“Espaços de memória reservados para armazenar um tipo específico de dado”
Constante: Espaço de memória com valor fixo ao longo da execução do
programa
Variável: Espaço de memória com valor que pode ser alterado ao longo da
execução do programa
Exemplo: Programa que calcula a média entre 5 números: N1, N2, N3, N4 e N5.
Constante: 5
Variáveis: N1, N2, N3, N4 e N5
Tipos de dados em variáveis ou constantes
Numérico: Inteiros ou reais, podendo ser usado para cálculos matemáticos;
Caractere: Símbolos que não contém números, como nomes;
Alfanumérico: combinação de números e letras, podendo conter só letras ou só
números, mas não pode executar operações matemáticas;
Lógica: Verdadeiro ou falso
Obs.: Um conjunto de caracteres é chamado de string
Operadores aritméticos
Usados para obtenção de dados numéricos
Operadores relacionais
Usados para comparações (decisões), retornando valores lógicos
Operadores
Símbolo Descrição
= Igual
Operadores relacionais
Exemplo: Se A = 4 e B = 2
Operadores
Expressão Resultado
A = B Falso A <> B Verdadeiro
Operador relacional
Usado para tomada de decisões
Operadores
Internet não funciona
Conexão caiu? Reconectar
Verificar as condições da rede
móvel
Pacote de dados
Operadores lógicos
Usados para operações booleanas
Operadores
Expressões Resultado
Operadores lógicos
Exemplo: A = 5, B = 8 e C = 1
Operadores
Expressões Resultado
A = B AND B > C Falso A <> B OR B < C Verdadeiro
NOT A > B Verdadeiro A < B AND B > C Verdadeiro A >= B OR B = C Falso
Estruturas de decisão
“SE x ENTÃO y” “IF x THEN y”
Exemplo de algoritmo:
1 – SE o aluno tiver média maior que 5.0 2 – ENTÃO o aluno está aprovado
Estruturas de decisão
“SE x ENTÃO y SENÃO z” “IF x THEN y ELSE z”
Exemplo de algoritmo:
1 – SE o aluno tiver média maior que 5.0 2 – ENTÃO o aluno está aprovado
3 – SENÃO o aluno está reprovado
Estruturas de decisão
“SE x ENTÃO y SENÃO z” “IF x THEN y ELSE z”
Mais um exemplo de algoritmo:
1 – SE o aluno tiver média maior que 5.0 2 – ENTÃO faça:
3 – SE sua nota for maior ou igual a 7 4 – ENTÃO o aluno está aprovado
5 – SENÃO o aluno deve fazer recuperação 6 – SENÃO o aluno está reprovado
Estruturas de decisão
“CASO x SELECIONE y” “SELECT y CASE x”
Exemplo de algoritmo:
Em um menu de opções
1 – CASO pressionar a “tecla 1” 2 – FAÇA “opção 1”
3 – CASO pressionar a “tecla 2” 4 – FAÇA “opção 2”
5 – ...
Estruturas de repetição
“ENQUANTO x PROCESSAR y” “DO y WHILE x LOOP”
Estruturas de repetição
“ENQUANTO x PROCESSAR y” “DO y WHILE x LOOP”
Exemplo: Contador
Estruturas de repetição
“ATÉ QUE x PROCESSAR y” “DO y UNTIL x LOOP”
Estruturas de repetição
“ATÉ QUE x PROCESSAR y” “DO y UNTIL x LOOP”
Exemplo: Contador
Estruturas de repetição
“PROCESSAR x ENQUANTO y” “DO x WHILE y LOOP”
Estruturas de repetição
“PROCESSAR x ENQUANTO y” “DO x WHILE y LOOP”
Exemplo: Contador
Estruturas de repetição
“PROCESSAR x ATÉ QUE y” “DO x UNTIL y LOOP”
Estruturas de repetição
“PROCESSAR x ATÉ QUE y” “DO x UNTIL y LOOP”
Exemplo: Contador
1. Considere o processo de cálculo da média final da disciplina, considerando-se que existem 4 provas (P1, P2, P3 e P4).
a) Quais são os dados de entrada?
b) Qual processamento deve ser realizado? c) Quais serão os dados de saída?
2. Considere um processo de movimentação em uma esteira composta por um motor que inicia seu funcionamento quando identificar um produto no ponto inicial (sensor S1), parando de funcionar quando o produto chegar ao fim da esteira (sensor S2).
a) Quais são os dados de entrada?
b) Qual processamento deve ser realizado? c) Quais serão os dados de saída?
3. Construa um fluxograma para o algoritmo de “trocar uma lâmpada”.
4. Construa um fluxograma para o algoritmo do exercício 1.
5. Construa um fluxograma para o seguinte algoritmo:
1 – Ler 2 números;
2 – Calcular o quadrado de cada um; 3 – Somar os resultados;
4 – Extrair a raiz quadrada da soma; 5 – Mostrar o resultado.
6. O que é uma constante? E uma variável? Dê dois exemplos de cada.
7. Sabendo-se que José tem direito a 15% de reajuste de salário, complete o diagrama abaixo:
8. Sabendo que A = 4, B = 3 e C = 8, assinale V para verdadeiro ou F para falso:
a) A + C > B [ ]
b) B >= A + 2 [ ]
c) C = B – A [ ]
d) C + A > B [ ]
e) (A > C) AND (C <= D) [ ] f) ((A + B) > 10) OR ((A + B) = (C + D)) [ ] g) (A >= C) AND (D >= C) [ ]
9. Elabore um diagrama de blocos que leia um número. Se ele for positivo, armazenar em A e, se for negativo, em B. Ao fim, mostre o resultado.
10. Elabore um diagrama de blocos de um contador de 0 a 1.000.000.
11. Elabore um diagrama de blocos de um menu de opções para um programa a ser exibido na tela do display de uma IHM. As seguintes opções e funções são:
1 – “Horário” Define sentido de giro horário
2 – “Anti-Horário” Define sentido de giro anti-horário
3 – “10%” Aciona motor com rotação de 10% da nominal 4 – “40%” Aciona motor com rotação de 40% da nominal
Dúvidas?
“Eu não posso mudar a direção do vento,
mas eu posso ajustar as minhas velas
para sempre alcançar o meu destino.”
Jimmy Dean
Referências:
1. SENAI.Serviço Nacional de Aprendizagem Industrial. Sistemas eletrônicos: Manutenção. Senai-SP Editora, 2014.