Introdução à Programação e Algoritmos

Propaganda
Introdução à Programação e Algoritmos
Aécio Costa
Introdução à Programação e Algoritmos
“Programação é a arte de fazer com que o
computador faça exatamente o que
desejamos que ele faça”.
Introdução à Programação e Algoritmos
O que é um Programa?
Uma seqüência de instruções de computador, para
a realização de uma determinada tarefa.
Introdução à Programação e Algoritmos
... E o que é uma Instrução?
É um comando referente a uma operação elementar
que o computador seja capaz de executar.
Introdução à Programação e Algoritmos
Exemplos de instruções:






Colocar Negrito em um texto;
Deletar um arquivo;
Criar uma pasta;
Copiar um conjunto de Arquivos;
Enviar uma mensagem;
Clicar em botão.
Introdução à Programação e Algoritmos
Algoritmos
“Um conjunto finito de regras que provê uma
sequencia de operações para resolver um tipo de
problema específico, em um tempo determinado” (Knuth,
1997).
“Sequência ordenada, e não ambígua, de passos
que levam à solução de um dado problema” (TREMBLAY)
IMPORTANTE ENTENDER A SEQUÊNCIA LÓGICA
Introdução à Programação e Algoritmos
Algoritmos
Seqüência de instruções, cuja execução resulta na
realização de uma determinada tarefa.
Exemplos:




Receita de bolo
Partitura de uma música
Assistir um Filme
Procedimentos para cálculo com operações fundamentais da
aritmética
 Instruções para matrícula na faculdade
 Fazer um sanduíche.
Introdução à Programação e Algoritmos
Algoritmos – Fazer um Sanduíche
Instruções:
1. Pegar um pão
2. Cortar o pão ao meio
3. Pegar a maionese
4. Passar maionese nas fatias de pão
5. Pegar alface e tomate
6. Cortar alface e tomate
7. Colocar alface e tomate no pão
8. Pegar um hambúrguer
9. Fritar o hambúrguer
10. Colocar o hambúrguer no pão
11. Juntar as fatias do pão cortado
Introdução à Programação e Algoritmos
Algoritmos
Exemplo: Assistir um Filme
Instruções:
1.
2.
3.
4.
Insira a fita no video cassete;
Acionar a tecla rr para Rebobinar a fita;
Acionar a tecla Play;
O Filme irá começar...
Introdução à Programação e Algoritmos
Algoritmos
Exemplo: Assistir um Filme
E se a fita estiver rebobinada? Gera um Problema!
Instruções:
1.
2.
3.
4.
Insira a fita no video cassete;
Acionar a tecla rr para Rebobinar a fita;
Acionar a tecla Play;
O Filme irá começar...
Introdução à Programação e Algoritmos
Algoritmos
Geralmente, um problema possui algumas
alternativas de soluções que chegam ao resultado correto,
podendo existir vários algoritmos que solucionem um
determinado problema.
Introdução à Programação e Algoritmos
Algoritmos
Fases básicas da construção de algoritmos
Introdução à Programação e Algoritmos
Fases básicas - ENTRADA
O que você identificou que vai precisar que o usuário ou
alguém lhe informe? (via teclado, leitor de código de barras ou
mouse). Ou seja, os valores de trabalho do algoritmo, o que
precisa ser perguntado ao usuário.
 “Escreva um programa que recebe 2 notas de aluno e calcula a média
aritmética delas.”
 “Escreva um algoritmo para ler o preço e a quantidade de um produto e
calcula o preço a pagar pelo mesmo.”
 “Escreva um algoritmo para calcular o salário líquido de um funcionário, a
partir do número de horas trabalhadas e da quantidade de dependentes.
Sabe-se que o valor da hora é de 12 reais, que se recebe 40 reais por cada
dependente e que é descontado um total de imposto de 12% do valor do
salário bruto (salário sem descontos)”.
Introdução à Programação e Algoritmos
Fases básicas - PROCESSAMENTO
 Que tipo de cálculos serão necessários para resolver o
problema?
 Há alguma checagem a ser feita com os dados?
 Existe alguma decisão a ser tomada dentro do algoritmo?
 Existem operações de processamento que precisarão ser
realizadas mais de uma vez? Ou seja, o que é preciso fazer
para que o algoritmo gere as saídas esperadas?
Introdução à Programação e Algoritmos
Fases básicas - SAÍDA
 Quais os resultados que necessitarão ser apresentados aos
usuários?
 O que deve ser impresso pelo algoritmo na tela/monitor do
computador?
 Geralmente, essa parte vem expressa no enunciado do
problema, é o que o problema pede.
Introdução à Programação e Algoritmos
Componentes
Unidade de Entrada
 Conjunto de componentes que podem ser conectados ao
computador para permitir a comunicação com o mundo real para
coleta de dados relevantes aos problemas que o mesmo possa
estar inserido;
 Teclado, Mouse, Leitor de
Código de Barras, etc...
Introdução à Programação e Algoritmos
Componentes
Unidade de Saída
 Componentes eletrônicos que podem ser conectados ao
computador para permitir a comunicação dele com o mundo
real.
 Impressora, Monitor, etc...
