Linguagem de Programação Estruturada Linguagem de Programação I – Organizar Seqüência Lógica II – Estruturar Algoritmo III – Refinar Algoritmo IV - Conhecer Formas de Representação V - Conceitos de Variáveis VI - Declaração de Variáveis VII – Expressões Aritméticas VIII – Estruturas de Controle Linguagem de Programação Estruturada LÓGICA •Usamos a lógica para ordenar e corrigir pensamentos ou ações voltadas para a solução de problemas. •Seqüência – embora as ações estejam corretas, se a seqüência estiver errada não será possível realizar as ações. Colocar na seqüência: Ir de táxi para reunião Seqüência original: Colocar na seqüência: a) b) c) d) e) f) g) h) 1) 2) 3) 4) 5) 6) 7) 8) Entrar no prédio da reunião. Sair do táxi. Perguntar o preço da corrida. Acenar para que o táxi pare Informar o destino ao motorista. Esperar o táxi. Pagar a corrida. Entrar no táxi. Linguagem de Programação Estruturada LÓGICA Coerência de raciocínio, com seqüência e regularidade nos acontecimentos. Ex.: Se 3 < 5 E 7>5 Logo, 3 < 7 Se chove, não precisa molhar as plantas. Hoje choveu. Logo, não preciso molhar as plantas. Brasil fica na América do Sul. América do Sul fica no continente Americano. Logo, os brasileiros são sulamericanos Linguagem de Programação Estruturada LÓGICA de PROGRAMAÇÃO Contextualiza a lógica na programação de computadores, buscando a melhor seqüência de ações para solucionar o problema. Passos: • Entender o problema. • Verificar dados disponíveis. • Dividir em partes. • Definir o objetivo. Qual o resultado que se deseja alcançar Seqüência de ações = algoritmo. Ação é a modificação de um estado para outro. O que preciso? Como chego lá? O que quero? Entrada Processamento Saída entrada processamento saída Linguagem de Programação Estruturada Ações Primitivas – não se pode mais refiná-las. Ex.: Entrar no táxi. Esperar o táxi estacionar. Abrir a porta. Entrar no carro. Sentar no banco. Fechar a porta. Fim Entrar no táxi. Representações: Pseudocódigo – Portugol – Português Estruturado Fluxograma – representação para descrever algoritmos pequenos e médios. Linguagem de Programação Estruturada A função do Computador é manipular e armazenar um grande volume de dados com alta performance. CONSTANTES: Quando um dado não sofre nenhuma variação no decorrer do tempo (do início ao fim da execução). Representado entre aspas para delimitar e diferenciar. VARIÁVEIS: Um dado é Classificado como variável quando pode ser alterado durante a execução do algoritmo. Linguagem de Programação Estruturada A função do Computador é manipular e armazenar um grande volume de dados com alta performance. As variáveis (dados) são guardadas na memoria e para diferenciar usamos identificadores ou rótulos. Cada Variável pode guardar apenas um dado de cada vez, sempre do mesmo tipo primitivo. ex: varNome = Rita varNome Ana O conteúdo anterior se perde e a varNome vai conter o nome Ana. Ex: inteiro: Ind; Ind “Amarelo”; Vai dar erro um campo numérico não aceita caracter. Linguagem de Programação Estruturada São 4 os tipos primitivos: INTEIRO: Dado numérico pertencente ao conjunto dos números inteiros. Ex: REAL: Dado numérico pertencente ao conjunto dos números reais. CARACTER: dados composto de conjunto de caracteres alfanuméricos: numérico (0..9); alfabético (A..Z, a..z) e especiais (%, $, #, @,...) LÓGICO: Qualquer informação que possua apenas 2 situações: (SIM/NÃO), (V/F), (0,1). Linguagem de Programação Estruturada Tipos de Dados: Existem três tipos básicos de dados que iremos manipular nos algoritmos que iremos criar: Dados numéricos Dados literais ou alfabéticos Dados lógicos: podem assumir dois valores: verdadeiro e falso. aplicado durante o processo de tomada de decisões do computador. Linguagem de Programação Estruturada Variáveis: numéricas literais ou alfanuméricas alfabéticas lógicas (V / F) pic 9. pic X. pic A. pic X. Linguagem de Programação Estruturada Variáveis Identificadores – indica o que está sendo armazenado. o nome deve facilitar a associação ao conteúdo. Variáveis – cada variável pode conter apenas 1 valor. Quando mais de um valor é inserido, o valor antigo é substituído pelo valor recente. Tipos de Variáveis – declarar as variáveis utilizadas para que o computador reserve um espaço na memória para cada uma. Nomes de Variáveis – • 1 ou mais caracteres • iniciar com letras • da 2ª posição em diante utilizar apenas: letras, números e hífen (entre letras( - )). Linguagem de Programação Estruturada Exercício: Declarar as variáveis para o cadastramento dos alunos com nome completo do aluno, o número da matrícula, o sexo, RG, a data de nascimento, o endereço do aluno, o curso, informações para contato como telefone, e-mail, indicar se é aluno novo. Linguagem de Programação Estruturada Comentários – são necessários para a maior clareza do programa. Ex.: Nome: alfanumérico {nome do aluno} ... Modulo-verificador-digito { valida o nº do CPF} Atribuição – armazena uma constante em uma variável. Atribui valor / conteúdo a variável. Ex.: Dt-nasc 23012000 Move 23012000 to Dt-nasc Linguagem de Programação Estruturada Expressões Aritméticas: A = 2; B = 6; C = 0 adição: + ou add Add A to B Add A to B giving C (C = 8) (C = 8) subtração: - ou subtract Subtract A from B Subtract A from B giving C (B = 4) (C = 4) multiplicação: * ou multiply Multiply A by B giving C (C = 12) divisão: / ou divide Divide B by A giving C (C = 3) Divide A from B giving C (C = 3) compute: Compute Média = (nota1 + nota2) / 2 Linguagem de Programação Estruturada Exemplo 1: ADD ADD VALOR1 VALOR2 VALOR3 GIVING VALOR4 Antes da instrução ADD Depois da instrução ADD VALOR1 VALOR2 VALOR3 VALOR4 2 2 4 4 6 6 15 Exemplo 2: ADD VALOR1 VALOR2 VALOR3 TO VALOR4 Antes da instrução ADD Depois da instrução ADD VALOR1 VALOR2 VALOR3 VALOR4 2 2 4 4 6 6 15 Linguagem de Programação Estruturada Multiply Exemplo 1: Multiply VALOR1 BY VALOR2 GIVING VALOR3 Antes da instrução Multiply Depois da instrução Multiply VALOR1 VALOR2 VALOR3 2 2 4 4 6 Exemplo 2: Multiply VALOR1 TO VALOR2 Antes da instrução Multiply Depois da instrução Multiply VALOR1 VALOR2 2 2 4 Linguagem de Programação Estruturada Exemplo 1: SUBTRACT SUBTRACT 15,40 TAXA TOTAL FROM VALOR Antes da instrução SUBTRACT Depois da instrução SUBTRACT TAXA TOTAL VALOR 30 30 10 10 100 44,60 Exemplo 2: SUBTRACT 15,40 TAXA TOTAL FROM VALOR GIVING LIQUIDO Antes da instrução SUBTRACT Depois da instrução SUBTRACT TAXA TOTAL VALOR LIQUIDO 30 30 10 10 100 100 87,00 44,60 Linguagem de Programação Estruturada Operadores Relacionais Usados para comparar 2 valores de mesmo tipo primitivo. O resultado obtido é sempre um valor Lógico (V / F). Símbolos Texto < Less Then > Greater Then = Equal <= Not Greater >= Not Less Not Equal Ex: 1) 2 + 4 = 24/3 2) 25/5 < 21/3 3) 6² >= 4 + 4 + 4 + 10 Linguagem de Programação Estruturada Operadores Lógicos Usados para comparar 2 valores de mesmo tipo primitivo. O resultado obtido é sempre um valor Lógico (V / F). Símbolos Texto ~ NOT (Negação) ^ AND (Conjunção) E v OR (Disjunção) OU Ex: 1) 2 < 5 ^ 15/3 = 5 2) F v 9/3 < 12-2 3) ~V v 3 < 5 Linguagem de Programação Estruturada Prioridades entre Operações 1º - parenteses 2º - multiplicação, divisão 3º - soma, subtração 4º - ~, ^, v Ex.: 2 + 10 / 2 < > 1) 5 + 9 * 7 + 8/4 (2 + 10) / 2 2) 1 – 4 * 3/6 – 9 3) (4 + 5) + (6 – 2 + (3 – 1)) Linguagem de Programação Estruturada Estruturas de Controle - Seqüencial ou Linear - possui fluxo único de execução dos comandos INICIO perform leitura Perform calculo Perform Impressão Leia Aluno, Nota1, Nota2 Calcula Média Imprime Média FIM Linguagem de Programação Estruturada Estruturas de Controle - Condicional Controlam o fluxo de execução dos comandos. Condicional ou Decisão: Simples – possui apenas 1 opção – V If média > = 5 then “aprovado”. Composto – possui mais de 1 opção – V e F If média > = 5 then “aprovado” else “reprovado”. Linguagem de Programação Estruturada Estruturas de Controle Simples - Condicional Composto INICIO INICIO Media >= 5 S Aluno “aprovado” FIM Media >= 5 Aluno “reprovado” Aluno “aprovado” FIM Linguagem de Programação Estruturada Estruturas de Controle - Condicional Encadeamento ou ninho de IFs INICIO Ler Média Media > 5 S Acima N Media = 5 S Média N Media < 5 S Abaixo “Media =” media FIM Linguagem de Programação Estruturada Estruturas de Controle - Repetição Controlam a repetição dos comandos. Para determinarmos a estrutura mais adequada precisamos saber: o nº de vezes que ocorre – Laço Contado - FOR – Para A condição de fim – Laço Condicional - WHILE - Enquanto UNTIL – Até que Linguagem de Programação Estruturada Estruturas de Controle - Repetição INICIO Laço Condicional: WHILE Enquanto faça Fim-Enquanto While time < 12:00 perform Aula < 12:00h S Assiste Aula FIM N Linguagem de Programação Estruturada Estruturas de Controle - Repetição INICIO Laço Condicional: Do Until – Repita ... Até que Coloca moedas N PERFORM trata-data UNTILdata = 0. PERFORM media-anual varying mês from 1 by 1 UNTIL mês = 12. Cofrinho cheio S FIM Linguagem de Programação Estruturada Estruturas de Controle - Repetição INICIO Laço Condicional: For Para Faça Fim-Para Tot-provas De 1 a 20 S Corrige Prova FIM N Linguagem de Programação Estruturada Estruturas de dados Conjunto de informações que têm o mesmo nome e o mesmo tipo primitivo de dados. Referenciados por índices. Vetor – 1 índice. Índice – valor numérico, inteiro, positivo que corresponde ao endereço de alocação de uma unidade do Vetor e da Matriz. Elemento – é o conteúdo armazenado em determinado endereço. Dimensão – é o número de índices necessários para a localização de um elemento.