Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi
Etapas para o desenvolvimento de um programa Analise: estudo do problema para determinação dos dados de entrada, do processamento e dos dados de saída Algoritmo: descrição da solução do problema através de ferramentas e formalismos adequados Codificação: tradução do algoritmo para a linguagem de programação escolhida
Lógica: A lógica é a ação do pensamento humano para a solução de problemas do dia-a-dia mas; é a característica do pensamento correto. Exemplo: O carro está com o pneu vazio. O macaco e a chave de rodas estão no porta-malas. Preciso primeiro pegar o macaco e a chave de rodas, para depois tomar outro passo para trocar o pneu do carro.
Algoritmo: Sequencia de passos ou ações organizadas de forma lógica que visa atingir um objetivo bem definido Descrição de uma sequencia de passos a ser seguida para a realização de uma tarefa Regras formais para a obtenção de um resultado ou da solução de um problema englobando formulas e expressões aritméticas.
Exemplo: Troca de uma lâmpada: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova suba na escada; retire a lâmpada velha; coloque a lâmpada nova;
Exemplo: Melhorando um pouco... ligue o interruptor; se a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; retire a lâmpada velha; coloque a lâmpada nova;
Exemplo: Melhorando mais um pouco... ligue o interruptor; se a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; retire a lâmpada velha; coloque a lâmpada nova; enquanto a lâmpada não acender, faça: retire a lâmpada; coloque outra lâmpada;
Construção de Algoritmos: Compreender completamente o problema Definir dados de entrada Definir o processamento (cálculos) necessários Definir os dados de saída Construir o algoritmo segundo algum formalismo Testar o algoritmos realizando simulações
Formalismos Descrição narrativa : descrever os passos do algoritmo em linguagem natural Fluxograma: utilização de símbolos gráficos predefinidos Pseudocódigo: escrever os passos necessários para a solução de um problema usando regras predefinidas
Descrição narrativa Exemplo multiplicação de dois números: Passo 1 Receber os dois números que serão multiplicados Passo 2 Multiplicar os números Passo 3 Mostrar o resultado da multiplicação
Fluxograma Símbolo Significado Terminal Indica início ou fim do fluxo Operação de entrada e saída. Genérica, sem indicar dispositivo. Procedimentos. Comandos simples. Operação de saída. Vídeo, impressora, etc. Decisão. Indica que uma ou mais comparações serão feitas com a possibilidade de desvio para outras partes do programa. Conectores. Sentido do fluxo.
Fluxograma Exemplo multiplicação de dois números: Inicio ler N1,N2 M = N1 * N2 Escreva M Fim
Pseudocódigo Exemplo multiplicação de dois números: ALGORITMO INICIO REAL N1, N2, M ESCREVA Digite dois números LEIA N1, N2 M = N1*N2 ESCREVA M FIM
Pseudocódigo - variações ALGORITMO INICIO REAL N1, N2, M ESCREVA Digite dois números LEIA N1, N2 M = N1*N2 ESCREVA M FIM ALGORITMO DECLARE N1, N2, M NUMÉRICO ESCREVA Digite dois números LEIA N1 LEIA N2 M N1*N2 ESCREVA M FIM_ALGORITMO ALGORITMO { REAL N1, N2, M; ESCREVA ( Digite dois números ); LEIA N1; LEIA N2; M = N1*N2; ESCREVA (M); }
Outro exemplo media de 2 notas sim Escreva aprovado Inicio Ler notas N1 e N2 Med = (N1 + N2)/2 M > =7 Fim não Escreva reprovado ALGORITMO INICIO REAL N1, N2, Med ESCREVA Digite a nota 1 LEIA N1 ESCREVA Digite a nota 2 LEIA N2 Med = (N1 + N2)/2 SE Med >=7 ESCREVA Aprovado SENÃO ESCREVA Reprovado FIM
Exercícios 1. Modifique o algoritmo anterior para considerar também a nota do exame, se for o caso. 2. Faça um algoritmo para mostrar o resultado da divisão de dois números 3. Faça um algoritmo para calcular o novo salario de um funcionário. Os funcionários que ganham até 500,00 terão um aumento de 20%, caso contrário o aumento será de 10% 4. Faça um algoritmo para mostrar um numero decimal no formato binário (maximo de 4 bits). Considere cada bit como um numero inteiro