Você está na página 1de 33

Introdução à Computação

Semana 02
Algoritmos e Lógica de Programação

Prof.: Michel Mozinho dos Santos


Contato: michelsantos@recife.ifpe.edu.br 1
Sumário
▪ Lógica de programação
▪ Norma internacional ISO 5807:1985 (E)
▪ Linguagem de Projeto de Programação
▪ Ferramentas de trabalho
▪ Ações do programador

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

▪ Lógica de programação, atividade baseada no projeto lógico de um


programa.
○ objetiva o estabelecimento de uma sequência organizada de
passos que serão executados por um computador, na forma de
um programa.
○ É necessário modelar o pensar ao modo funcional de um
computador eletrônico, baseando-se em sua arquitetura. 4
Lógica de programação
▪ As ideias da programação de
computadores vêm das ideias
estudadas e apresentadas por
Charles Babbage com a máquina
analítica e da forma de
programação idealizada por sua
assistente, Ada Augusta Byron King,
Condessa de Lovelace.

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:

Faz a entrada do nome de uma pessoa e de


seu sexo, em seguida apresenta os dados
anteriormente informados.

30
O que faz esse programa ? (2)

31
O que faz esse programa ? (2)
Resposta:

Recebe um tamanho de raio, calcula a área da


circunferência e apresenta a área calculada.

32
Obrigado!

33

Você também pode gostar