• Nenhum resultado encontrado

Métodos (1)

N/A
N/A
Protected

Academic year: 2021

Share "Métodos (1)"

Copied!
43
0
0

Texto

(1)(2)

Até agora vimos

● Tipos primitivos

● Operadores aritméticos, relacionais e lógicos

● Classes String e Math

● Entrada e saída de dados (System.out e Scanner)

● Estruturas condicionais (if-else)

● Estruturas de seleção múltipla (switch-case)

● Estruturas de repetição (while, do-while, for)

● Array( variável composta homogênea)

(3)
(4)

Receita de bolo de cenoura

1. No liquidificador colocar os ovos, o óleo e as cenouras

2. Bater por 3 minutos

3. Em uma vasilha a parte colocar a farinha, o fermento e o açúcar

4. Misturar os ingredientes secos com o conteúdo do liquidificador e

mexer bem

5. Levar ao microonda por 10 minutos (em fôrma apropriada)

6. Para fazer a calda leve a margarina, o chocolate em pó, o leite e o

açúcar ao fogo

7. Mexer sempre até engrossar (tomando cuidado para não queimar)

8. Colocar a calda em cima do bolo ainda quente

4

(5)

E se eu quiser fazer dois bolos, um de cenoura e

outro de massa branca, mas os dois com a

(6)

Receita de bolo de cenoura

1. No liquidificador colocar os ovos, o óleo e as cenouras

2. Bater por 3 minutos

3. Em uma vasilha a parte colocar a farinha, o fermento e o açúcar

4. Misturar os ingredientes secos com o conteúdo do liquidificador e

mexer bem

5. Levar ao microonda por 10 minutos (em fôrma apropriada)

6. Para fazer a calda leve a margarina, o chocolate em pó, o leite e o

açúcar ao fogo

7. Mexer sempre até engrossar (tomando cuidado para não queimar)

8. Colocar a calda em cima do bolo ainda quente

6

(7)

Podemos agrupar os passos em subrotinas e

reutilizá-los em outras receitas

(8)

Preparar a massa

1. No liquidificador colocar os ovos, o óleo e as cenouras

2. Bater por 3 minutos

3. Em uma vasilha a parte colocar a farinha, o fermento e o açúcar

4. Misturar os ingredientes secos com o conteúdo do liquidificador e

mexer bem

5. Levar ao microonda por 10 minutos (em fôrma apropriada)

(9)

Preparar a calda

1. Para fazer a calda leve a margarina, o chocolate em pó, o leite e o

açúcar ao fogo

(10)

Montar o bolo

1. Colocar a calda em cima do bolo ainda quente

(11)

Subrotinas para fazer um bolo

1. Preparar a massa 2. Preparar a calda 3. Montar o bolo

Cada subrotina tem um conjunto

de passos para alcançar um

(12)

Em Java subrotinas, funções ou procedimentos

são chamados de

métodos

(13)

O que são métodos?

● Estrutura que agrupa um bloco de comandos com um

objetivo específico

● Podem ser acessados a qualquer momento e em

qualquer lugar do programa

● Promovem organização e reusabilidade do código

● Até agora aprendemos a colocar todos os passos de um

programa em um único método (main). Agora, vamos

começar a criar e chamar nossos próprios métodos

(14)

14

public class Teste {

public static void main(String[] args) {

System.out.println("Imprimindo a mensagem 1 vez");

System.out.println("---"); System.out.println("Bem vindo ao programa!"); System.out.println("---");

System.out.println("Imprimindo a mensagem 5 vezes"); for(int i = 0; i < 5; i++) {

System.out.println("---"); System.out.println("Bem vindo ao programa!"); System.out.println("---"); }

} }

(15)

