lista de algoritmo engenharia
Post on 31-Jan-2016
15 Views
Preview:
DESCRIPTION
TRANSCRIPT
LISTA DE EXERCÍCIOS 01
Disciplina:
Prof.
Piracicaba,
LISTA DE EXERCÍCIOS 01
Algoritmos e Lógica de Programação
Prof. Responsável: Antonio Albiero
1580996656 – DANIEL LUIS TROMBIM SILVA
1590906413 – IGOR FERNANDES VANZELA
9930001168 – LÁZARO D. AMÉRICO JÚNIOR
1411267266 – LUCIANO DA SILVA BUENO
0055576525 – MARCOS ANTONIO M. DA SILVA
0053576543 – CLAUBERT MUNIZ DA SILVA
Piracicaba, 01 de Outubro de 2015.
Algoritmos e Lógica de Programação
DANIEL LUIS TROMBIM SILVA
IGOR FERNANDES VANZELA
LÁZARO D. AMÉRICO JÚNIOR
LUCIANO DA SILVA BUENO
MARCOS ANTONIO M. DA SILVA
CLAUBERT MUNIZ DA SILVA
LISTA DE EXECÍCIOS P1 – ALGORITMOS E LÓGICA DE PROGRAMAÇÃO
TODOS OS EXERCÍCIOS DEVEM APRESENTAR (a) ALGORITMO EM LINGUAGEM NATURAL, (b) O
FLUXOGRAMA CORRESPONDENTE E (c) A LISTAGEM DO PROGRAMA EM PORTUGOL (VisuAlg).
1. A conversão de graus Fahrenheit para graus Celsius é obtida por: C ← (F-32)*5/9. Fazer um algoritmo que
calcule o valor da temperatura em Celsius a partir do valor fornecido em Fahrenheit.
LINGUAGEM NATURAL
1- Obter o valor de F
2- Calcular o valor de C subtraindo 32 do valor de F e o resultado multiplicar por 5/9
3- Exibir o resultado de C
FLUXOGRAMA
PROGRAMA VISUALG
Algoritmo "Conversor de graus"
// Função: Converter grau Fahrenheit em grau Celsius
// Autor: DILLMC
// Data: 20/09/2015
Var
f, c: real
Início
escreval ("Forneça a temperatura em Fahrenheit”)
Leia (f)
c<-(f-32)*5/9
escreval (c,"º Celsius")
INÍCIO
F
C ← (F-32)*5/9
FIM
C
fimalgoritmo
2. Elabore um algoritmo que informe se um dado ano é ou não bissexto. Dica: um ano é bissexto se ele for
divisível por 400 ou se ele for divisível por 4 e não por 100.
LINGUAGEM NATURAL
1- Obter o número do ano
2- Dividir o número do ano por 400, por 4 e por 100.
3- Verificar se o resultado da divisão por 400 é número inteiro.
4- Se não for, verificar se o resultado da divisão por 4 é inteiro e por 100 não é.
5- Se for, exibir o resultado como “ano bissexto”, se não, “ano não bissexto”.
FLUXOGRAMA
S N
N S
INÍCIO
ANO
ANO / 400
FIM
ANO BISSEXTO
ANO / 4
ANO / 100
NÃO É ANO BISSEXTO
PROGRAMA VISUALG
Algoritmo "Bissexto"
// Função: Determinar se um ano é bissexto ou não
// Autor: DILLMC
// Data: 20/09/2015
Var
ano, quatro, cem, quatrocentos: inteiro
Inicio
escreval ("Forneça o ano:")
leia (ano)
quatro<-(ano%4)
se (quatro=0) entao
cem<-(ano%100)
se (cem=0) entao
quatrocentos<-(ano%400)
se (quatrocentos=0) entao
escreval ("O ano é bissexto")
senao
escreval ("O ano não é bissexto")
fimse
senao
escreval ("O ano é bissexto")
fimse
senao
escreval ("O ano não é bissexto")
fimse
fimalgoritmo
3. Elaborar um algoritmo que efetue a leitura de um número inteiro e apresente uma mensagem informando
se o número é par ou ímpar. Dica: número par se o resto da divisão por 2 é 0.
LINGUAGEM NATURAL
1- Obter o número
2- Dividir o numero por 2
3- Se o resultado for um número inteiro, informar que o numero é par, se não, informar que é impar.
FLUXOGRAMA
�
S N
PROGRAMA VISUALG
Algoritmo: "par ou ímpar"
// Função: Informa se o número dado pelo usuário é par ou ímpar
// Autor: DILLMC
// Data: 20/09/2015
Var
n, resto: inteiro
Inicio
escreval ("Forneça um número")
leia (n)
resto<-(n%2)
se (resto=0) entao
escreval ("O número é par")
senao
escreval ("O número é ímpar")
fimse
fimalgoritmo
4. Determinar dentre dois números quaisquer fornecidos pelo usuário qual deles é o maior. Armazenar o
maior numa variável chamada A e o menor numa variável chamada B. Exibir os valores de A e B.
INÍCIO
N
Resto=0
NÚMERO PAR NÚMERO IMPAR
FIM
Resto<- (N%2
LINGUAGEM NATURAL
1- Obter os valores de A e B
2- Ver qual número é maior
3- Informar se A ou B é o número é maior
FLUXOGRAMA
S N
PROGRAMA VISUALG
Algoritmo "Determina o número maior"
// Função: Determinar dentre dois números qual é o maior
// Autor: DILLMC
// Data: 20/09/2015
Var
n1, n2: real
Inicio
escreval ("Forneça o primeiro número")
leia (n1)
escreval ("Forneça o segundo número")
leia (n2)
se (n1>n2) entao
escreval (n1, n2, ", O primeiro número é maior que o segundo número")
senao
INÍCIO
N1,N2
N1>N2
N1,N2 “O PRIMEIRO NUMERO É
MAIOR QUE O SEGUNDO NUMERO N1,N2 “O SEGUNDO NUMERO É
MAIOR QUE O PRIMEIRO NUMERO
FIM
escreval (n1, n2, ", O segundo número é maior que o primeiro número")
fimse
fimalgoritmo
5. Elaborar um algoritmo que efetue a leitura de um valor que esteja entre a faixa de 1 a 9. Após a leitura do
valor fornecido pelo usuário, o programa deverá indicar uma de duas mensagens: “O valor está na faixa
permitida”, caso o usuário forneça o valor nesta faixa, ou a mensagem “O valor está fora da faixa permitida”,
caso o usuário forneça valores menores que 1 ou maiores que 9.
LINGUAGEM NATURAL
1- Obter o valor
2- Verificar se o valor está dentro da faixa de 1 á 9
3- Se estiver, informar “O valor está na faixa permitida”, se não, “O valor está fora da faixa permitida”.
FLUXOGRAMA
S N
PROGRAMA VISUALG
Algoritmo "Dentro ou fora da faixa"
INÍCIO
N
N1 >= 1 E N <= 9
“O NUMERO ESTA DENTRO DA
FAIXA PERMITIDA”
FIM
“O NUMERO ESTÁ FORA
DA FAIXA PERMITIDA”
// Função: Determinar se o número está dentro ou fora da faixa permitida
// Autor: DILLMC
// Data: 20/09/2015
Var
n: real
Inicio
escreval ("Forneça um número")
leia (n)
se (n>=1) e (n<=9) entao
escreval ("O número está dentro da faixa permitida")
senao
escreval ("O número está fora da faixa permitida")
fimse
fimalgoritmo
6. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo que calcule o peso
ideal, utilizando as seguintes fórmulas:
Para homens: (72.7*h) – 58
Para mulheres: (62.1*h) – 44.7. h equivale a altura da pessoa.
LINGUAGEM NATURAL
1- Obter a altura e o sexo da pessoa.
2- Se for homem, multiplicar a altura por 72,7 e subtrair 58. Se for mulher, multiplicar por 62,1 e subtrair
44,7.
3- Exibir o resultado informando ser o peso ideal.
FLUXOGRAMA
S
N
INÍCIO
H, SEXO
SEXO = MASCULINO
HOMEM<-(72,7*H)-58
S
N
PROGRAMA VISUALG
Algoritmo "Calcula o peso ideal"
// Função: Calcular o peso ideal para homens e mulheres
// Autor: DILLMC
// Data: 20/09/2015
Var
h, homem, mulher: real
sexo: caractere
Início
escreval ("Forneça a altura desejada")
leia (h)
escreval ("Forneça o sexo desejado")
leia (sexo)
se (sexo="masculino") ou (sexo="m") entao
homem<-(72.7*h)-58
escreval (homem," Kg é o peso ideal")
fimse
se (sexo="feminino") ou (sexo="f") entao
mulher<-(62.1*h)-44,7
escreval (mulher," Kg é o peso ideal")
fimse
fimalgoritmo
FIM
HOMEM, “KG É O PESO
IDEAL”
MULHER, “KG É O PESO
IDEAL”
SEXO = FEMININO
7. Escrever um algoritmo que leia valores inteiros em duas variáveis distintas. Verifique o resto da divisão do
primeiro pelo segundo:
Se for 1, então mostre a soma das variáveis mais o resto da divisão;
Se for 2, mostre se os valores inseridos são pares ou ímpares;
Se for igual a 3, multiplique a soma dos valores lidos pelo primeiro;
Se for igual a 4 divida a soma dos números lidos pelo segundo, se este for diferente de zero.
Em qualquer outra situação mostre o quadrado dos números lidos.
LINGUAGEM NATURAL
1- Obter os valores de uma variável A e B
2- Dividir o valor de A pelo valor de B
3- Verificar o resto da divisão.
FLUXOGRAMA
INÍCIO
n1, n2
FIM
o1, Resto
Resto<- (n1%n2)
Caso 1
o1<- (n1+n2)
Caso 2
o2<- (n1%n2)
o22<- (n2%2)
“O NUMERO É
PAR”
O2=0
e o22=0
“O NUMERO É
IMPAR”
Caso 3
o3<- (n1+n2)* n1
Caso 4
(n2<>0)
o4<- (n1+n2)/n2
o3
o4
Outro caso
o5<-(n1*n1)
o55<-(n2*n2)
o5, o55
N
S
PROGRAMA VISUALG
Algoritmo "Verifica o resto de uma divisão e faz a estrutura escolha"
// Função: Verificar o resto de uma divisão e faz a estrutura escolha
// Autor: DILLMC
// Data: 20/09/2015
Var
n1, n2, r, resto, o1, o2, o22, o3, o5, o55: inteiro
o4: real
Inicio
escreval ("Forneça o primeiro número")
leia (n1)
escreval ("Forneça o segundo número")
leia (n2)
resto<-(n1%n2)
escolha resto
caso 1
o1<-(n1+n2)
escreva (o1)
escreval (resto)
caso 2
o2<-(n1%2)
o22<-n2%2)
se (o2=0) e (o22=0) entao
escreval ("O número é par")
senao
escreval ("O número é ímpar")
fimse
caso 3
o3<-(n1+n2)*n1
escreval (o3)
caso 4
se (n2<>0) entao
o4<-(n1+n2)/n2
escreval (o4)
fimse
outrocaso
o5<-(n1*n1)
o55<-(n2*n2)
escreva (o5)
escreval (o55)
fimescolha
fimalgoritmo
8. Toda vez que um pescador consegue pescar um peso de peixes maior que o estabelecido pelo
regulamento do pesqueiro (50 quilos) deve pagar uma multa de R$ 4,00 por quilo excedente. Desenvolva um
algoritmo que leia a o peso de peixes e verifique se há excesso. Se houver, determine quanto é o excesso e o
valor da multa que o pescador deverá pagar. Caso contrário mostrar uma mensagem que ele não deve pagar
nada.
LINGUAGEM NATURAL
1- Obter o peso do peixe pescado
2- Subtrair 50 do peso e multiplicar por R$4,00
3- Se o valor for maior que R$0,00, mostrar o valor, se não, informar que não deve pagar nada.
FLUXOGRAMA
INÍCIO
peso
FIM
(peso>50)
Resto<- (peso-50) multa<- (resto*4)
“ O VALOR EM KILOS
QUE EXCEDEU FOI” ,
resto
“ O VALOR DA
MULTA A SER AGO
É” , multa
“ VOCÊ NÃO DEVE
PAGAR NADA”
N S
PROGRAMA VISUALG
Algoritmo "Verifica o peso do peixe e analisa se excedeu o limite"
// Função: Verificar o peso do peixe e analisar se ultrapassou o limite do pesqueiro
// Autor: DILLMC
// Data: 21/09/2015
Var
peso, resto, multa: real
Inicio
escreval ("Forneça o peso do peixe")
leia (peso)
se (peso>50) entao
resto<-(peso-50)
multa<-(resto*4)
escreval ("O valor em kilos que excedeu foi" ,resto)
escreval ("O valor da multa a ser pago é" ,multa)
senao
escreval ("Você não deve pagar nada")
fimse
fimalgoritmo
9. Faça um algoritmo que receba o valor do salário de uma pessoa e o valor de um financiamento pretendido.
Caso o financiamento seja menor ou igual a 5 vezes o salário da pessoa, o algoritmo deverá escrever
“Financiamento Concedido"; senão, ele deverá escrever "Financiamento Negado". Independente de conceder
ou não o financiamento, o algoritmo escreverá depois a frase "Obrigado por nos consultar."
LINGUAGEM NATURAL
1- Obter o valor do salário da pessoa e o valor do financiamento pretendido.
2- Multiplicar o valor do salário por 5
3- Verificar se o valor do financiamento é menor que o resultado da multiplicação acima.
4- Se o valor for menor ou igual, informar que o financiamento foi concedido. Caso ao contrário, informar
que não foi concedido
5- Escrever a mensagem “Obrigado por nos consultar.
FLUXOGRAMA
INÍCIO
salário
FIM
(financiame
nto<=valor)
“ FINANCIAMENTO
CONCEDIDO”
“ OBRIGADO POR
NOS CONSULTAR”
“ FINANCIAMENTO
NEGADO”
N S
valor<- (salário*5)
“ FORNEÇA O VALOR DO
FINANCIAMENTO DESEJADO”
financiamento
PROGRAMA VISUALG
Algoritmo "Financiamento"
// Função: Verifica se o usuário pode ou não fazer um financiamento
// Autor: DILLMC
// Data: 21/09/2015
Var
salario, financiamento, valor: real
Inicio
escreval ("Forneça o valor do seu salário")
leia (salario)
valor<-(salario*5)
escreval ("Forneça o valor do financiamento desejado")
leia (financiamento)
se (financiamento<=valor) entao
escreval ("Financiamento concedido")
escreval ("Obrigado por nos consultar")
senao
escreval ("Financiamento negado")
escreval ("Obrigado por nos consultar")
fimse
fimalgoritmo
10. Faça um programa que lê 4 valores X, A, B e C onde X é um número inteiro e positivo e A, B,e C são
quaisquer valores reais. O programa deve escrever os valores lidos e:
se X = 1 ou X=4, escrever os três valores A, B e C em ordem crescente;
se X = 2 ou X=5, escrever os três valores A, B e C em ordem decrescente;
se X = 3 ou X=6, escrever os três valores A, B, e C de forma que o maior valor fique entre os outros dois;
se X não for um dos seis valores acima, fornecer uma mensagem indicando isso
LINGUAGEM NATURAL
1- Obter um número inteiro e positivo
2- Obter três números qualquer
3- Colocar os três últimos números obtidos em ordem crescente
4- Caso o primeiro número obtido for 1 ou 4, escreva os três últimos números em ordem crescente.
5- Caso o primeiro número obtido for 2 ou 5, escreva os três últimos números em ordem decrescente.
6- Caso o primeiro número obtido for 3 ou 6, escreva os três últimos números obtidos de forma que o
número maior fique entre os outros dois.
7- Em outro caso, escreva: “Não é nenhum número entre 1 e 6”.
FLUXOGRAMA
INÍCIO
x
(a>b)
N
S
aux<-a
a
b
c
a<-b
b<-aux
(b>c) N
S
aux<-b
b<-c
c<-aux
((a<=b) e (b<=c))
(a, b, c) Caso 1, 4
(c, b, a) Caso 2, 5
(a, c, b) Caso 3, 6
“NÃO É NENHUM
NÚMERO ENTRE 1 E 6”
PROGRAMA VISUALG
Algoritmo "Lê 4 valores e trabalha função escolha"
// Função: Lê 4 valores e mostra algumas opções na função escolha
// Autor: DILLMC
// Data: 21/09/2015
Var
x: inteiro
a, b, c, aux: real
Inicio
escreval ("Forneça o primeiro número inteiro e positivo")
leia (x)
escolha x
caso 1, 4
escreval ("Forneça o segundo número (qualquer Nº)")
leia (a)
escreval ("Forneça o terceiro número (qualquer Nº)")
leia (b)
escreval ("Forneça o quarto número (qualquer Nº)")
leia (c)
repita
se (a > b) entao
aux <- a
a <- b
FIM
FIM
b <- aux
fimse
se (b > c) entao
aux <- b
b <- c
c <- aux
fimse
ate ((a <= b) e (b <= c))
escreval(a, b, c)
caso 2, 5
escreval ("Forneça o segundo número (qualquer Nº)")
leia (a)
escreval ("Forneça o terceiro número (qualquer Nº)")
leia (b)
escreval ("Forneça o quarto número (qualquer Nº)")
leia (c)
repita
se (a > b) entao
aux <- a
a <- b
b <- aux
fimse
se (b > c) entao
aux <- b
b <- c
c <- aux
fimse
ate ((a <= b) e (b <= c))
escreval(c, b, a)
caso 3, 6
escreval ("Forneça o segundo número (qualquer Nº )")
leia (a)
escreval ("Forneça o terceiro número (qualquer Nº)")
leia (b)
escreval ("Forneça o quarto número (qualquer Nº)")
leia (c)
repita
se (a > b) entao
aux <- a
a <- b
b <- aux
fimse
se (b > c) entao
aux <- b
b <- c
c <- aux
fimse
ate ((a <= b) e (b <= c))
escreval(a, c, b)
outrocaso
escreval ("Não é nenhum número entre 1 e 6")
fimescolha
fimalgoritmo
top related