Buscar

Aula 3 Algoritmos

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.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais