01 - Introdução aos algoritmos

24
Centro de Ciências Exatas e Tecnológicas CET150 - Processamento de Dados I Prof. Marcos Bião Aula – 01 Algoritmo: Definição, Conceitos básicos

Transcript of 01 - Introdução aos algoritmos

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

Fluxograma - Representação

Entrada de dados pelo teclado

Saída de dados na tela/display

Exemplo - Fluxograma