Baixe o app para aproveitar ainda mais
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
Compartilhar