public class Teste{

public static void mensagem() {

System.out.println("---"); System.out.println("Bem vindo ao programa!"); System.out.println("---"); }

public static void main(String[] args) {

System.out.println("Imprimindo a mensagem 1 vez"); mensagem();

System.out.println("Imprimindo a mensagem 5 vezes"); for(int i = 0; i < 5; i++) {

mensagem(); }

(16)

16

public class Teste{

public static void mensagem() {

System.out.println("---"); System.out.println("Bem vindo ao programa!"); System.out.println("---"); }

public static void main(String[] args) {

System.out.println("Imprimindo a mensagem 1 vez"); mensagem();

System.out.println("Imprimindo a mensagem 5 vezes"); for(int i = 0; i < 5; i++) { mensagem(); } } }

Chamada

de método

Declaração

de método

(17)

Partes

public static void mensagem() {

System.out.println("---");

System.out.println("Bem vindo ao programa!");

System.out.println("---");

}

(18)

Partes

18

public static void mensagem() {

System.out.println("---");

System.out.println("Bem vindo ao programa!");

System.out.println("---");

}

assunto das próximas aulas ;)

(19)

Partes

public static void mensagem() {

System.out.println("---");

System.out.println("Bem vindo ao programa!");

System.out.println("---");

}

Tipo do retorno

(20)

Partes

20

public static void mensagem() {

System.out.println("---");

System.out.println("Bem vindo ao programa!");

System.out.println("---");

}

nome do método

Procurem usar nomes intuitivos sobre a

tarefa (rotina) que aquele método executa

(21)

Partes

public static void mensagem() {

System.out.println("---");

System.out.println("Bem vindo ao programa!");

System.out.println("---");

}

Passagem de parâmetros

Mesmo que o método não receba

parâmetros, temos que colocar os

(22)

Exercício resolvido

Faça um programa em Java que leia duas notas do teclado,

calcule e imprima na tela a média aritmética dessas duas

notas

(23)

import java.util.Scanner;

public class Notas{

public static void main(String[] args) { Scanner t = new Scanner(System.in);

System.out.println("Digite a primeira nota"); double nota1 = t.nextDouble();

System.out.println("Digite a segunda nota"); double nota2 = t.nextDouble();

t.close();

double media = (nota1 + nota2)/2;

System.out.println("A média é " + media); }

(24)

E se eu quiser fazer um método pra calcular a

média?

24

nota1

(25)

E se eu quiser fazer um método pra calcular a

média?

nota1

nota2

media

Esse método vai precisar receber como

entrada as duas notas e devolver a média

Entradas

(26)

Método calcMediaArit

26

public static double calcMediaArit(double n1, double n2) {

double media = (n1 + n2)/2;

return media;

}

(27)

Método calcMediaArit

public static double calcMediaArit(double n1, double n2) {

double media = (n1 + n2)/2;

return media;

}

Tipo do retorno

palavra reservada que indica o retorno

Tipos dos parâmetros (entradas do método)

(28)

Chamando o método calcMediaArit

28

public static void main(String[] args) {

Scanner t = new Scanner(System.in);

System.out.println("Digite a primeira nota");

double nota1 = t.nextDouble();

System.out.println("Digite a segunda nota");

double nota2 = t.nextDouble();

t.close();

double media = calcMediaArit(nota1, nota2);

System.out.println("A média é " + media);

}

(29)

Ou, podemos chamar assim, por exemplo

public static void main(String[] args) {

double media = calcMediaArit(8.65, 6.5);

System.out.println("A média é " + media);

}

(30)

E se quisermos fazer um método pra ler as duas

notas?

30

[nota1, nota2]

Java não permite que um método tenha mais

de 1 retorno. Logo, a solução e retornar um

array com duas variáveis do tipo double

Saída

Esse método não recebe parâmetros (entradas) e retorna dois

números reais

(31)

Método lerNotas

public static double[] lerNotas() { double[] notas = new double[2];

Scanner t = new Scanner(System.in);

System.out.println("Digite a primeira nota"); notas[0] = t.nextDouble();

System.out.println("Digite a segunda nota"); notas[1] = t.nextDouble();

t.close(); return notas; }

(32)

Método main chamando os dois novos métodos

32

public static void main(String[] args) {

double[] notas = lerNotas();

double media = calcMediaArit(notas[0], notas[1]);

System.out.println("A média é " + media);

(33)

Antes e depois

public static void main(String[] args) { Scanner t = new Scanner(System.in);

System.out.println("Digite a primeira nota"); double nota1 = t.nextDouble();

System.out.println("Digite a segunda nota"); double nota2 = t.nextDouble();

t.close();

double media = (nota1 + nota2)/2;

System.out.println("A média é " + media); }

public static void main(String[] args) { double[] notas = lerNotas();

double media = calcMediaArit(notas[0], notas[1]); System.out.println("A média é " + media);

(34)

E ainda podemos melhorar ;)

34

public static double calcMediaArit(double[] notas) { double soma = 0;

double media = 0;

for(int i = 0; i < notas.length; i++) { soma = soma + notas[i];

}

media = soma/notas.length; return media;

(35)

Método main atualizando a chamada de

calcMediaArit

public static void main(String[] args) { double[] notas = lerNotas();

double media = calcMediaArit(notas);

System.out.println("A média é " + media); }

(36)

E ainda melhorar o método lerNotas()

36

[nota1, nota2]

Saída Entrada

numeroNotas

(37)

Novo método lerNotas(numeroNotas)

public static double[] lerNotas(int numeroNotas) { double[] notas = new double[numeroNotas];

Scanner t = new Scanner(System.in); for(int i = 0; i < numeroNotas; i++) {

System.out.println("Digite a nota " + (i + 1)); notas[i] = t.nextDouble(); } t.close(); return notas; }

(38)

Método main atualizando a chamada de lerNotas

38

public static void main(String[] args) { double[] notas = lerNotas(2);

double media = calcMediaArit(notas);

System.out.println("A média é " + media); }

(39)

import java.util.Scanner; public class Notas{

public static double calcMediaArit(double[] notas) { double soma = 0;

double media = 0;

for(int i = 0; i < notas.length; i++) { soma = soma + notas[i];

}

media = soma/notas.length; return media;

}

public static double[] lerNotas(int numeroNotas) { double[] notas = new double[numeroNotas]; Scanner t = new Scanner(System.in); for(int i = 0; i < numeroNotas; i++) {

System.out.println("Digite a nota " + (i + 1)); notas[i] = t.nextDouble(); } t.close(); return notas; }

public static void main(String[] args) { double[] notas = lerNotas(2);

(40)

Exercício 1

● Faça um método que lê um número do teclado e imprime

1 na tela se esse número for positivo e 0 caso contrário

● Chame esse método no main

(41)

Exercício 2

● Faça um método que, para cada par de inteiros recebidos

como entrada, ele determina se o primeiro inteiro é

múltiplo do segundo inteiro

● Chame esse método no main com os seguintes pares

○ 3 e 6

○ 5 e 12

○ 12 e 4

(42)

Exercício 3

● Continue o programa dado como exemplo durante a aula

e adicione um método que recebe como parâmetro a

média aritmética das notas e retorna a situação do aluno

○ Menor que 3 -> “Reprovado”

○ Entre 3 e 7 -> “Exame final”

○ Maior ou igual a 7 -> “Aprovado”

● Chame o método no main e imprima o retorno do método

na tela

(43)

O que vimos hoje?

● O que são métodos e para quê servem

● Como declarar métodos

● Passagem de parâmetros

● Retorno

Referências

Documentos relacionados

Terá garantia de emprego ou salário o empregado em idade de prestação de serviço militar obrigatório,desde o exame de seleção que o considerar apto a se incorporar,

Ela se aplica à violência doméstica que cause morte, lesão, sofrimento físico (violência física), sexual (violência sexual), psicológico (violência psicológica)

No setor de processamento, todas as lâminas deverão ser registradas em um livro de registro específico, com as seguintes informações: número de regis- tro do laboratório, unidade

O primeiro consistiu em avaliar a influência da variação das fontes de excitação térmica do ensaio termográfico por reflexão, na obtenção das

Sempre que encontrar uma peça na placa de base, colocar uma de suas peças em cima dela, para construir uma pequena torre..

a) A seleção será realizada em duas etapas: a primeira que constará de uma entrevista e uma segunda onde será realizada uma prova escrita de química e analise curricular. b)

Sorvete artesanal de cumaru de cheiro, acompanhado de bolo de mandioca da casa e calda de lambedor..

14.8. Em caso de desistência da empresa vencedora da presente licitação, o Consórcio, a critério do Presidente, poderá aplicar qualquer uma das sanções previstas pelo Art.