Buscar

Lógica de Programação - Portugol - Modularização

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
EXERCÍCIOS
1. Escreva um procedimento chamado SINAL que receba como parâmetro um valor N
inteiro e escreva a palavra POSITIVO se N for um número maior que zero,
NEGATIVO se N for menor que zero, ou NULO se N for igual a zero.
Algoritmo "SINAL"
Var
Num: inteiro
Procedimento SINAL(N: inteiro)
Inicio
Se (N=0) então
Escreval ("NULO")
FimSe
Se (N<0) então
EscrevaL ("NEGATIVO")
FimSe
Se (N>0) então
Escreval ("POSITIVO")
FimSe
FimProcedimento
Inicio
Escreva ("Digite um número: ")
Leia (Num)
SINAL(Num)
FimAlgoritmo
2. Escreva um procedimento chamado METADE que dívida um valor do tipo real
(passado como parâmetro) pela metade.
algoritmo "METADE"
var
Num: real
Procedimento METADE(Vr: real)
Var
Met: real
Inicio
Met <- Vr/2
Escreval ("Metade: ", Met)
FimProcedimento
inicio
Escreva ("Digite um número: ")
Leia (Num)
METADE(Num)
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
fimalgoritmo
3. Escreva um procedimento chamado MEDIA que calcule a média de 3 valores reais
(X, Y e Z) passados como parâmetros.
algoritmo "MEDIA"
var
N1, N2, N3: real
Procedimento MEDIA(X, Y, Z: real)
Var
T: real
Inicio
T <- (X + Y + Z)/3
Escreval ("Media: ", T:4:2)
FimProcedimento
inicio
Escreva ("Digite um número: ")
Leia (N1)
Escreva ("Digite um número: ")
Leia (N2)
Escreva ("Digite um número: ")
Leia (N3)
MEDIA(N1, N2, N3)
fimalgoritmo
4. Escreva um procedimento chamado AUMENTO que receba dois valores reais X e
Y como parâmetros e aumente o valor de X em Y%.
algoritmo "AUMENTO"
var
N1, N2: real
Procedimento MEDIA(X, Y: real)
Var
Porc, Tot: real
Inicio
Porc <- (X * Y)/100
Tot <- X + Porc
EscrevaL ("Aumento: ", Porc)
EscrevaL ("Total: ", Tot)
FimProcedimento
inicio
Escreva ("Digite um número: ")
Leia (N1)
Escreva ("Digite um número: ")
Leia (N2)
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
MEDIA(N1, N2)
fimalgoritmo
5. Escreva um procedimento chamado SEG para receber uma medida de tempo
expressa em Horas, Minutos e Segundos e mostrar esta medida convertida apenas
para segundos.
algoritmo "SEG"
var
Hor, Min, Sg: Inteiro
Procedimento SEG(H, M, S: Inteiro)
Var
Hs, Ms, Ts: Inteiro
Inicio
Hs <- H * 3600
Ms <- M * 60
Ts <- S + Hs + Ms
EscrevaL ("Horas em segundos: ", Hs)
EscrevaL ("Minutos em segundos: ", Ms)
EscrevaL ("Total de segundos: ", Ts)
FimProcedimento
inicio
Escreva ("Digite a(s) hora(s): ")
Leia (Hor)
Escreva ("Digite o(s) minuto(s): ")
Leia (Min)
Escreva ("Digite o(s) segundo(s): ")
Leia (Sg)
SEG(Hor, Min, Sg)
fimalgoritmo
6. Escreva um procedimento chamado HMS para receber uma medida de tempo
expressa apenas em segundos e mostrar esta medida convertida para horas,
minutos e segundos.
algoritmo "HMS"
var
Sg: Inteiro
Procedimento HMS(Seg: Inteiro)
Var
H, M, S: Real
Inicio
H <- Sg / 3600
M <- (Sg % 3600)/60
S <- (Sg % 3600)%60
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
EscrevaL ("Segundo(s) em hora(s): ", H:1)
EscrevaL ("Segundo(s) em minuto(s): ", M:1)
EscrevaL ("Segundo(s): ", S)
FimProcedimento
inicio
Escreva ("Digite o(s) segundo(s): ")
Leia (Sg)
HMS(Sg)
fimalgoritmo
7. Escreva um procedimento chamado NOME_MES que receba um valor inteiro N (de
1 a 12) e mostre o nome do mês correspondente a N.
algoritmo "NOME_MES"
var
Mes: Inteiro
Procedimento NOME_MES(N: Inteiro)
Inicio
Se (N = 1) então
EscrevaL ("JANEIRO")
FimSe
Se (N = 2) então
EscrevaL ("FEVEREIRO")
FimSe
Se (N = 3) então
EscrevaL ("MARÇO")
FimSe
Se (N = 4) então
EscrevaL ("ABRIL")
FimSe
Se (N = 5) então
EscrevaL ("MAIO")
FimSe
Se (N = 6) então
EscrevaL ("JUNHO")
FimSe
Se (N = 7) então
EscrevaL ("JULHO")
FimSe
Se (N = 8) então
EscrevaL ("AGOSTO")
FimSe
Se (N = 9) então
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
EscrevaL ("SETEMBRO")
FimSe
Se (N = 10) então
EscrevaL ("OUTUBRO")
FimSe
Se (N = 11) então
EscrevaL ("NOVEMBRO")
FimSe
Se (N = 12) então
EscrevaL ("DEZEMBRO")
FimSe
FimProcedimento
inicio
Escreva ("Insira um número: ")
Leia (Mes)
Se (Mes > 0) e (Mes < 13) então
NOME_MES(Mes)
FimSe
Se (Mes > 12) então
Escreval ("O número digitado não corresponde a um
mês")
FimSe
fimalgoritmo
8. Faça um algoritmo para ler 2 valores e um menu com as seguintes opções: soma,
comparação ou multiplicação. Utilize modularização.
algoritmo "SCM"
var
N1, N2: Real
Op: Inteiro
Procedimento SOMA(Num1, Num2: Real)
Var
Total: Real
Inicio
Total <- Num1 + Num2
Escreva ("A soma de", Num1, " e", Num2, " é", Total)
FimProcedimento
Procedimento COMP(Num3, Num4: Real)
Inicio
Se (Num3 = Num4) então
Escreva (Num3, " e", Num4, " são iguais")
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
Campus Cacoal – Rondônia
Lógica de Programação
Senão
Escreva (Num3, " e", Num4, " não são iguais")
FimSe
FimProcedimento
Procedimento MULT(Num5, Num6: Real)
Var
Total: Real
Inicio
Total <- Num5 * Num6
Escreva ("A multiplicação de", Num5, " e", Num6, " é",
Total)
FimProcedimento
inicio
EscrevaL ("------------------")
EscrevaL ("Operação Digite")
EscrevaL ("Soma________ 1 ")
EscrevaL ("Comparação__ 2 ")
EscrevaL ("Multiplicação 3 ")
EscrevaL ("------------------")
Escreva ("Digite o que deseja: ")
Leia (Op)
Escreva ("Insira um número: ")
Leia (N1)
Escreva ("Insira outro número: ")
Leia (N2)
Se (Op = 1) então
SOMA(N1, N2)
FimSe
Se (Op = 2) então
COMP(N1, N2)
FimSe
Se (Op = 3) então
MULT(N1, N2)
FimSe
fimalgoritmo

Continue navegando