32
Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

Embed Size (px)

Citation preview

Page 1: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

Profa. Simone de Abreu

Unidade 1 – Construção de

Algoritmos

Page 2: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

2

Objetivo da Disciplina

• Capacitar o aluno na resolução de

problemas utilizando uma linguagem

de programação

• Desenvolver o raciocínio lógico

voltado a programação

• Desmitificar a programação como

uma coisa de “nerds”

Page 3: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

3

Conteúdo da Disciplina

• Raciocínio lógico aplicado à Resolução de Problemas

• Conceitos Básicos sobre a Estrutura e Funcionamento de um computador

• Resolução de problemas com estruturação lógica por meio de Algoritmos

• Implementação de Algoritmos em uma linguagem de programação (Java)

• Componentes de um programa– Operadores Matemáticos, Relacionais e Lógicos– Constantes, Variáveis e Tipos de Dados– Estruturas de Seleção e Repetição– Vetores

Page 4: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

4

Metodologia de Trabalho

• Apresentação de Conceitos

• Discussões em Sala

• Trabalho em Grupo

– Apresentação de Resultados

• Atividades em Laboratório

• Discussão de Soluções

• Atividades Extraclasse

Page 5: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

5

Critério de Avaliação

• Semestre Divido em duas Etapas– 1ª Etapa (Avaliação Continuada) – N1

• 3 provas escritas, individuais e sem consulta – 10,0 pontos • 1 Trabalho em Grupo – 10,0 pontos• Descarte da Menor nota• Média da N1 – (AV1 + AV2 + AV3) / 3,0

– 2ª Etapa (Prova Final) – N2• 1 Prova escrita individual e sem consulta – 10,0 Pontos

– Média final• (N1 + N2) / 2• Aprovação: média >= 6,0

Page 6: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

6

Softwares Utilizados

• Java JDK 7 com ambiente NetBeans

– http://netbeans.org/

Page 7: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

7

Bibliografia

Page 8: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

8

Bibliografia (cont. )

Page 9: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

Principais Conceitos

Fonte: www.corbis.com

Page 10: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

10

Programar

É A ARTE DE RESOLVER PROBLEMAS ATRAVÉS DA

CRIAÇÃO DE UM SOFTWARE

Vamos Analisar esta Definição!!

Page 11: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

11

Programação é Arte?

• Similaridade do ponto de vista criativo

• Exige concentração

• Permite mais que uma solução

• Permite experimentação

• Habilidade que se aperfeiçoa com o

passar do tempo e com a prática

Page 12: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

12

Exemplo

• Se solicitarmos a diferentes pessoas que pintem um quadro de uma pessoa

• É provável que teremos os seguintes resultados

Fontes: www.corbis.com

notasaocafe.wordpress.com/category/arte-ao-cafe/

Page 13: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

13

Ou...

Fontes: www.corbis.com

notasaocafe.wordpress.com/category/arte-ao-cafe/

Page 14: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

14

O que é Lógica?

• Lógica– Pode ser definida como a “arte de bem

pensar”– Relacionada à coerência e racionalidade, ao

que é correto– Sempre que você expressa pensamentos de

forma correta, você está sendo lógico!– Portanto, a lógica se relaciona também com a

“correção do pensamento”, determinando quais operações são válidas e quais não são

Lógica = colocar “ordem no pensamento”!

Page 15: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

15

O que é um algoritmo?

• Algoritmo– Uma sequência finita de ações (instruções)

encadeadas segundo uma determinada lógica com o objetivo de solucionar um problema específico

• Instrução – É a informação que indica a um computador

uma ação elementar a ser executada

• Como fazer um bolo de chocolate???

Page 17: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

17

Mas qual a ordem????

• Ordenar em passos Lógicos!• Exercício:

– Fazer o bolo de chocolate em no máximo 8 passos lógicos

1. Bater os ovos com a manteiga2. Adicionar o açúcar e a farinha aos poucos3. Adicionar o leite e bater4. Adicionar o chocolate5. Misturar o fermento6. Despejar a mistura em um forma untada7. Levar ao forno para assar por 30 minutos8. Retirar do forno e comer

Page 18: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

18

Fases de um Algoritmo

• Todo algoritmo atua em um princípio básico de 3 fases:

