Fun Coes

4
1 3ª Aula Prática – Funções e Procedimentos Uma função é um bloco de instruções que é executado quando ela é chamada de algum outro ponto do programa. Seu formato é o seguinte: tipo_de_valor_de_retorno nome_da_função (lista_de_parâmetros) { declarações e instruções } Onde: tipo_de_valor_de_retorno é o tipo do resultado (valor) retornado pela função (Exemplo: int, float, char). O tip_ de_valor_de_retorno void indica que a função não retorna um valor; nome_da_função é qualquer identificador válido e corresponde ao nome pelo qual será possível chamar a função; lista_de_parâmetros é uma lista separada por vírgulas na qual a função determina o tipo e o nome dos seus parâmetros, por exemplo, int x. Cada parâmetro funciona dentro da função como qualquer outra variável. Exemplo 1: Função que calcula a área de um retângulo. #include <stdio.h> float area(float b, float h){ float a; a = b * h; return a; } main(){ float resp; resp = area(10, 15); printf("A área do retângulo é: %.2f", resp); } <<saída>> A área do retângulo é: 150.00 Neste exemplo, ao chamar a função area (destacado em amarelo) a variável b recebe o UNIVERSIDADE FEDERAL DOS VALES DO JEQUITINHONHA E MUCURI INSTITUTO DE CIÊNCIA E TECNOLOGIA CTD141 – ALGORITMOS E PROGRAMAÇÃO

description

Funçoes de uma variavel

Transcript of Fun Coes

Page 1: Fun Coes

1

3ª Aula Prática – Funções e Procedimentos Uma função é um bloco de instruções que é executado quando ela é chamada de algum outro ponto do programa. Seu formato é o seguinte:

tipo_de_valor_de_retorno nome_da_função (lista_de_parâmetros) { declarações e instruções

}

Onde:

� tipo_de_valor_de_retorno é o tipo do resultado (valor) retornado pela função (Exemplo: int, float, char). O tip_ de_valor_de_retorno void indica que a função não retorna um valor;

� nome_da_função é qualquer identificador válido e corresponde ao nome pelo

qual será possível chamar a função;

� lista_de_parâmetros é uma lista separada por vírgulas na qual a função determina o tipo e o nome dos seus parâmetros, por exemplo, int x. Cada parâmetro funciona dentro da função como qualquer outra variável.

Exemplo 1: Função que calcula a área de um retângulo. #include <stdio.h>

float area(float b, float h){

float a;

a = b * h;

return a;

}

main(){

float resp;

resp = area(10, 15);

printf("A área do retângulo é: %.2f", resp);

}

<<saída>>

A área do retângulo é: 150.00

Neste exemplo, ao chamar a função area (destacado em amarelo) a variável b recebe o

UNIVERSIDADE FEDERAL DOS VALES DO JEQUITINHONHA E MUCURI INSTITUTO DE CIÊNCIA E TECNOLOGIA CTD141 – ALGORITMOS E PROGRAMAÇÃO

Page 2: Fun Coes

2

valor 10 e a variável h recebe o valor 15. Em seguida, a função realiza os cálculos e retorna o valor 150, que é atribuído à variável resp. float area(float b, float h)

150

resp = area( 10, 15);

Exemplo 2: Programa que calcula a área e o perímetro de um retângulo. #include <stdio.h>

float area(float b, float h){

float a;

a = b * h;

return a;

}

float perimetro(float b, float h){

float p;

p = 2*b + 2*h;

return p;

}

main(){

float base, altura, valor_area, valor_perimetro;

printf("Digite o valor da base: ");

scanf("%f", &base);

printf("Digite o valor da altura: ");

scanf("%f", &altura);

valor_area = area(base, altura);

valor_perimetro = perimetro(base, altura);

printf("A área do retângulo é: %.2f \n", valor_area);

printf("O perímetro do retângulo é: %.2f \n", valor_perimetro);

}

