Lógica de Programação Objetivo: Desenvolver algoritmos a partir de problemas • • • • • • • 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 Lógica de Programação 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. Lógica de Programação Lógica de Programação • Definição de Lógica 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 Lógica de Programação 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 de passos precisos e bem definidos. Lógica de Programação Lógica de Programação • Definição de Algoritmo Problema!!! Objetivo Claras e Precisas Ações Conclusão Lógica de Programação Processo com n° de Passos Finito 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. Lógica de Programação 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. Lógica de Programação 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. Lógica de Programação Lógica de Programação • Diagrama de Blocos e Portugol Simbolo Lógica de Programação 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. Lógica de Programação • Diagrama de Blocos e Portugol Símbolo Lógica de Programação 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 Lógica de Programação • Diagrama de Blocos e Portugol 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. Lógica de Programação 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: Lógica de Programação Lógica de Programação • Portugol: Estrutura da Linguagem programa ........ const .... var ....... Inicio ........ ......... fim Lógica de Programação 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 Lógica de Programação • Portugol: Estrutura da Linguagem 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 Lógica de Programação A = p x R2 Lógica de Programação • Exemplos de Diagramas x Portugol Adição de dois valores inteiros. Lógica de Programação Lógica de Programação • Exemplos de Diagramas x Portugol Uso do condicional. Lógica de Programação Lógica de Programação • Exemplos de Diagramas x Portugol Uso do condicional. Lógica de Programação se...então.....senão. Lógica de Programação • Exemplos de Diagramas x Portugol Uso do condicional. Uso do operador lógico Lógica de Programação Lógica de Programação • Exemplos de Diagramas x Portugol Uso do condicional. Uso do operador lógico Lógica de Programação Lógica de Programação • Exemplos de Diagramas x Portugol Loop condicional Lógica de Programação Lógica de Programação • Exemplos de Diagramas x Portugol Loop incondicional Lógica de Programação Lógica de Programação • Conclusões Todos os exemplos acima foram extraídos do livro do Mazano e serão cobrados posteriormente como exercícios utilizando a linguagem C de acordo com o momento necessário. O desenvolvimento em portugol está representados apenas para fim didático para que o aluno verifique como se escreve um programa em linguagem estruturada. Lógica de Programação Lógica de Programação Lógica de Programação