Algoritmo e Estrutura de Dados Profa. Dra. Joyce Martins Mendes Battaglia Mini- Curriculo O Bacharel em Ciência da Computação – Universidade Ibirapuera O Mestre e doutora em Eng. Elétrica – USP O Professora /Coordenadora O Pesquisadora - USP Avaliação O Prova – 7,0 O ATPS – 3,0 O que estudaremos??? O que é preciso para ter um bom raciocínio lógico? O Gostar de problemas lógicos O Gostar de aprender e estudar constantemente O Gostar de ler (e estudar constantemente) O Saber buscar as informações (para estudar constantemente) Exemplo: Trocar o pneu de um carro 1. Retirar o estepe 2. Retirar o macaco 3. Soltar os parafusos do pneu 4. Colocar o macaco 5. Subir o carro 6. Retirar os parafusos 7. Retirar o pneu 8. Colocar o pneu novo 9. Colocar os parafusos 10.Baixar o carro 11.Guardar o pneu velho e o macaco Trocar uma lâmpada 1. Desligar a energia 2. Buscar a escada 3. Subir na escada 4. Retirar a lâmpada estragada 5. Colocar a lâmpada nova 6. Descer da escada 7. Ligar a energia 8. Testar a lâmpada 9. Retirar a escada 10.Guardar a escada Fritar um ovo Solução 1. 2. 3. 4. 5. 6. 7. Pegue o ovo, a manteiga (óleo), o sal e a frigideira; Coloque a frigideira sob o acendedor do fogão; Acenda o fogo do acendedor; Coloque a manteiga na frigideira e espere ela derreter; Quebre o ovo e coloque a clara e a gema do mesmo na frigideira; Adicione uma pitada de sal no ovo; Espere terminar de fritar para em seguida desligar o fogo. Exemplo prático O SOMA DE DOIS NÚMEROS Exemplo Enunciado: Faça um algoritmo que peça dois números. Em seguida faça a soma dos mesmos. Ao final mostre o resultado da soma. Estrutura de um algoritmo O Ler atentamente o enunciado do problema, compreendendo-o e destacando os pontos mais importantes; Estrutura de um algoritmo ENTRADA O Definir os dados de entrada, ou seja, quais dados serão fornecidos; Estrutura de um algoritmo PROCESSAMENTO O Definir o processamento, ou seja, quais cálculos serão efetuados e quais as restrições para esses cálculos. O O processamento é responsável pela obtenção dos dados de saída com base nos dados de entrada; Estrutura de um algoritmo SAÍDA O Definir a saída O definir as variáveis necessárias para armazenar as entradas e efetuar o processamento; Entrada? Processamento? Saída? Faça um algoritmo que peça dois números. Em seguida faça a soma dos mesmos. Ao final mostre o resultado da soma. Faça um algoritmo que Entrada peça dois números. Em seguida faça a soma dos mesmos. Ao final mostre o resultado da soma. Faça um algoritmo que peça dois Em seguida faça a soma dos mesmos. Ao Processamento números. final mostre o resultado da soma. Faça um algoritmo que peça dois números. Em seguida faça a somaSaída dos mesmos. Ao final mostre o resultado da soma. ENTRADA escreva(" Digite o primeiro número:") leia (n1) escreval(" Digite o segundo número: ") leia (n2) Processamento O soma <- n1+n2 Saída O escreval("A soma dos números é ",soma) Algoritmo O O que é Algoritmo? É a forma de expressarmos nosso raciocínio lógico. O Ferramenta? VisualG algoritmo "semnome" // Função : // Autor : // Data : 10/08/2014 // Seção de Declarações var n1, n2,soma: inteiro inicio escreva(" Digite o primeiro número:") leia (n1) escreval(" Digite o segundo número: ") leia (n2) soma <- n1+n2 escreval("A soma dos números é ",soma) // Seção de Comandos fimalgoritmo Dicas Raciocínio lógico x Algoritmo PLT – Programa Livro Texto O FORBELLONE, A. L.. Lógica de Programação. 1ª ed. São Paulo: Pearson. PEA – Plano de Ensino Aprendizagem O O O O O O O O O O Introdução Definição de lógica e lógica de programação. Noção de algoritmos e resolução de problemas com ferramentas computacionais. Tipos de dados (inteiros, reais, caracteres). Uso de variáveis e constantes. Português estruturado. Operadores e expressões matemáticas computacionais. Operadores de atribuição. Comandos de leitura e escrita. Análise e resolução de problemas. PEA Estruturas de controle. Operadores relacionais. Operadores lógicos. Estrutura de seleção (SE, ENTÃO, SENÃO). Estrutura seleção (SWITCH, CASE). Estruturas de repetição. Estruturas de repetição ou laços (PARA, ENQUANTO, REPITA). O Estruturas de dados compostas. O Vetores. O Matrizes. O O O O O O O Exercícios Enunciado Faça um programa que peça o salário de um funcionário, em seguida dê 15% de aumento. Ao final mostre o valor do aumento e o salário final. Exercício-01 ? Entrada Faça um programa que peça o salário de um funcionário, em seguida dê 15% de aumento. Ao final mostre o valor do aumento e o salário final. Exercício-01 PROCESSAMENTO Faça um programa que peça o salário de um funcionário, em seguida dê 15% de aumento. Ao final mostre o valor do aumento e o salário final. Exercício-01 Faça um programa que peça o SAÍDAsalário de um funcionário, em seguida dê 15% de aumento. Ao final mostre o valor do aumento e o salário final. Código algoritmo "Aumento de salário" // Função : // Autor : // Data : 17/08/2014 // Seção de Declarações var ????????? inicio escreva(" Digite seu salário:") leia (sal) Entrada aum <- sal*15/100; sal_aum <- sal+aum; Processamento escreval("") escreval("Valor do aumento: ",aum) escreval("") escreval("Salário com aumento: ", sal_aum) // Seção de Comandos fimalgoritmo Saída algoritmo "Aumento de salário" // Função : // Autor : // Data : 17/08/2014 // Seção de Declarações var sal, aum, sal_aum: real inicio escreva(" Digite seu salário:") leia (sal) variáveis