01 - introdução aos algoritmos
TRANSCRIPT
Centro de Ciências Exatas e TecnológicasCET150 - Processamento de Dados I
Prof. Marcos Bião
Aula – 01 Algoritmo: Definição, Conceitos básicos
Computador
● É uma máquina que a partir de dados de entrada, realiza o processamento desses dados e gera resultados como saída.
Dados de entrada
Processamento Dados de saída
● Funcionamento de uma pipoqueira elétrica.
● A máquina (pipoqueira elétrica) só realiza esta função, tem um comportamento bastante específico.
Dados de entrada
Grão de milho
Processamento
Aquecimento do grão
Dados de saída
Pipoca
Computador● No computador diferentemente do exemplo anterior, pode-se realizar tarefas distintas em função das instruções armazenadas em sua memória;
● O computador obedece nossas instruções, ou seja, antes de utilizá-lo temos que explicar o que se quer que ele faça;
●É preciso informar ao computador os passos e a sequência que deve ser executada para concluir uma determinada tarefa.
Instruções● Em linguagem comum, são um conjunto de regras ou normas definidas para a realização de alguma tarefa;
● Na computação, instrução é a informação que indica a um computador uma ação elementar a executar.
Instruções● Uma instrução isolada não permite realizar um processo por completo, para isso é necessário um conjunto de instruções colocadas em ordem sequencial lógica.
● Daí, a necessidade da criação de algoritmos.
Algoritmos
● Sequência finita de instruções, ordenadas de forma lógica para resolução de uma determinada tarefa ou problema;
● O algoritmo é um caminho utilizado para a solução de um problema;
● São exemplos de algoritmos:●Instruções de montagem, receitas, manuais
de uso.
Algoritmos no dia-a-dia
● Instruções de montagem de um equipamento;● Receita de uma comida;● Manuais de uso;● Trocar pneu de um carro;● Roteiro de um experimento de Física;● Tomar banho;● Pintar a parede;
Algoritmos no dia-a-dia● São propriedades do algoritmo:
● Ações simples e bem definidas;● Sequência ordenada de ações;● Sequência finita de passos;
● O algoritmo fixa um padrão de comportamento a ser seguido, garantindo que sempre que seja executado sob as mesmas condições, produza os mesmos resultados.
●Qual o padrão necessário para a sequência:
Exemplo
Receita de bolo:1. Misture os ingredientes
2. Junte a forma com a manteiga
3. Despeje a mistura na forma
4. Leve a forma ao forno
5. Enquanto não corar deixe a forma no forno
6. Retire a forma do forno
7. Fim
Exemplo
Troca de um pneu furado:1. Desapertar ligeiramente as porcas
2. Suspender o carro
3. Retirar as porcas do pneu
4. Colocar o pneu de reserva
5. Apertar as porcas
6. Baixar o carro
7. Fim
Exercícios
Fazer um algoritmo que realize os seguintes passos:● Trocar uma lampada;● Fazer uma sopa de verduras;
Etapas na solução de problemas
1.Identificar e Analisar o problema que deseja solucionar;
2.Estruturar a solução do problema (sequência dos passos);
3.Executar a solução do problema;
4.Verificar a adequação e resultados;
Identificar e Analisar
● Quais os resultados esperados (Dados de saída) ?;
● Quais informações são necessárias para a obtenção desses resultados (Dados de entrada) ?;
● Quais operações necessárias para transformar os dados de entrada nos resultados desejados ?
Exemplo
●Situação: Um veículo parte do repouso em movimento retilíneo e possui uma aceleração escalar constante igual a 2,0m/s². Qual a velocidade escalar após 3 segundos?●Problema: Determinar a velocidade no tempo t=3s.●Resultados esperados: Velocidade do veículo em m/s.●Informações: Velocidade inicial (vi), aceleração (a) e o tempo (t).●Operações necessárias: v = vi + a * t
Solução de problemas
Estrutura básica para a solução de problemas:
● Sequência;● Seleção;● Repetição;
Sequência
● A sequenciação é uma convenção com o objetivo de reger o fluxo de execução do algoritmo:
● Qual a primeira ação a ser executada? E qual ação vem a seguir?
Seleção
●Inclui no algoritmo uma condição, que determina qual ou quais ações serão executadas dependendo do resultado da inspeção da condição resultar verdadeiro ou falso;
●Algoritmo para verificar se um número é par ou ímpar:
1. Digitar o número a ser verificado
2. Se o resto da divisão do número por 2 for 0 então pule para passo 3, senão pule para o passo 4
3. O número digitado é par
4. O número digitado é ímpar
5. Fim
Repetição●Execução de um conjunto de passos repetidas vezes;●Pode ter quantidade definida de repetição, ou, repetições enquanto uma condição seja verdadeira;
Exemplo: Algoritmo para pintar a parede:
1. Escolher a cor da tinta
2. Pegar a lata da tinta desejada
3. Pegar o pincel
4. Enquanto não chegar ao fim da parede, repita os passos 5,6 e 7
5. Molha o pincel na tinta
6. Passa o pincel na parede
7. Deslocar um passo a esquerda
Formas de representação de algoritmos
●Dentre as formas de representação de algoritmos mais conhecidas, destacam-se:
● Fluxograma;● Pseudocódigo ou linguagem de programação;
Fluxograma
● Representação gráfica de algoritmos;
● Formas geométricas diferentes, implicam em ações distintas;
● Tal propriedade facilita o entendimento do funcionamento do algoritmo;
● Encontra-se em um nível intermediário entre a narrativa e o pseudocódigo.
Fluxograma - Representação
Indica o início ou término do programa/algoritmo
Indica a decisão que deve ser tomada, indicando a possibilidade de desvios para diversos outros pontos do fluxo
Indica cálculos a efetuar, atribuições de valores ou qualquer manipulação de dados