Baixe o app para aproveitar ainda mais
Prévia do material em texto
Lista de Exercícios Curso de Lógica e Técnicas de Programação Prof. Marcelo Cabral Portugol: 1. Escreva um algoritmo que leia três notas, calcule a média delas e exiba se o aluno foi aprovado ou reprovado e sua respectiva nota. algoritmo "aprovacao" var nota1,nota2,nota3 : real media : real inicio // Seção de Comandos escreva("Digite a primeira nota: ") leia(nota1) escreva("Digite a segunda nota: ") leia(nota2) escreva("Digite a terceira nota: ") leia(nota3) media <- (nota1 + nota2 + nota3) / 3 se (media >= 7) entao escreval("Aluno aprovado com media ",media) fimse se (media < 7)entao escreval("Aluno reprovado com media",media) fimse fimalgoritmo 2. Escreva um algoritmo que leia um número e exiba se ele é positivo, negativo ou nulo. algoritmo "positivonegativonulo" var numero : inteiro inicio // Seção de Comandos escreva("Digite um numero:") leia(numero) se numero > 0 entao escreval("Numero é positivo.") senao se numero < 0 entao escreval("Numero é negativo.") senao escreval("Numero é nulo.") fimse fimse fimalgoritmo 3. Escreva um algoritmo que leia a idade de um atleta e escreva na tela em que categoria ele se enquadra, seguindo o quadro abaixo: algoritmo "categoria_por_idade" var idade : inteiro inicio // Seção de Comandos escreva("Digite sua idade: ") leia(idade) se idade < 5 entao escreval("Nao pode competir") senao se ((idade >= 5)e(idade <= 10)) entao escreval("Categoria Infantil") senao se ((idade > 10)e(idade <= 17)) entao escreval("Categoria Juvenil") senao se ((idade > 17)e(idade <= 30)) entao escreval("Categoria Profissional") senao se idade > 30 entao escreval("Categoria Senior") fimse fimse fimse fimse fimse fimalgoritmo 4. Escreva um algoritmo que leia dois números e a operação matemática entre eles e exiba a equação da operação e o resultado. Pense em uma calculadora básica. algoritmo "calculadora" var operacao : caractere numero1,numero2,resultado : real inicio // Seção de Comandos escreva("Digite o primeiro numero: ") leia(numero1) escreva("Digite a operacao: ") leia(operacao) escreva("Digite o segundo numero: ") leia(numero2) escolha operacao caso "+" resultado <- numero1 + numero2 caso "-" resultado <- numero1 - numero2 caso "*","x" resultado <- numero1 * numero2 caso "/" resultado <- numero1 / numero2 fimescolha escreval(numero1," ",operacao,numero2," =",resultado) fimalgoritmo 5. Escreva um algoritmo que exiba os números de 1 a 100 em ordem crescente algoritmo "numeros_1_a_100" var numero : inteiro inicio // Seção de Comandos para numero de 1 ate 100 passo 1 faca escreval(numero) fimpara fimalgoritmo 6. Escreva um algoritmo que exiba os números de 1 a 100 em ordem decrescente algoritmo "numeros_100_a_1" var numero : inteiro inicio // Seção de Comandos para numero de 100 ate 1 passo -1 faca escreval(numero) fimpara fimalgoritmo 7. Escreva um algoritmo que calcule o IMC (Indice de Massa Corporal) de uma pessoa e exiba na tela em que categoria ela está segundo o quadro abaixo. algoritmo "calculo_imc_categoria" var imc,peso,altura : real sexo : caractere inicio // Seção de Comandos escreva("Digite seu peso: ") leia(peso) escreva("Digite sua altura: ") leia(altura) escreva("Digite seu sexo: ") leia(sexo) imc <- peso / (altura * altura) escreval("Seu IMC é ",imc) escolha sexo caso "M","masculino" se imc < 20.7 entao escreval("Você está abaixo do peso") senao se ((imc >= 20.7) e (imc < 26.4)) entao escreval("Você está com o peso normal") senao se ((imc >= 26.4) e (imc < 27.8)) entao escreval("Você está marginalmente acima do peso") senao se ((imc >= 27.8) e (imc < 31.1)) entao escreval("Você está acima do peso") senao se imc > 31.1 entao escreval("Você está obeso") fimse fimse fimse fimse fimse caso "F","feminino" se imc < 19.1 entao escreval("Você está abaixo do peso") senao se ((imc >= 19.1) e (imc < 25.8)) entao escreval("Você está com o peso normal") senao se ((imc >= 25.8) e (imc < 27.3)) entao escreval("Você está marginalmente acima do peso") senao se ((imc >= 27.3) e (imc < 32.3)) entao escreval("Você está acima do peso") senao se imc > 32.3 entao escreval("Você está obeso") fimse fimse fimse fimse fimse fimescolha fimalgoritmo 8. Escreva um algoritmo que exiba os números de 1 a 1000 que são pares. algoritmo "numeros_pares_1_a_1000" var numero : inteiro inicio // Seção de Comandos para numero de 1 ate 1000 passo 1 faca se numero % 2 = 0 entao escreval(numero) fimse fimpara fimalgoritmo 9. Escreva um algoritmo que exiba os números de 1 a 100 que são divisíveis por 5. algoritmo "numeros_divisiveis_5_de_1_a_100" var numero : inteiro inicio // Seção de Comandos para numero de 1 ate 100 passo 1 faca se numero % 5 = 0 entao escreval(numero) fimse fimpara fimalgoritmo 10. Faça um algoritmo que exiba na tela todos os números ímpares entre 100 e 200. algoritmo "numeros_impares_de_100_a_200" var numero : inteiro inicio // Seção de Comandos para numero de 100 ate 200 passo 1 faca se nao(numero % 2 = 0) entao escreval(numero) fimse fimpara fimalgoritmo 11. Faça um algoritmo que leia 15 números inteiros e, para cada um deles, exiba o antecessor, o sucessor, o dobro e o triplo. algoritmo "ant_suc_dob_trip_15_num" var contador : inteiro numero : real inicio // Seção de Comandos para contador de 1 ate 15 faca escreva("Digite o ",contador,"º numero:") leia(numero) escreval("Antecessor:",numero-1) escreval("Sucessor:",numero+1) escreval("Dobro:",numero*2) escreval("Triplo:",numero*3) fimpara fimalgoritmo 12. Faça um algoritmo que imprima na tela a tabuada de multiplicação por 6. O programa deve imprimir na primeira linha a multiplicação de 6 por 1; na segunda, de 6 por 2; e assim sucessivamente, até a décima (6 vezes 10): Exemplo: 6 x 1 = 6 .... 6 x 10 = 60 algoritmo "tabuada_multiplicacao_6" var numero,resultado : inteiro inicio // Seção de Comandos para numero de 1 ate 10 passo 1 faca resultado <- 6 * numero escreval("6 x",numero," =",resultado) fimpara fimalgoritmo 13. Faça um algoritmo que receba duas notas de um aluno e calcule a média das notas e exiba se o aluno foi aprovado ou reprovado. Faça isso para 20 alunos. algoritmo "Resultado_notas_20_alunos" var contador : inteiro nota1,nota2,media : real inicio // Seção de Comandos para contador de 1 ate 20 passo 1 faca escreva("Digite a primeira nota: ") leia(nota1) escreva("Digite a segunda nota: ") leia(nota2) media <- (nota1 + nota2)/2 se media >= 6 entao escreval("Aluno aprovado com media ",media) senao escreval("Aluno reprovado com media ",media) fimse fimparafimalgoritmo 14. Altere o algoritmo anterior de forma que leia as notas dos vinte alunos e, ao final, apenas imprima as quantidades de aprovados e de reprovados. algoritmo "Resultado_aprovados_reprovados_20_alunos" // Função : // Autor : // Data : 4/12/2015 // Seção de Declarações var contador,aprovados,reprovados : inteiro nota1,nota2,media : real inicio // Seção de Comandos aprovados <- 0 reprovados <- 0 para contador de 1 ate 20 passo 1 faca escreval("Digite as notas do aluno",contador) escreva("Digite a primeira nota: ") leia(nota1) escreva("Digite a segunda nota: ") leia(nota2) media <- (nota1 + nota2)/2 se media >= 6 entao aprovados <- aprovados + 1 senao reprovados <- reprovados + 1 fimse fimpara escreval("O numero de aprovados foi:",aprovados) escreval("O numero de reprovados foi:",reprovados) fimalgoritmo 15. Faça um algoritmo que solicite a digitação da idade e do sexo de uma pessoa (o sexo deve ser F ou M) e depois pergunte se o usuário deseja informar uma nova pessoa. Esse processo deve se repetir até que o usuário informe que não deseja mais informar novas pessoas. Quando isso acontecer, o algoritmo deve imprimir na tela a quantidade de pessoas do sexo masculino informadas; a quantidade de pessoas do sexo feminino informadas; a média das idades informadas para pessoas de sexo masculino; e a média das idades informadas para pessoas de sexo feminino. algoritmo "masc_fem" // Função : // Autor : // Data : 25/11/2016 // Seção de Declarações var sexo : caractere condicao : inteiro homem,mulher,somaidh,somaidm,idade : inteiro medh,medm : real inicio // Seção de Comandos condicao <- 1 homem <- 0 mulher <- 0 somaidh <- 0 somaidm <- 0 enquanto condicao = 1 faca escreva("Digite M para masculino e F para Feminino:") leia(sexo) escolha sexo caso "M","masculino" homem <- homem + 1 escreva("Digite a sua idade:") leia(idade) somaidh <- somaidm + idade caso "F","feminino" mulher <- mulher + 1 escreva("Digite a sua idade:") leia(idade) somaidm <- somaidf + idade fimescolha escreva("Voce deseja sair ? 0 - Sim, 1 - Não:") leia(condicao) fimenquanto medh <- somaidh/homem medm <- somaidm/mulher escreval("Quantidade de pessoas do sexo masculino:",homem) escreval("Quantidade de pessoas do sexo feminino:",mulher) escreval("A média de idade dos homens é:",medh) escreval("A média de idade das mulheres é:",medm) fimalgoritmo 16. Faça um algoritmo que simule um saque no caixa eletrônico. Nesse caixa eletrônico pode ser realizado três operações: saque, deposito e verificar o saldo. O cliente já terá disponível R$ 100 reais de saldo. O algoritmo receberá como entrada a operação a ser realizada e o valor da operação caso seja saque ou deposito ou para verificar o saldo basta exibir na tela o valor disponível para saque e o algoritmo somente será encerrado caso uma operação diferente seja escolhida. algoritmo "caixa_eletronico" // Função : // Autor : // Data : 25/11/2016 // Seção de Declarações var operacao : caractere saldo,valor : real inicio // Seção de Comandos saldo <- 100 operacao <- "saldo" enquanto ((operacao = "saldo") ou (operacao = "saque") ou (operacao = "deposito")) faca escreval("Digite a operação que deseja realizar") escreval("Saque, Deposito, Saldo") leia(operacao) escolha(operacao) caso "Saque" escreva("Digite o valor que deseja sacar:") leia(valor) se valor < saldo entao saldo <- saldo - valor senao escreval("Saldo insuficiente") fimse caso "Deposito" escreva("Digite o valor que deseja depositar:") leia(valor) saldo <- saldo + valor caso "Saldo" escreval("Seu saldo é:",saldo) fimescolha fimenquanto fimalgoritmo
Compartilhar