OBS: As funções permitem ao programador modularizar um programa, dividindo as tarefas a serem realizadas em diferentes blocos. Quando a instrução

return expressão;

é executada, a função avalia a expressão e depois devolve o valor resultante. Caso a função não retorne nenhum valor (o tipo de retorno é void) a instrução acima será alterada para:

return;

Funções que não retornam um valor são denominadas procedimentos em C.

Page 3: Fun Coes

3

Exercícios 1. Crie uma função que recebe como parâmetros o peso e a altura de uma pessoa e

retorna como resultado o valor do IMC. A fórmula para cálculo do IMC é:

IMC =2)altura(

peso

Em seguida, desenvolva um programa que lê o peso (kg) e a altura (m) de uma pessoa (enquanto o usuário não desejar sair do programa) e imprime o seu Índice de Massa Corporal (IMC).

2. Normalmente o valor do Índice de Massa Corporal (IMC) é utilizado para indicar se

uma pessoa está ou não acima do peso. Crie uma função, no programa anterior, que recebe como parâmetro o valor do IMC e imprime uma mensagem que infere sobre o peso da pessoa, conforme tabela a seguir.

IMC Mensagem

518,IMC < Abaixo do peso 25518 ≤≤ IMC, Peso normal

3025 ≤< IMC Acima do peso 30>IMC Obeso

3. Escreva uma função que recebe as 3 notas de um aluno por parâmetro e uma letra.

Se a letra for A, a função calcula a média aritmética das notas do aluno, se for P, a sua média ponderada (pesos 5, 3 e 2, nesta ordem) e se for H, a sua média harmônica. A função deverá retornar a média calculada.

Média aritmética simples: n

x...xx n+++ 21

Média ponderada: n

nn

ppp

xp...xpxp

++

×++×+×

21

2211

Média harmônica:

nx...

xx

n

111

21

+++

onde, xn é a n-ésima nota e pn é o n-ésimo peso.

4. Faça uma função que recebe a média final de um aluno por parâmetro e retorne o

seu conceito, conforme a tabela abaixo:

Nota Conceito Abaixo de 5.0 D

De 5.0 até 7.0 (não incluindo 7.0) C De 7.0 até 9.0 (não incluindo 9.0) B

A partir de 9.0 A

Page 4: Fun Coes

4

5. Faça um programa que lê as 3 notas obtidas por cada aluno de uma turma e,

imprime a média aritmética e o conceito do aluno no semestre (considere que a turma é composta por 30 alunos). Para tanto, utilize as funções desenvolvidas nos exercícios 3 e 4.

6. Escreva uma função potencia(base, expoente) que retorna o valor de baseexpoente .

Por exemplo, potencia(3, 4) = 3 * 3 * 3 * 3. Assuma que expoente seja um valor inteiro maior que ou igual a zero e base seja um valor inteiro. (Obs: neste exercício

não use a biblioteca matemática).

Incorpore esta função a um programa que lê os valores da base e expoente digitados pelo usuário (enquanto o valor do expoente não for negativo) e exibe o valor de baseexpoente.

7. Faça uma função que recebe, por parâmetro, o instante de inicio e o instante de término de um jogo, ambos subdivididos em 2 valores distintos: horas (no formato de 24 horas) e minutos. A função deve informar na tela a duração do jogo em horas e minutos. Considere que a duração de um jogo é sempre inferior a 24 horas e que o jogo pode começar em um dia e terminar no outro. Em seguida, faça um programa para testar a função implementada.

8. Escreva uma função que exibe um quadrado de asteriscos cujo lado é especificado

por um parâmetro inteiro. Por exemplo, se o parâmetro for 4, a função exibe

**** **** **** **** Incorpore esta função a um programa que lê um valor inteiro digitado pelo usuário (enquanto este valor for diferente de zero) e exibe o quadrado de asteriscos correspondente.

Quem vê entende.

Quem faz aprende!