Exercícios

Funções

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

Regras

  • 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:    

IdadeCategoria
5 a 7 anosInfantil A
8 a 10 anosInfantil B
11-13 anosJuvenil A
14-17 anosJuvenil 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:  

NotaConceito
de 0,0 a 4,9D
de 5,0 a 6,9C
de 7,0 a 8,9B
de 9,0 a 10,0A


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)

Respostas

ATENÇÃO: as respostas dos exercícios ainda estão em construção, caso você queira contribuir fique a vontade para fazer um pull request em nosso github.

Algumas sugestões de respostas para os exercícios sobre funções estão no nosso github. Acesse agora:

Esse post foi modificado em 23 de novembro de 2021 18:47

Ver comentários

This website uses cookies.