Exercícios sobre Funções » Computer Science Master
Post category:Exercícios / Exercícios de Lógica de Programação
Nesse post você vai praticar sua lógica de programação construindo funções. A construção de funções é um conceito muito importante dentro do contexto da programação, dado que elas podem deixar seu código mais organizado e modularizado, facilitando assim a refatoração. Veja sugestões para resolução desses problemas no link no final da postagem.
Uma boa dica para resolver exercícios sobre funções é que você precisa reestruturas sua forma de pensamento para modularizar os seus objetivos. Pense: Nessa função, o que preciso de entrada? o que deve sair? como fazer essa ação?
Essas perguntas podem ajudar muito a resolver os exercícios propostos
Construa as funções em programas separados para cada exercício a seguir ;
A interpretação do exercício e como resolve-lo faz parte do exercício;
Você poderá utilizar IDE's de programação como o DEV cpp, NetBeans, Eclipse, jupyter notebook, Etc, mas lembre-se o risco de se acomodar com as comodidades da IDE é seu;
DICA: Coloque um cabeçalho padrão (comentado) em cada arquivo com seu nome e o enunciado do exercício que está sendo resolvido;
Fácil 1. Faça uma função que recebe por parâmetro o raio de uma esfera e calcula o seu volume (v = 4/3.P .R3).
Intermediário 2. Escreva um procedimento que recebe as 3 notas de um aluno por parâmetro e uma letra. Se a letra for A o procedimento calcula a média aritmética das notas do aluno, se for P, a sua média ponderada (pesos: 5, 3 e 2) e se for H, a sua média harmônica. A média calculada também deve retornar por parâmetro.
Intermediário 3. Faça uma função que recebe por parâmetro um valor inteiro e positivo e retorna o valor lógico Verdadeiro caso o valor seja primo e Falso em caso contrário.
Intermediário4. Faça um procedimento que recebe por parâmetro os valores necessário para o cálculo da fórmula de báskara e retorna, também por parâmetro, as suas raízes, caso seja possível calcular.
Fácil 5. Faça uma função que recebe por parâmetro o tempo de duração de uma fábrica expressa em segundos e retorna também por parâmetro esse tempo em horas, minutos e segundos.
Fácil 6. Faça uma função que recebe a idade de uma pessoa em anos, meses e dias e retorna essa idade expressa em dias.
Difícil 7. Faça uma função que verifique se um valor é perfeito ou não. Um valor é dito perfeito quando ele é igual a soma dos seus divisores excetuando ele próprio. (Ex: 6 é perfeito, 6 = 1 + 2 + 3, que são seus divisores). A função deve retornar um valor booleano.
Intermediário 8. Faça um procedimento que recebe a idade de um nadador por parâmetro e retorna , também por parâmetro, a categoria desse nadador de acordo com a tabela abaixo:
5 a 7 anos Infantil A
8 a 10 anos Infantil B
11-13 anos Juvenil A
14-17 anos Juvenil B
Maiores de 18 anos (inclusive) Adulto
Fácil 9. Faça uma função que recebe um valor inteiro e verifica se o valor é positivo ou negativo. A função deve retornar um valor booleano.
Fácil 10. Faça uma função que recebe um valor inteiro e verifica se o valor é par ou ímpar. A função deve retornar um valor booleano.Fácil 11. Faça uma função que recebe a média final de um aluno por parãmetro e retorna o seu conceito, conforme a tabela abaixo:
Nota Conceito
de 0,0 a 4,9 D
de 5,0 a 6,9 C
de 7,0 a 8,9 B
de 9,0 a 10,0 A
Intermediário 12. Faça uma função que recebe, por parâmetro, a altura (alt) e o sexo de uma pessoa e retorna o seu peso ideal. Para homens, calcular o peso ideal usando a fórmula peso ideal = 72.7 x alt – 58 e, para mulheres, peso ideal = 62.1 x alt – 44.7.
Intermediário 13. Faça um procedimento que recebe 3 valores inteiros por parâmetro e retorna-os ordenados em ordem crescente.
Difícil 14. Faça um procedimento que recebe, por parâmetro, a hora de inicio e a hora de término de um jogo, ambas subdivididas em 2 valores distintos: horas e minutos. O procedimento deve retornar, também por parâmetro, a duração do jogo em horas e minutos, considerando que o tempo máximo de duração de um jogo é de 24 horas e que o jogo pode começar em um dia e terminar no outro.
Fácil 15. Escreva um procedimento que recebes 3 valores reais X, Y e Z e que verifique se esses valores podem ser os comprimentos dos lados de um triângulo e, neste caso, retornar qual o tipo de triângulo formado. Para que X, Y e Z formem um triângulo é necessário que a seguinte propriedade seja satisfeita: o comprimento de cada lado de um triângulo é menor do que a soma do comprimento dos outros dois lados. O procedimento deve identificar o tipo de triângulo formado observando as seguintes definições:
Triângulo Equilátero: os comprimentos dos 3 lados são iguais.
Triângulo Isósceles: os comprimentos de 2 lados são iguais.
Triângulo Escaleno: os comprimentos dos 3 lados são diferentes.
Fácil 16. A prefeitura de uma cidade fez uma pesquisa entre os seus habitantes, coletando dados sobre o salário e número de filhos. Faça um procedimento que leia esses dados para um número não determinado de pessoas e retorne a média de salário da população, a média do número de filhos, o maior salário e o percentual de pessoas com salário até R$350,00.
Fácil 17. Faça uma função que leia um número não determinado de valores positivos e retorna a média aritmética dos mesmos.
Fácil 18. Faça uma função que receba um valor inteiro e positivo e calcula o seu fatorial.
Fácil 19. Faça um procedimento que lê 50 valores inteiros e retorna o maior e o menor deles.
Fácil 20. Faça um procedimento que recebe, por parâmetro, um valor N e calcula e escreve a tabuada de 1 até N. Mostre a tabuada na forma:
1 x N = N 2 x N = 2N ... N x N = N2
Fácil 21. Faça uma função que recebe, por parâmetro, um valor inteiro e positivo e retorna o número de divisores desse valor.
Fácil 22. Escreva uma função que recebe, por parâmetro, um valor inteiro e positivo e retorna o somatório desse valor.
Difícil 23. Escreva uma função que recebe por parâmetro um valor inteiro e positivo N e retorna o valor de S
S = 1 + ½ + 1/3 + ¼ + 1/5 + 1/N.
Difícil 24. Escreva uma função que recebe por parâmetro um valor inteiro e positivo N e retorna o valor de S.
S = 1 + 1/1! + ½! + 1/3! + 1 /N!
Difícil 25. Escreva uma função que recebe por parâmetro um valor inteiro e positivo N e retorna o valor de S.
S = 2/4 + 5/5 + 10/6 + 17/7 + 26/8 + ... +(n2+1)/(n+3)
Difícil 26. Escreva uma função que calcule o valor do co-seno de x através de 20 termos da série seguinte:
co-seno(x) = 1 - x2 + x4 - x6 + ....   2! 4! 6!
Difícil 27. Escreva uma função que recebe, por parâmetro, dois valores X e Z e calcula e retorna Xz . (sem utilizar funções ou operadores de potência prontos)
Algumas sugestões de respostas para os exercícios sobre funções estão no nosso github. Acesse agora: