definição de lógica definição de algoritmo algoritmo x ... · É uma linguagem de...
TRANSCRIPT
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Definição de Lógica • Definição de Algoritmo • Algoritmo x Lógica • Diagrama de Blocos e Portugol • Portugol: Estrutura da Linguagem • Exemplos de Diagramas x Portugol • Conclusões
Objetivo: Desenvolver algoritmos a partir de problemas
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Definição de Lógica
O que é Lógica?
A lógica não possui uma definição específica.
Inicialmente era ligada à matemática (lógica formal) e atualmente está relacionada a todas as áreas do conhecimento humano.
Com o desenvolvimento da Ciência da Computação, necessidade da linguagem de programação, a aplicação do raciocínio lógico passou a ser muito importante nesta área.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
A lógica formal nem sempre está relacionada ao bom senso. Veja os argumentos abaixo.
Penso, logo existo.
Amarelo é uma cor,
Japonês tem uma cor,
Portanto japonês é amarelo
• Definição de Lógica
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Definição de Algoritmo
O que é Algoritmo?
Também há muitas definições, mas o algoritmo consiste no processo de resolução de um problema com número finito de passos precisos e bem definidos.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Definição de Algoritmo
Problema!!!
Objetivo
Ações
Conclusão
Claras e Precisas
Processo com n° de Passos Finito
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Algoritmo x Lógica
A reunião destes conceitos possibilita o uso fiel do raciocínio lógico na programação.
O algoritmo corretamente desenvolvido permite sua aplicação em qualquer linguagem de programação.
Os algoritmos podem ser gráficos ou textuais.
Algoritmos gráficos são auto explicativos e de fácil compreensão.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Algoritmo x Lógica
Algoritmos textuais são desenvolvidos em linguagem formal estruturada e no idioma do desenvolvedor para que seja de fácil compreensão.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Diagrama de Blocos e Portugol
A tabela apresentada abaixo refere-se ao diagrama de blocos de acordo com a norma internacional ISO 5807:1985 (E). Além disso, será apresentado o comando em portugol (denominação dada por Guimarães & Lages), linguagem de programação regional escrita em português para ensino de programação estruturada.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Diagrama de Blocos e Portugol
Símbolo Comando em Portugol
Descrição
Inicio/ fim
Terminal: indica inicio ou fim de um programa
leia a,b Escreva b, “texto”
Entrada/Saída: qualquer função de um dispositivo de entrada ou saída
leia a,b
Entrada manual: Normalmente é entrada via teclado
aab+c Processamento: qualquer função que indica uma ação. Ex: atribição, incremento, cálculos matemáticos.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
Símbolo Comando em Portugol
Descrição
Escreva a,”texto”
Saída de monitor: indica que a saída de dados é via monitor
Se x=10 então .......... senão ............ fim_se
Condicional: verifica se uma operação é satisfeita. Único símbolo (operação) que permite duas saídas.
para i de 1 até 5 faça ........... Fim_para
Preparação: indica a preparação para um laço de repetição incondicional
• Diagrama de Blocos e Portugol
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
Símbolo Comando em Portugol
Descrição
Conexão: uma entrada ou uma saída de ou para uma outra parte do dagrama.
Sentido do fluxo: é a interligação entre os blocos indicando o sentido de processamento.
• Diagrama de Blocos e Portugol
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Portugol: Estrutura da Linguagem
É uma linguagem de programação estruturada, com comandos em português .
Caracteriza-se por ser uma linguagem formal, sem ambiguidades, para que se possa definir exatamente a tarefa a ser desenvolvida.
Veremos como é a estrutura básica da linguagem:
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Portugol: Estrutura da Linguagem
programa ........
const
....
var
.......
Inicio
........
.........
fim
Escreve-se o nome do programa
Identifica-se a constante e seu valor
Identifica-se a variável e seu tipo
Bloco de programação onde são colocados os comandos a serem executados
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
Desenvolva um programa em que o usuário o raio e mesmo calcule a área do círculo correspondente
programa Area_do_Circulo const pi = 3.14159265 var A: real R: real Inicio leia R Aapi*R^2 Escreva A fim
A = p x R2
• Portugol: Estrutura da Linguagem
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol Adição de dois valores inteiros.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Uso do condicional.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Uso do condicional. se...então.....senão.
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Uso do condicional. Uso do operador lógico
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Uso do condicional. Uso do operador lógico
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Loop condicional
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Exemplos de Diagramas x Portugol
Loop incondicional
Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
• Conclusões
Todos os exemplos acima foram extraídos do livro do Manzano e serão cobrados posteriormente como exercícios utilizando a linguagem C de acordo com o momento necessário.
O desenvolvimento em portugol está representado apenas para fim didático para que o aluno verifique como se escreve um programa em linguagem estruturada.