Escolar Documentos
Profissional Documentos
Cultura Documentos
Semana 02
Algoritmos e Lógica de Programação
2
Lógica de programação
3
Lógica de programação
▪ Lógica, ciência dos princípios formais do raciocínio.
○ estuda as leis e os critérios de validade que regem o
pensamento e a demonstração, ou seja, ciência dos princípios
formais do raciocínio
5
Descrição Gráfica:
Norma internacional ISO
5807:1985 (E)
6
Norma internacional ISO 5807
▪ Define símbolos a serem usados na documentação de
processamento de informações e orienta sobre convenções para
seu uso em fluxogramas de dados, fluxogramas de programas,
fluxogramas de sistema, gráficos de rede de programas, gráficos de
recursos do sistema.
▪ Os símbolos gráficos permitem demonstrar de forma padronizada a
linha de raciocínio lógico utilizada em um programador de
computador.
Norma internacional ISO 5807
Principais regras para uso da norma
▪ somente use rótulos quando necessário
▪ conecte os símbolos uns aos outros por linhas de setas mostrando a
direção do fluxo a ser executado pelo programa.
▪ orientar no sentido de cima para baixo, da direita para a esquerda e
ser desenhada no centro da folha de papel.
▪ uso o símbolo "terminal" para definir inicialização e finalização de
um diagrama, usando os rótulos: início, fim, retorno; ou a definição
de um nome particular, quando for necessário
▪ quando houver mais de uma variável a ser utilizada, serão
separadas por vírgulas.
▪ as operações de processamento matemático e lógico estarão
definidas com o símbolo "processamento".
Principais regras para uso da norma
▪ use o símbolo de processamento como curinga para representar
qualquer ação definida ou não, desde que a operação seja
devidamente identificada por um rótulo descritivo.
○ Exceções aos símbolos "decisão" e "preparação", que
representam operações bem definidas e não devem, em
hipótese nenhuma, ser substituídos por qualquer outro
símbolo.
▪ O símbolo terminal só pode ser usado duas vezes dentro de cada
programa ou programa de subrotina. Em nenhuma hipótese este
símbolo pode ser usado mais de duas vezes.
Diagrama de Blocos
▪ Representação gráfica baseada nos símbolos da Norma ISO 5807
▪ Usado para representar a implementação genérica de um programa
○ Também chamado de fluxograma de programa
▪ Não confundir com fluxograma de sistema que é usado
comumente para representar processos mais gerais e, logo, menos
detalhados
Diagrama de blocos, exemplo (1)
Diagrama de blocos, exemplo (2)
Diagrama de blocos, exemplo (3)
Linguagens de Projeto de
Programação
15
Ling. de Projeto de Programação (LPP)
▪ LPP é um pseudocódigo ou linguagem de especificação .
○ possibilita, num primeiro momento, rapidez na escrita do
projeto de código
▪ LPP possui como característica o regionalismo.
○ ex.: português estruturado
▪ LPP, forma preliminar de escrever um programa sem preocupar-se
com o rigor da linguagem real (linguagem formal) a ser utilizada.
○ não pode e não deve ter o mesmo rigor sintático que possui
uma linguagem de programação formal
16
Comandos do Português Estruturado
17
https://sites.google.com/site/proffernandodesiqueira/disciplinas/administracao-de-redes-linux/aula-2---analise-e-resolucao-de-problemas?tmpl=%2Fsystem%2Fapp%2Ftemplates%2Fprint%2F&showPrintDialog=1
Comandos do Português Estruturado
18
https://sites.google.com/site/proffernandodesiqueira/disciplinas/administracao-de-redes-linux/aula-2---analise-e-resolucao-de-problemas?tmpl=%2Fsystem%2Fapp%2Ftemplates%2Fprint%2F&showPrintDialog=1
Ferramentas de trabalho
19
Ferramentas de trabalho
▪ Secretárias, estudantes, escritores e demais profissionais para
escrever podem usar processadores de textos.
▪ Contadores, engenheiros, economistas, físicos, químicos,
matemáticos podem usar planilhas eletrônicas.
▪ Programadores e desenvolvedores de software usam, editores de
texto, compiladores, interpretadores e tradutores.
20
Ferramentas de trabalho
▪ Editor de Texto
▪ Usado para escrever um programa:
▪ MS-Windows – Bloco de notas;
▪ UNIX/Linux – VI;
▪ Mac OS X – TextMate.
▪ Tradutor
▪ Usado para traduzir um programa escrito em uma linguagem de alto nível
para uma outra linguagem de alto nível.
21
Compilador vs. Interpretador
▪ Interpretador
▪ Usado para executar um programa diretamente na memória sem efetuar a
compilação.
▪ Compilador
▪ Usado para traduzir um programa fonte em programa executável, o
compilador deve ser específico para a linguagem a ser usada.
22
Compilador vs. Interpretador
Interpretador Compilador
▪ Vantagens ▪ Vantagens
▪ início imediato da execução do ▪ execução do programa é mais
programa rápida
▪ programa executado linha a linha, ▪ uma vez compilado, o programa
facilita correção de erros não depende mais do compilador
▪ Desvantagens ▪ Desvantagem
▪ a execução é em geral mais lenta ▪ o tempo para executar o programa
▪ código fonte deve ser pode ser mais longo
disponibilizado para o usuário
23
Aho, A. V., Sethi, R., & Ullman, J. D. (2020). Compilers, principles, techniques, and tools.
Compilador vs. Interpretador
Código fonte:
Código fonte: MeuPrograma
MeuPrograma
Compilador
Entrada Interpretador
Entrada MeuPrograma
Saída
Saída
24
Aho, A. V., Sethi, R., & Ullman, J. D. (2020). Compilers, principles, techniques, and tools.
Linguagem Java: compilador híbrido
Código fonte:
MeuPrograma
Compilador
Entrada
Código Interpretador
Intermediário (Máquina Virtual)
Saída
Multiplataforma
25
Aho, A. V., Sethi, R., & Ullman, J. D. (2020). Compilers, principles, techniques, and tools.
Ações do programador
26
Ações do programador
▪ O programador, deve executar como etapas de ação as seguintes
atividades:
▪ entendimento (exercício mental);
▪ diagramação (desenho, segundo norma ISO 5807);
▪ codificação (escrita do programa em LPP).
27
Exercícios
28
O que faz esse programa ? (1)
29
O que faz esse programa ? (1)
Resposta:
30
O que faz esse programa ? (2)
31
O que faz esse programa ? (2)
Resposta:
32
Obrigado!
33