Baixe o app para aproveitar ainda mais
Prévia do material em texto
Lista - Procedimento sem parâmetros com Variáveis Locais e Globais 1) Dado o exercício 1 da Lista 2: “A imobiliária Imóbilis vende apenas terrenos retangulares. Faça um algoritmo para ler as dimensões de um terreno e depois exibir a área do terreno.” Transforme a leitura dos lados do terreno em um procedimento denominado Entrada e o cálculo em um procedimento denominado Calculo. algoritmo “area_terreno”; var lado, altura, area : real; procedimento entrada() inicio leia(lado); leia(altura); fimprocedimento procedimento calculo() inicio area <- lado * altura; // a área de um retângulo é base vezes altura fimprocedimento inicio entrada(); calculo(); escreva(área); fimalgoritmo 2) Dado o exercício 8 da Lista 2: “Uma fábrica de camisetas produz os tamanhos pequeno, médio e grande, cada uma sendo vendida respectivamente por 10, 12 e 15 reais. Construa um algoritmo em que o usuário forneça a quantidade de camisetas pequenas, médias e grandes referentes a uma venda, e o programa informe quanto será o valor arrecadado” Transforme a leitura dos números de camisetas em um procedimento denominado Entrada e o cálculo em um procedimento denominado Calculo. No procedimento Calculo, criar variáveis LOCAIS para receber o resultado do cálculo do valor por tipo de camiseta (Pequena, Média, Grade) algoritmo “valor_arrecadado”; var quant_peq, quant_media, quant_grande : inteiro; valor_arrecadado : real; procedimento entrada() inicio leia(quant_peq); leia(quant_media); leia(quant_grande); fimprocedimento procedimento calculo() var valor_peq, valor_media, valor_grande : real; inicio valor_peq <- quant_peq * 10; valor_med <- quant_med * 12; valor_grande <- quant_grande * 15; valor_arrecadado <- quant_peq + quant_media + quant_grande; fimprocedimento inicio entrada(); calculo(); escreva(valor_arrecadado); fimalgoritmo 3) Dado o exercício 10 da Lista2: “A empresa Hipotheticus paga R$10,00 por hora normal trabalhada, e R$15,00 por hora extra. Faça um algoritmo para calcular e imprimir o salário bruto e o salário líquido de um determinado funcionário. Considere que o salário líquido é igual ao salário bruto descontando-se 10% de impostos.” Crie um procedimento chamado Entrada para a entrada dos dados necessários para o algoritmo. Transforme o cálculo do Salário Bruto em um procedimento chamado Sal_Bruto e o cálculo do Salário Líquido em um procedimento chamado Sal_Liquido. Crie uma variável LOCAL chamada desconto no procedimento Sal_Liquido. Para a impressão o salário bruto e liquido na tela, defini uma rotina chamada saída. È possível imprimir a variável desconto no corpo do programa principal ? Por que ? algoritmo “pagamento”; var hora_normal, hora_extra : real; salario_bruto, salario_liquido : real; procedimento Entrada() inicio leia(hora_normal); leia(hora_extra); fimprocedimento procedimento Sal_Bruto() var valor_hora_normal, valor_hora_extra : real; inicio valor_hora_normal <- hora_normal * 10.00; valor_hora_extra <- hora_extra * 15.00; salario_bruto <- valor_hora_normal + valor_hora_extra; fimprocedimento procedimento Sal_Liquido() var desconto : real; inicio desconto <- salario_bruto * 10 / 100; salario_liquido <- salario_bruto - desconto; fimprocedimento procdeimento Saída() inicio escreva(salário_bruto); escreva(salário_liquido); fimprocedimento inicio Entrada(); Sal_Bruto(); Sal_Liquido(); Saída() fimalgorimto È possível imprimir a variável desconto no corpo do programa principal ? Não...a variável desconto e uma variável local do procedimento Sal_Liquido() 4) Dado o exercício 12 da Lista 2: “Faça um programa que receba o peso de uma pessoa, calcule e mostre: a) o novo peso se a pessoa engordar 15% sobre o peso digitado; b) o novo peso se a pessoa emagrecer 20% sobre o peso digitado.” Transforme o cálculo do incremento de 15% do peso em um procedimento chamado Incremento. Esse procedimento deve conter uma local denominada Peso_Engorda, que representa em Kg os 15% engordados. O cálculo do decremento de 20% em um procedimento chamado Decremento. Esse procedimento deve conter uma local denominada Peso_Emagrace, que representa em Kg os 20% emagrecidos. A disponibilização da informação para o cliente na tela deve ser realizada via um procedimento chamado Saída. É possível imprimir os valores de Peso_Emagrace e Peso_Engorda no programa principal ? Por que ? algoritmo “calculo_peso”; var peso_original, peso_engorda_global, peso_emagrece_global : real; procedimento Incremento() var peso_engorda : real; inicio peso_engorda <- peso_original + peso_original * 15 / 100; peso_engorda_global <- peso_engorda fimprocedimento procedimento Decremento() var peso_emagrece : real; inicio peso_emagrece <- peso_original - peso_original * 20 / 100; peso_emagrece_global <- peso_emagrece fimprocedimento procedimento Saída() inico escreva(“Se engordar 15 %: “, peso_engorda_global); escreva(“Se emagrecer 20 %: “, peso_emagrece_global); fimprocedimento inicio leia(peso_original); Incremento(); Decremento(); Saída(); fimalgoritmo É possível imprimir os valores de Peso_Emagrace e Peso_Engorda no programa principal ? Por que ? Não...pois as mesas são variáveis locais e não podem ser acessadas do programa principal. 5) Dado o exercício 5 da Lista 3: “Tendo como dados de entrada a altura e o sexo (M e F) de uma pessoa, construa um algoritmo que calcule sue peso ideal, utilizando as seguintes fórmulas: • Para homens: (72.7 * h) – 58; • Para mulheres: (62.1 * h) – 44.7. “ Faça esse algoritmo criando os procedimentos ideal_homem e ideal_mulher, para o cálculo do peso ideal para cada sexo e um procedimento denominado Entrada para entrada de informações no algoritmo. algoritmo “peso_ideal”; variaveis peso_ideal, altura : real; sexo : caracter; procedimento Entrada() inicio leia(altura); leia(sexo); fimprocedimento procedimento ideal_homem() inicio peso_ideal <- (72.7 * altura) – 58; fimprocedimento procedimento ideal_mulher() inicio peso_ideal <- (62.1 * altura) – 44.7; fimprocedimento inicio Entrada(); se (sexo = “M”) então ideal_homem(); senao ideal_mulher(); fimse escreva(peso_ideal); fim 6) Faça um algoritmo que cadastre 20 códigos de produtos em um vetor. Posteriormente, dado o código de um produto informada pelo cliente, verifique se o produto está cadastrado. Essa pesquisa será encerrada quando o cliente digitar um código igual a zero. Os passos necessários para a leitura dos 20 códigos deverão ser realizados por um procedimento chamado Entrada. Já a verificação de produto cadastrado deverá ser feita por um procedimento chamado Busca. Para os laços de repetição do procedimento Entrada e Busca, em caso de utilização do laço PARA, criar vaiáveis LOCAIS. algoritmo “cadastro_produtos”; var cod_procurado : inteiro; produtos : vetor[1..20] de inteiros. achou : logico; procedimento Entrada() var cont : inteiro; inicio para cont de 1 até 50 faca leia(matriculas[cont]); fimpara fimprocedimento procedimento Busca() var cont : inteiro; inicio para cont de 1 ate 50 faca se cod_procurado = produtos[cont] entao achou <- verdadeiro; interrompa fimse fimparafimprocedimento inicio Entrada(); escreva(“Informe o produto procurado”); leia(cod_procurado); enquanto (cod_procurado <> 0) entao achou <- falso; Busca(); se achou entao escreva(“Matricula encontrada”); senao escreva(“Matricula NÃO encontrada”); fimse escreva(“Informe o produto procurado”); leia(cod_procurado); fimenquanto Fim
Compartilhar