lista de algoritmo engenharia

20
L Disciplina: Prof. Pirac LISTA DE EXERCÍCIOS 01 Algoritmos e Lógica de Programa . Responsável: Antonio Albiero 1580996656 – DANIEL LUIS T 1590906413 – IGOR FERNAN 9930001168 – LÁZARO D. AM 1411267266 – LUCIANO DA S 0055576525 – MARCOS ANT 0053576543 – CLAUBERT MU cicaba, 01 de Outubro de 2015. ação TROMBIM SILVA NDES VANZELA MÉRICO JÚNIOR SILVA BUENO TONIO M. DA SILVA UNIZ DA SILVA

Upload: daniel-trombim

Post on 31-Jan-2016

15 views

Category:

Documents


1 download

DESCRIPTION

Lista de exercicios de algoritmo do curso de engenharia mecanica da faculdade Anhanguera de Piracicaba.

TRANSCRIPT

Page 1: Lista de Algoritmo Engenharia

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

Page 2: Lista de Algoritmo Engenharia

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

Page 3: Lista de Algoritmo Engenharia

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

Page 4: Lista de Algoritmo Engenharia

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.

Page 5: Lista de Algoritmo Engenharia

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

Page 6: Lista de Algoritmo Engenharia

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

Page 7: Lista de Algoritmo Engenharia

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”

Page 8: Lista de Algoritmo Engenharia

// 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

Page 9: Lista de Algoritmo Engenharia

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

Page 10: Lista de Algoritmo Engenharia

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.

Page 11: Lista de Algoritmo Engenharia

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

Page 12: Lista de Algoritmo Engenharia

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

Page 13: Lista de Algoritmo Engenharia

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

Page 14: Lista de Algoritmo Engenharia

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.

Page 15: Lista de Algoritmo Engenharia

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

Page 16: Lista de Algoritmo Engenharia

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”.

Page 17: Lista de Algoritmo Engenharia

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”

Page 18: Lista de Algoritmo Engenharia

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

Page 19: Lista de Algoritmo Engenharia

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

Page 20: Lista de Algoritmo Engenharia

fimse

ate ((a <= b) e (b <= c))

escreval(a, c, b)

outrocaso

escreval ("Não é nenhum número entre 1 e 6")

fimescolha

fimalgoritmo