Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução à Ciência da Computação Departamento de Computação Universidade Federal de Sergipe Introdução Prof. Kalil Araujo Bispo Junho/2013 Objetivo da Aula ● Apresentar alguns conceitos de lógica de programação e desenvolvimento de software Introdução ● Para que serve um computador? – Processamento de dados ● O que é um programa de computador? – Instruções, dados, máquina e objetivo – Codificação de um algoritmo em uma determinada linguagem de programação ● Por que usar um computador? – Dados x Informações Processo de Construção de um Software ● Definição de requisitos (cliente) ● Desenvolvimento ● Entrega Processo de Construção de um Software Desenvolvimento ● Análise – Especifica como um software vai funcionar ● Projeto – Detalha-se o resultado da análise aproximando da implementação ● Implementação – Utiliza-se uma linguagem de programação e as especificações de projeto ● Testes – Verifica-se a conformidade com os requisitos Algoritmos ● Definição informal: Definição de regras para a resolução de um problema ● Exemplo – Somar três números – Fazer um sanduíche – Trocar uma lâmpada – Receita para a preparação de um bolo Algoritmos ● O que acontece se: – A ordem das instruções forem trocadas? – A quantidade de ingredientes for alterada? – O autor não testar a receita? Algoritmos ● Passos para se escrever um algoritmo – Entender o problema! (Muito Importante) – Extrair informações (dados e informações) – Relacionar com o conhecimento que se tem sobre o assunto Algoritmos ● Passos para se escrever um algoritmo – Descrever claramente os passos para se chegar a uma solução – Sequência lógica de passos – Convenção para a escrita Exemplo de algoritmo ● Trocar uma lampada – Estruturas condicionais – Estruturas de repetição Exemplo de algoritmo ● Torre de Hanoi – Inicialmente temos 3 hastes: A, B e C – Na haste A repousam 3 anéis de diâmetros diferentes, em ordem decrescente de diâmetro – Deve-se transferir todos os anéis da haste A para a haste B, utilizando C se necessário ● Deve-se mover um único anel por vez ● Um anel de diâmetro maior nunca deve repousar sobre algum outro de diâmetro menor Exemplo de Algoritmo Passos para escrever o Algoritmo ● Passos para se escrever um algoritmo – Entender o problema! (Muito Importante) – Extrair informações (dados e informações) – Relacionar com o conhecimento que se tem sobre o assunto Exemplo de Algoritmo ● Inicio – Mover um anel da haste A para a haste B – Mover um anel da haste A para a haste C – Mover um anel da haste B para a haste C – Mover um anel da haste A para a haste B – Mover um anel da haste C para a haste A – Mover um anel da haste C para a haste B – Mover um anel da haste A para a haste B ● Fim Exemplo de Algoritmo Exemplo de Algoritmo ● E se for considerado o problema com N anéis ao invés de apenas 3? Exemplo de Algoritmo Exemplo de Algoritmo ● Podemos encarar o problema de outra maneira Exemplo de Algoritmo Exemplo de Algoritmo ● Inicio – Repita ● Mover o menor anel de sua haste para a próxima, no sentido horário ● Execute o único movimento possível com um anel que não seja o menor de todos – Até que todos os discos tenham sido transferidos para outra haste ● Fim Exemplo de Algoritmo Exemplo de Algoritmo ● Qual o significado exato dos comandos repita e até? ● Uma máquina conseguiria implementar esse algoritmo? Introdução à Ciência da Computação Departamento de Computação Universidade Federal de Sergipe Introdução Prof. Kalil Araujo Bispo Junho/2013 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23
Compartilhar