Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Lógica e Algoritmos Prof. Jossandro Balardin Um algoritmo representa um conjunto de regras para a solução de um problema. Exemplo: Uma receita de bolo Definição dos ingredientes e suas quantidades Execução das instruções Algoritmos Da mesma forma, em programação, o algoritmo especifica com clareza e de forma correta as instruções que um software deve conter para que, ao ser executado, forneça resultados esperados. Algoritmos Em primeiro lugar, deve-se saber qual é o problema a ser resolvido – o seu objetivo. Daí deve-se extrair todas as informações a respeito desse problema (dados e operações), relacioná-las com o conhecimento atual que se tem do assunto, buscando eventualmente informações de outras fontes. Algoritmos Modelagem do problema Depois, sabendo como resolver o problema, a tarefa consiste em descrever claramente os passos para se chegar à sua solução. Os passos por si só não resolvem o problema. É necessário colocá-los em uma sequência lógica. Algoritmos Especificação do algoritmo Ler atentamente o enunciado, destacando os pontos mais importantes; Definir os dados de entrada; Definir o processamento (transforma dados de entrada em dados de saída); Definir dados de saída; Construir o algoritmo; Testar o algoritmo realizando simulações. Método para construção de Algoritmos Um motorista que necessita efetuar a troca de um pneu furado segue uma sequência de passos: Verifica qual pneu está furado Posiciona o macaco para levantar o carro Pega o estepe Solta os parafusos Substitui o pneu furado Recoloca os parafusos Desce o carro Guarda o macaco e o pneu furado Algoritmos Tipos de Algoritmos Descrição narrativa Pseudocódigos ou Português Estruturado Fluxograma ou Diagrama de Blocos Diagrama de Chapin ou Diagrama Nassi-Shneiderman ou Diagrama N-S Descrição Narrativa Utiliza linguagem natural para especificar os passos a serem seguidos para a resolução do problema. Exemplo: Somar três números Passo 1 – Receber os três números Passo 2 – Somar os três números Passo 3 – Mostrar o resultado obtido Para pensar! Faça uma Descrição narrativa de: Como fazer um sanduiche? Como participar da aula de algoritmos? Pseudocódigo, Português Estruturado ou Portugol Significa “falso código”. Utiliza linguagem intermediária entre linguagem natural e linguagem de programação. É utilizado para organizar o raciocínio lógico a ser seguido para resolução de um problema. Exemplo: Somar três números Algoritmo Soma Var a, b, c, soma: inteiro Inicio Ler (a, b, c) soma ← a + b + c Escrever (soma) Fim Utilizar Identação Pseudocódigo, Português Estruturado ou Portugol Escrever ou Escreva ou Mostrar Ler ou Leia Pode ser := Identificação do algoritmo Declaração de variáveis Corpo do algoritmo Todo algoritmo representado por um pseudocódigo deverá ser, primeiramente identificado. Para se identificar ou nomear um algoritmo recomenda-se: Não utilizar espaços entre as letras. O caracter underline ( _ ) pode ser utilizado. Não iniciar o nome com algarismos (números). Não utilizar palavras reservadas como var, se, … Não utilizar caracteres especiais como ?, *, @, … Não utilizar nomes iguais para representar variáveis diferentes. Ser sucinto e utilizar nomes coerentes. Pseudocódigo, Português Estruturado ou Portugol Essas recomendações também são válidas para a identificação das variáveis. Tipos de Dados: Inteiro – para número inteiros positivos ou negativos. Real – para números com casas decimais, positivos ou negativos. Lógico ou booleano – poderá receber verdadeiro (1) ou falso (0). Literal, texto ou caractere – poderá receber letras, números e símbolos. Obs. Os números armazenados em uma variável cujo tipo de dado é literal não poderão ser utilizados para cálculos. Pseudocódigo, Português Estruturado ou Portugol Exercícios Faça uma Descrição narrativa e após crie um algoritmo em Pseudocódigo Especificar um algoritmo para calcular e exibir na tela a área de um triângulo de base b e altura h, em que os valores de b e de h são fornecidos pelo usuário via teclado. A = (b * h)/2 Passo 1 – pedir para o usuário digitar os valores de b e h Passo 2 – Calcular a área s usando a fórmula s = (b * h)/2 Passo 3 – Exibir o valor de A na tela Algoritmo Area Var a, b, s: real Inicio Ler (a, b) s ← (b * a)/2 Escrever (s) Fim Exercícios Faça uma Descrição narrativa e após crie um algoritmo em Pseudocódigo b) Compraram-se 30 canetas iguais, que foram pagas com uma nota de R$ 100,00, obtendo-se R$ 67,00 de troco. Quanto custou cada caneta? Passo 1 – Pegar os valores 30, 100 e 67 Passo 2 – Subtrair 67 de 100 e dividir o resultado por 30 Passo 3 – Mostrar o resultado final Algoritmo Caneta Var x, y, z, valor: real Inicio x ← 30 y ← 100 z ← 67 preco ← (y – z)/x Escrever (preco) Fim Exercícios Se x possui o valor 15 e forem executadas as seguintes instruções: x ← x + 3 x ← x – 6 x ← 3 * X Qual será o valor armazenado em x? É um tipo de algoritmo que utiliza símbolos gráficos para representar as ações ou instruções a serem seguidas. É considerado um algoritmo universal por usar figuras. Fluxograma ou Diagrama de Blocos E atribuição de valores de dados de dados do algoritmo Fluxograma ou Diagrama de Blocos Exemplo: Somar três números Ler (a,b,c) soma <- a+b+c Mostrar( soma ) Inicio Fim Exercícios Fazer o fluxograma dos 2 exercícios anteriores. Exercícios Faça um programa que receba três notas, calcule e mostre a média aritmética entre elas. Faça um programa que receba três notas e seus respectivos pesos, calcule e mostre a média ponderada dessas notas. Faça um programa que receba o salário de um funcionário, calcule e mostre o novo salário, sabendo-se que este sofreu um aumento de 20% Faça um programa que receba o salário de um funcionário e o percentual de aumento, calcule e mostre o valor do aumento e o novo salário. Faça um programa que receba o salário-base de um funcionário, calcule e mostre o salário a receber, sabendo-se que esse funcionário tem gratificação de 5% sobre o salário-base e paga imposto de 7% sobre o salário-base. Exercícios 6. Sabendo-se que: 1 pé = 12 polegadas 1 jarda = 3 pés 1 milha = 1.760 jardas Faça um programa que receba uma medida em pés, faça as conversões a seguir e mostre os resultados a) polegadas b) jardas c) milhas Algoritmo pes Var pes, polegadas, jardas, milhas: real Inicio Ler (pes) polegadas := pes * 12 jardas := pes / 3 milhas := jardas / 1760 Escrever (polegadas, jardas, milhas) Fim Exercícios 7. Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual, calcule e mostre: a) a idade dessa pessoa; b) quantos anos essa pessoa terá em 2010. Algoritmo idade Var ano_atual, ano_nascimento, idade_atual, idade_2010: inteiro Inicio Ler (ano_atual, ano_nascimento) idade_atual := ano_atual – ano_nascimento idade_2010 := 2010 – ano_nascimento Escrever (idade_atual, idade_2010) Fim Exercícios 8. O custo ao consumidor de um carro novo é a soma do preço de fábrica com o percentual de lucro do distribuidor e dos impostos aplicados ao preço de fábrica. Faça um programa que receba o preço de fábrica de um veículo, o percentual de lucro do distribuidor e o percentual de impostos. Calcule e mostre: a) o valor corespondente ao lucro do distribuidor; b) o valor correspondente aos impostos; c) o preço final do veículo. Inicio Ler (p_fab, perc_d, perc_i) vlr_d := p_fab * perc_d / 100 vlr_i := p_fab * perc_i / 100 p_final := p_fab + vlr_d + vlr_i Escrever (vlr_d, vlr_i, p_final) Fim Exercícios 9. Pedro comprou um saco de ração com peso em quilos. Pedro possui dois gatos para os quais fornece a quantidade de ração em gramas. Faça um programa que receba o peso do saco de ração e a quantidade de ração fornecida para cada gato. Calcule e mostre quanto restará de ração no saco após cinco dias. Algoritmo gatos Var peso_saco, racao_gato1, racao_gato2, total_final: inteiro Inicio Ler (peso_saco, racao_gato1, racao_gato2) racao_gato1 := racao_gato1 / 1000 racao_gato2 := racao_gato2 / 1000 total_final := peso_saco – 5 * (racao_gato1 + racao_gato2) Escrever (total_final) Fim Exercícios 10. Cada degrau de uma escada tem X de altura. Faça um programa que receba essa altura e a altura que o usuário deseja alcançar subindo a escada. Calcule e mostre quantos degraus o usuário deverá subir para atingir seu objetivo, sem se preocupar com a altura do usuário. Algoritmo Escada Var a_degrau, a_usuario, qtde_degraus: inteiro Inicio Ler (a_degrau, a_usuario) qtde_degraus := a_usuario / a_degrau Escrever (qtde_degraus) Fim Exercícios 11. Faça um programa que calcule e mostre a área de um losango. Sabe-se que A = (diagonal maior * diagonal menor)/2 12. Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual, calcule e mostre: a) a idade dessa pessoa em anos; b) a idade dessa pessoa em meses; c) a idade dessa pessoa em dias; d) a idade dessa pessoa em semanas. 13. Faça um programa que receba a quantidade de dinheiro em reais e converta esse valor em dólar, marco alemão e libras esterlinas. Sabe-se que a cotação do dólar é de R$ 1,80, do marco alemão é de R$ 2,00 e da libra esterlina é de R$ 1,57. O programa deve fazer a conversão e mostrá-las.
Compartilhar