Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos...

13
Linguagem de programação métodos/funções Professor: Saulo Henrique Cabral Silva Instituto Federal de Minas Gerais Campus Ponte Nova

Transcript of Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos...

Page 1: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Linguagem de programação – métodos/funções

Professor: Saulo Henrique Cabral Silva

Instituto Federal de Minas Gerais Campus Ponte Nova

Page 2: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

MÉTODOS / MODULARIZANDO

2

Modularizando...

Page 3: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Métodos – “Funções” – “Sub-rotinas”

• Métodos são blocos de códigos.

• São análogos às funções em C e sub-rotinas em Fortran e Pascal.

• Geralmente correspondem à execução de uma ação específica.

• Tem o papel fundamental de evitar reescrever código para uma mesma função toda vez que for chamada.

3

Page 4: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Métodos – “Funções” – “Sub-rotinas”

• O main é um método!!! -> main () – E qual a sua responsabilidade???

• Métodos devem estar dentro de uma classe.

• Um método pode:

– Receber parâmetros – Retornar resultados – Declarar variáveis – Acessar variáveis globais – Efetuar chamadas à outros métodos

4

Page 5: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Escopo de métodos

public static void main(String args[ ]){

int x = 0;

}

5

Não existe X

Não existe X

X existe

Page 6: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Implementando um novo método

public static void nomeMetodo(tipo X, tipo Y){ return ...; } • public – protected – private Níveis de acesso.

• static Não carece de uma instância (objeto)

• void Retorno de alguma informação pelo método (Object...)

• X,Y Parâmetros necessários para a execução do método. (devemos informar o tipo)

6

Page 7: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

EXERCÍCIOS

7

Page 8: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Praticando a criação de métodos em Java

• Um determinado carro faz 12 Km por litro de gasolina. Codifique um programa que receba como entrada o tempo de uma viagem, em horas, e a velocidade média desenvolvida nessa viagem, quilômetros por hora. A seguir, o programa calcula quantos litros de gasolina foram gastos na viagem. Para solucionar o problema, crie dois métodos, um para o calculo da distância e outro para o calculo de combustível. – Distância Percorrida = Velocidade Média x Tempo

• Entrada de dados:

– Duração da viagem: 12,5 – Velocidade média: 80

• Saída do programa: – Distancia Percorrida: 1000 – Quantidade gasta de combustível: 83,33

8

Page 9: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Exercício 1

• Escreva uma função que receba dois números inteiros x e y. Essa função deve verificar se x é divisível por y. No caso positivo, a função deve retornar true (verdadeiro), caso contrário false (falso). Escreva também um programa para testar tal função.

9

Page 10: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Exercício 2

• Escreva um método que receba um número inteiro e imprima o mês correspondente ao número. Por exemplo, 2 corresponde à “fevereiro”. O Método deve mostrar uma mensagem de erro caso o número recebido não faça sentido. Gere também um programa que leia um valor e chame o Método criado.

10

Page 11: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Exercício 3

• Escreva uma função que gere um cabeçalho para um relatório. Esse procedimento deve receber um literal (string, ou cadeia de caracteres) como parâmetro. O cabeçalho tem a seguinte forma:

===================================

IFMG – INSTITUTO FEDERAL MINAS GERAIS

DISCIPLI... LINGUAGEM DE PROGRAMAÇÃO

NOME: FULANO DE TAL

===================================

11

Page 12: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.

Exercício 4

• Escreva uma função que receba um número arábico inteiro e imprima o corresponde número em romano. Por exemplo, para 5 a saída desejada é “V”. A função deve ser capaz de gerar o número romano para os 50 primeiros inteiros. Uma mensagem de erro deve ser mostrada caso um número fora dessa faixa seja recebido. Crie também um programa que leia um valor inteiro e chame o

procedimento criado acima

para a impressão do número

romano.

12

Page 13: Linguagem de programação métodos/funçõessauloifmg.com.br/Disciplinas/L1/aula4.pdf · Métodos – “Funções” – “Sub-rotinas” • Métodos são blocos de códigos.