29
Joyce França Professora de Ciência da Computação - IFNMG Algoritmos e Programação

Algoritmos e Programação - francajoyce.files.wordpress.com · OBJETIVOS •Objetivo Geral: Introduzir os conceitos básicos, técnicas, recursos e características relacionados

  • Upload
    ledat

  • View
    229

  • Download
    0

Embed Size (px)

Citation preview

Joyce França Professora de Ciência da Computação - IFNMG

Algoritmos e Programação

Roteiro – aula 1

• Apresentação da disciplina

• Definição de algoritmos

Plano de Ensino

• EMENTA

• OBJETIVOS

• CONTEÚDO PROGRAMÁTICO

• METODOLOGIA

• AVALIAÇÃO

• BIBLIOGRAFIA

Ementa

• Introdução à Lógica;

• Conceitos de algoritmos;

• Técnica de Criação de Algoritmos;

• Princípios de Programação Modular e Estruturada;

• Estruturas de controle e de repetição;

• Vetores e Matrizes; Funções.

OBJETIVOS

• Objetivo Geral:

▫ Introduzir os conceitos básicos, técnicas, recursos e características relacionados à algoritmos e uma linguagem de programação.

OBJETIVOS

• Objetivos Específicos:

▫ Compreender os conceitos da lógica de programação a fim de construir algoritmos para resolução de problemas matemáticos e computacionais.

▫ Conhecer e a manipular variáveis e tipos de dados.

▫ Conhecer e empregar as estruturas de controle de fluxo de dados para manipulação de dados na construção de algoritmos.

▫ Identificar problemas matemáticos e abstrai-los para o meio computacional e resolvê-los por meio de algoritmos.

CONTEÚDO PROGRAMÁTICO

• Unidade I ▫ Introdução à Lógica de Programação; ▫ Conceituação de tipos de dados e variáveis; ▫ Sintaxe e semântica de algoritmos; ▫ Desenvolvimento de algoritmos; ▫ Introdução a ambientes de desenvolvimento de programação

estruturada; ▫ Instruções e comandos básicos;

• Unidade II ▫ Estruturas de Controle; ▫ Estruturas Condicionais; ▫ Estruturas de Repetição; ▫ Arranjos: vetores e matrizes ▫ Funções

METODOLOGIA / ATIVIDADES DIDÁTICAS

• A disciplina utilizará de uma linguagem de programação moderna para demostrar processo de desenvolvimento de softwares.

• Serão ministradas aulas práticas no laboratório específico, objetivando a implementação de softwares reais.

• A avaliação dar-se-á em todo processo de desenvolvimento da disciplina, considerando a participação dos estudantes nas atividades propostas.

AVALIAÇÃO

• Critérios de Avaliação:

▫ Os conhecimentos e atitudes dos alunos serão avaliados através de exercícios, trabalhos e provas escritas e práticas utilizando computadores.

▫ Serão distribuídos 100 pontos

para garantir aprovação o aluno deverá acumular 60 pontos na nota final.

AVALIAÇÃO

1º Bimestre

Avaliação Nota Data

Prova escrita 10 pts 19/03/18

Prova prática 20 pts 16/04/18

Trabalhos 10 pts 23/04/18

2º Bimestre

Avaliação Nota Data

Prova escrita 20 pts 14/05/18

Prova prática 20 pts 25/06/18

Trabalhos 20 pts 04/07/18

BIBLIOGRAFIA BÁSICA

• DAMAS, Luis. Linguagem C. 10. ed. LTC Editora, 2007.

• OLIVEIRA, J. F.; MANZANO, J. A. N. G. Algoritmos: Lógica para Desenvolvimento de Programação de Computadores - Edição Revisada e Atualizada. 28. ed. São Paulo: Érica, 2016.

• PEREIRA, Silvio do Lago. Algoritmos e lógica de programação em C: uma abordagem didática. 1. ed. São Paulo: Érica, 2012. 190 p

BIBLIOGRAFIA COMPLEMENTAR

• EDMONDS, Jeff. Como pensar sobre algoritmos. 1. ed. Rio de Janeiro: LTC, 2010. 284 p.

• FARRER, Harry. Algoritmos Estruturados. 3. ed. LTC, 2011.

• MANZANO, Jose Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: Lógica para Desenvolvimento de Programação de Computadores. 28. ed. Erica, 2016.

• FILHO, Frederico F. C. Algoritmos Numéricos. 2. ed. LTC, 2007.

• ZIVIANI, Nivio. Projeto de Algoritmos com Implementações em Pascal e C. 3. ed. Cengage Learning, 2010.

• Site: francajoyce.wordpress.com

Definição de algoritmo

Prof.: Joyce França

26/02/2018

18

Agenda

• Introdução

• Definição de algoritmo

• Formas de Representação de algoritmos

• Tipos de dados

• Exercícios

19

Definição de Algoritmo

• Algoritmo é uma seqüência finita e bem definida de passos que, quando executados, realizam uma tarefa específica ou resolvem um problema.

• Ex: Receitas de culinária, manual de instruções, coreografia, etc.

20

Propriedades do algoritmo

• Composto por ações simples e bem definidas

• Seqüência ordenada de ações

• Conjunto finito de passos

21

Exemplo de algoritmo

• Receita de bolo: Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar deixe a forma no forno Retire do forno Deixe esfriar

22

Exemplo de algoritmo

• Algoritmo: sacar dinheiro Passo 1: ir até o caixa eletrônico.

Passo 2: colocar o cartão.

Passo 3: digitar a senha.

Passo 4: solicitar o saldo.

Passo 5: se o saldo for maior ou igual à quantia desejada, sacar a quantia desejada; caso contrário sacar o valor do saldo.

Passo 6: retirar dinheiro e cartão.

Passo 7: sair do caixa eletrônico.

Exercícios de Lógica

1. Torre de hanoi

2. Jogo dos sapos

3. Barco de carga

• Problema da Torre de Hanói ▫ Seja a seguinte situação:

deve-se mover todos os discos do primeiro eixo para o terceiro mantendo-se a ordem original

em cada movimento, pode-se mover apenas um disco

um disco nunca poderá ser sobreposto por outro maior

Construindo um Algoritmo

A C B

Problema da Torre de Hanoi

• Algoritmo:

1. Move o disco 1 para eixo C

2. Move o disco 2 para eixo B

3. Move o disco 1 para eixo B

4. Move o disco 3 para eixo C

5. Move o disco 1 para eixo A

6. Move o disco 2 para eixo C

7. Move o disco 1 para eixo C

27

Jogo dos sapos

• Troque as posições dos sapos

▫ Os machos devem ser deslocados para a direita e as fêmeas para a esquerda

Exercícios de Lógica

1. Um comerciante está transportando um lobo, uma ovelha e 20 kg de cenouras. Durante a viagem, ele se depara com um rio e um pequeno barco, no qual só é possível transportar um elemento por vez. Descreva quais serão as ações tomadas pelo comerciante para atravessar o rio, de modo que ele nunca deixe o lobo e a ovelha ou a ovelha e as cenouras sozinhos em uma das margens.

29