Valores iniciais

Seqüencia lógica de instruções (Algoritmo

)

Resultado

Page 19: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

19

Fases de um Algoritmo

• Exercício:– Identificar as fases do algoritmo (entrada,

processamento e saída) para calcular a média de duas notas

• Resolução:– Entrada: informar as duas notas: nota1 e nota2– Processamento: realizar o cálculo da média,

sendo que a média é igual a soma de nota1 e nota2 dividido por 2

– Saída: apresentar o resultado do cálculo realizado na fase anterior, ou seja, a média obtida das duas notas

Page 20: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

20

Como resolver problemas?

• Dado um problema qualquer ler e realizar uma análise do mesmo

• Na análise investigar – Quais são os dados fornecidos pelo problema?– O que se espera como resultado final da solução do

problema– Pensar em como solucionar o problema

• Dividir em dois níveis– Nível 01 – O que eu tenho que fazer?

• Tirar do problema quais são os passos gerais para solucioná-lo

– Nível 02 – Como fazer?• Desenvolver todo o raciocínio lógico para resolver o

problema. Identificar quais são os passos a serem seguidos para atingir a solução

Page 21: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

21

Importante

• Lembrar SEMPRE do princípio de funcionamento de um computador

Dados de Entrada

Processamento

Dados de

Saída(Resultado)

Page 22: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

22

Problema Exemplo 1

• Faça um algoritmo que leia quatro números, calcule e mostre a soma desses números

Page 23: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

23

Resolução Exemplo 1

Nível 1 – O que eu tenho que fazer?

Saber quais são os quatro números

Fazer a soma dos quatro números

Apresentar o resultado da soma

Page 24: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

24

Resolução Exemplo 1

Nível 2 – Como fazer? 1. Obter o primeiro número (num1)2. Obter o segundo número (num2)3. Obter o terceiro número (num3)4. Obter o quarto número (num4)5. Calcular a soma de num1, num2,

num3 e num46. Mostrar a soma dos quatro

números (soma)

Page 25: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

25

Preciso ser um gênio para Programar?

• NÃO!! • Aprender a programar é como

aprender uma nova língua

• Está relacionado a aprender a se expressar em um novo dialeto

Page 26: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

26

Preciso ser um gênio para Programar?

• Entender um problema

• Identificar uma solução para o problema

• Expressar esta solução, utilizando o raciocínio lógico, de tal forma que possa ser codificada em uma linguagem

• Ter vontade de aprender!!!

• E o que mais?

PRATICAR

PRATICAR

PRATICAR

PRATICAR

Page 27: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

27

Exercitando a lógica...

Page 28: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

28

Problema01: Problema dos Comboios

• Um comboio parte de Brasília a uma velocidade de 120 Km/h em direção a São Paulo, ao mesmo tempo em que outro comboio parte de São Paulo a uma velocidade de 80km/h em direção a Brasília

• Quando os comboios se encontram, qual deles está mais próximo de Brasília? Aquele que parte de Brasília ou o que parte de São Paulo?

Page 29: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

29

Problema02: 4 pontos e 3 retas

• Una os 4 pontos com apenas três retas sem levantar a ponta do lápis e acabando no ponto onde começou

Page 30: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

30

Problema03: O Lobo, a Cabra e o Repolho

• Um homem precisa atravessar um rio com um barco que possui capacidade apenas para carregar ele e mais uma de suas 3 cargas, que são: um lobo, uma cabra e um repolho.

• O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas?1. Sendo que, o lobo não pode ficar sozinho com

a cabra e 2. A cabra não pode ficar sozinha com o repolho

Page 31: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

31

Problema04: Jarros de Água

• Existem 2 jarros com capacidade para 5 litros e 3 litros de água cada. Descreva os passos para juntar 4 litros de água em um dos dois jarros.

5 litros 3 litros

Page 32: Profa. Simone de Abreu Unidade 1 – Construção de Algoritmos

32

Problema05: Missionários e Canibais

Em um lado do lago existem 3 missionários e 3 canibais. Toda vez que os missionários ficam em menor número que os canibais eles são devorados. Como transportar os missionários de uma margem para outra do rio, em um barco com 2 lugares, sem que sejam devorados pelos canibais.