Introdução à Programação e Algoritmos
Processamento
Procedimentos utilizados para chegar ao resultado final.
Componente eletrônico que executa a instrução corrente e determina
qual a próxima instrução a ser executada, sendo também chamado de
CPU (Central Processing Unit) ou UCP (Unidade Central de
Processamento);
Introdução à Programação e Algoritmos
Elementos
Memória Principal
Ram, usadas em processamento. Dispositivo que consisti em uma
seqüência finita de unidades de armazenamento identificadas por um
endereço único, descrito por um número inteiro não negativo e
responsável pelo armazenamento de programas e dados que serão
manipulados pelo computador;
Memória Secundária
HD
Introdução à Programação e Algoritmos
Representação de Algoritmos
• Descrição Narrativa
• Fluxograma
• Linguagem Algorítmica ou Pseudocódigo
Introdução à Programação e Algoritmos
Descrição Narrativa
Tomar Banho:
1.
2.
3.
4.
5.
6.
7.
8.
Entrar no banheiro e tirar a roupa;
Abrir a torneira do chuveiro;
Entrar na água;
Ensaboar-se;
Sair da água;
Fechar a torneira;
Enxugar-se;
Vestir-se.
Introdução à Programação e Algoritmos
Descrição Narrativa
Calcular a média de um aluno
1. Obter as suas 2 notas de provas do aluno;
2. Calcular a média aritimética das notas;
3. Se a média for maior que 6, mostrar na tela uma mensagem
dizendo que o aluno foi aprovado, senão mostrar uma
mensagem que foi reprovado.
Introdução à Programação e Algoritmos
Representação Fluxograma
Introdução à Programação e Algoritmos
Representação de Algoritmos – Pseudocódigo
Introdução à Programação e Algoritmos
Lógica
É a ciência que estuda as leis do raciocínio; é a
correção/validação do pensamento; é o encadeamento,
ordenação de idéias; é a arte de pensar.
Introdução à Programação e Algoritmos
Lógica de Programação
Encadeamento
lógico
desenvolvimento de programas.
de
instruções
para
o
Introdução à Programação e Algoritmos
Linguagem de Programação
“conjunto de ferramentas, regras de sintaxe e símbolos ou
códigos que nos permitem escrever programas de computador.”
Introdução à Programação e Algoritmos
Linguagens de Programação
Introdução à Programação e Algoritmos
Linguagens de Programação - TIOBE
Introdução à Programação e Algoritmos
Linguagens de Programação - TIOBE
Introdução à Programação e Algoritmos
Exemplo de Instruções em diversas Linguagens
Pascal
writeln(‘Oi’);
Pyton
Print “Oi”
Java
System.out.println(“Oi”);
PHP
echo “Oi”;
Lua
print(‘Oi’);
Introdução à Programação e Algoritmos
Linguagem de Máquina
Linguagem na qual o computador entende as instruções.
(Números Binários 0 e 1).
Introdução à Programação e Algoritmos
Linguagem de Montagem
Assembly Language
Números substitídos por símbolos ou palavras
(Tabela ASCII)
0100001 = A
Introdução à Programação e Algoritmos
Linguagem de Alto Nível
Algo mais próximo do entendimento do ser humano.
Exemplo: Pascal, Delphi, PHP, Java, Pyton...
Introdução à Programação e Algoritmos
Lógica de Programação
Objetivo: Resolução de Problemas
A média de três notas de um Aluno:
Nota 1 = 7
Nota 2 = 5,5
Nota 3 = 8
Média = ?
Introdução à Programação e Algoritmos
Lógica de Programação
Instruções:
1. Determine a quantidade de números;
2. Some os números dados;
3. Divida esta soma pela quantidade de números.
Introdução à Programação e Algoritmos
Lógica de Programação
Resultado em um Algoritmo:
1. N = 3;
2. Soma = Nota1 + Nota2 + Nota3;
3. Resultado = Soma ÷ N
Introdução à Programação e Algoritmos
Lógica de Programação
Objetivo: Resolução de Problemas
Quem tem a maior média:
Pedro: Nota 1 = 7, Nota 2 = 5,5 Nota 3 = 8
Maria: Nota 1 = 3, Nota 2 = 10, Nota 3 = 7,5
Quem tem melhor Média = ?
Introdução à Programação e Algoritmos
Lógica de Programação
Instruções:
1.
2.
3.
4.
Determine a quantidade de notas;
Somar as notas de cada estudante;
Dividir esta soma pela quantidade de notas;
Comparar qual deles tem a maior média.
Introdução à Programação e Algoritmos
Lógica de Programação
Resultado em um Algoritmo:
1.
2.
3.
4.
5.
6.
N = 3;
SomaMaria = Nota1 + Nota2 + Nota3;
SomaPedro = Nota1 + Nota2 + Nota3;
ResultadoPedro = SomaPedro ÷ N;
ResultadoMaria= SomaMaria ÷ N;
Se ResultadoPedro > ResultadoMaria Entao “Pedro tem
melhor média” se não “Maria tem melhor média”;
Introdução à Programação e Algoritmos
Lógica de Programação – Algoritmo
 Resolver expressões aritméticas que envolvam operações de
multiplicação, divisão, soma e subtração;
 Realizar comparação entre valores;
 Repetir a execução de um conjunto de instruções até uma
quantidade fixada de vezes ou condição atingida;
 Atribuir valor a uma variável;
 Substituir o valor de uma variável por outro valor;
 Fornecer o valor de uma variável ou emitir uma mensagem.
Introdução à Programação e Algoritmos
Resolver o Problema
Introdução à Programação e Algoritmos
Regras
O camponês deseja atravessar o rio, mas ele tem que ser
cuidadoso para que o lobo não coma a ovelha e para que a ovelha não
coma o couve. (Só pode um de cada vez).
Introdução à Programação e Algoritmos
Resolver o Problema
Introdução à Programação e Algoritmos
Regras
1 - Somente o pai, a mãe e o policial sabem pilotar o barco
2 - A mãe não pode ficar sozinha com os filhos
3 - O pai não pode ficar sozinho com as filhas
4 - O prisioneiro não pode ficar sozinho com nenhum
integrante da família
5 - O barco só pode transportar 2 pessoas por vez
6 - Você pode ir e vir com as pessoas quantas vezes
precisar
Download