·
Sistemas de Informação ·
Linguagens de Programação
Send your question to AI and receive an answer instantly
Recommended for you
2
Base R Cheat Sheet
Linguagens de Programação
ESPM
20
Introdução aos Arrays Bidimensionais em Programação
Linguagens de Programação
ESPM
42
Introdução aos Arrays Unidimensionais em Java
Linguagens de Programação
ESPM
19
Introdução à Linguagem R - Histórico, Interfaces e Instalação
Linguagens de Programação
ESPM
8
Métodos de Manipulação de Strings - Exercícios de Programação em Java
Linguagens de Programação
ESPM
20
Introdução às Janelas Gráficas em Java com JOptionPane
Linguagens de Programação
ESPM
18
Exercícios Práticos em R Markdown: Análise de Dados e Visualização
Linguagens de Programação
ESPM
14
Atividade de Revisao - Criacao e Manipulacao de Dataframe com Tidyverse em R
Linguagens de Programação
ESPM
14
Recursividade em Sistemas de Informação: Conceitos e Exemplos
Linguagens de Programação
ESPM
42
Introdução ao Array Unidimensional em Java
Linguagens de Programação
ESPM
Preview text
Sistemas de Informação ESPM Laboratório de Programação Prof Dr Antonio Marcos SELMINI antonioselminiespmbr Codificação de Métodos Sistemas de Informação ESPM Introdução Até agora os nossos programas foram codificados em um único método chamado main onde toda a atividade do programa ocorria A medida que os programas vão ficando maiores sua complexidade aumenta e portanto fica também mais difícil fazer manutenções e até mesmo entender a lógica do programa Dessa forma as linguagens de programação permitem que os usuários separem seus programas em blocos A ideia é dividir programas grandes e complexos em blocos para facilitar a sua construção e também sua manutenção Sistemas de Informação ESPM Introdução Esses blocos de construção são chamados em Java de métodos ou subrotinas ou subprogramas De forma geral em português estruturado e também em algumas linguagens de programação como Pascal e Visual Bascic são também chamados de procedimentos e funções Procedimentos e funções são subrotinas mas há uma diferença entre eles Portanto um método nada mais é do que um bloco de código independente que realiza uma atividade específica Programas que podem ser divididos em métodos blocos menores de código são ditos modulares ou estruturados Sistemas de Informação ESPM Introdução Os principais objetivos dos métodos em um programa são Dividir e estruturar um algoritmo em partes logicamente coerentes Facilidade em testar os trechos do programa em separado Maior legibilidade de um algoritmo Evitar que determinados trechos de código sejam escritos diversas vezes evitar repetição de código Sistemas de Informação ESPM Declaração de métodos A declaração de um método em Java segue o mesmo padrão adotado para o método principal do programa método main A sua forma geral é visibilidade e static não serão abordados neste momento Nem todo método será definido como static tipoderetorno é o tipo da variável que o método irá retornar será abordado mais a frente visibilidade static tipoderetorno nomeDoMétodolistadeparâmetros corpo do método Sistemas de Informação ESPM Parâmetros do método A declaraçãodeparâmetros é feita de forma semelhante a declaração de variáveis que estamos acostumados a fazer em nossos programas A grande diferença na declaração dos parâmetros é que devemos especificar o tipo para cada variável Exemplo Estas variáveis que compõem os parâmetros do método representam as entradas para o método A saída do método está especificada no tipoderetorno O corpodométodo contém as instruções que irão processar os dados de entrada parâmetros gerando as saídas do método tipo variavel1 tipo variavel2 tipo variavel3 tipo variavelN Sistemas de Informação ESPM Parâmetros do método Para que um valor seja retornado pelo método devese utilizar o comando return Quando se chega a uma declaração return o método é encerrado imediatamente e se o valor de retorno é informado o método deverá retornar o valor É importante lembrar que o valor de retorno fornecido tem que ser compatível com o tipo de retorno declarado para o método A forma geral do comando return é return valorderetorno ou returnvalorderetorno ou return Sistemas de Informação ESPM Parâmetros do método public class Exemplo public static void mainString args imprimir public static void imprimir SystemoutprintlnExemplo de um método simples método não tem retorno Se o método não tem argumentos o método não terá parâmetros método não tem parâmetros Sistemas de Informação ESPM Passagem de argumentos Variáveis declaradas em um método não são acessíveis em outro método Caso um método tenha que usar o valor de uma variável declarada em outro método quando o método é chamado seu valor deverá ser passado para o método que irá processar O processo de passar o valor de uma variável de um método para outra é chamado de passagem de argumentos Variáveis declaradas em um método são chamadas de variáveis locais ou seja o tempo de vida está restrito à execução do método Sistemas de Informação ESPM Passagem de argumentos Variáveis locais em diferentes método podem ter o mesmo nome afinal de contas são locais Quando um argumento é enviado para um método o método chamado deverá declarar uma variável parâmetro para receber o valor enviado Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 imprimirx public static void imprimirint x Systemoutprintlnx x parâmetro formal ou simplesmente parâmetro valor recebido argumento ou parâmetro real do método valor enviado x é uma variável local ao método main Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 somarx y public static void somarint x int y int r r x y SystemoutprintlnSoma r método não tem retorno x e y são variáveis locais ao método main x y e r são variáveis locais ao método somar Sistemas de Informação ESPM Exercícios de programação 1 Escreva um programa em Java que leia um valor inteiro e positivo o valor deverá ser testado O seu programa deverá imprimir no vídeo todos os divisores inteiros do valor informado pelo usuário A impressão dos valores deverá ser feito em um método 2 Escreva um programa em Java que leia três valores Caso os valores formem os lados de um triângulo imprima a sua classificação quanto aos lados Observação para que três valores formem os lados de um triângulo é necessário que cada um dos lados seja menor que a soma dos outros dois A classificação dos triângulos quanto aos lado é equilátero 3 lados iguais isósceles 2 lados iguais ou escaleno 3 lados diferentes Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 r r somarx y SystemoutprintlnSoma r public static int somarint x int y int r r x y return r método retorna um valor inteiro x y e r são variáveis locais ao método main x y e r são variáveis locais ao método somar r armazena o valor retornado pelo método Sistemas de Informação ESPM Passagem de argumentos Diferente de outras linguagens de programação a passagem de argumentos para uma método é feita apenas por valor Na passagem por valor uma cópia dos valores das variáveis é enviada para a método Alterações realizadas nos parâmetros dos métodos não alteram os valores originais Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 r r somarx y SystemoutprintlnSoma r public static int somarint x int y int r r x y returnr Parâmetros recebidos por valor Alterações nessas variáveis não alteram o valor original Passagem de argumentos por valor Apenas uma cópia dos valores é enviada para o método Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 7 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y Sistemas de Informação ESPM Exercícios de programação 3 Escreva um programa em Java que leia 3 valores inteiros O programa deverá ter um método para determinar e retornar o maior valor digitado 4 Escreva um programa em Java que leia dois valores inteiros e positivos O programa deverá calcular o MDC máximo divisor comum entre os dois valores digitados O cálculo do MDC deverá ser feito por um método que deverá retornar o valor Sistemas de Informação ESPM Passagem de arrays Os arrays são variáveis como qualquer outra em Java são declaradas e têm tipo definido Um array vetor ou matriz também pode ser passado para um método Quando for passar um array para um método devese especificar apenas o seu nome sem especificar qualquer posição Caso seja passado um elemento específico do array daí deve ser especificado o seu nome e também a posição Sistemas de Informação ESPM Passagem de arrays Exemplo declara um vetor com 5000 posições int x new int5000 chama o método somar e passa todos os valores do vetor somarx chama o método imprimir e passa o valor armazenado no índice 10 imprimirx10 Sistemas de Informação ESPM Passagem de arrays Como um método deve receber um vetor Considere o seguinte exemplo public static void funcint x no método int x new int5000 funcx Declara uma variável do mesmo tipo Não deve ser utilizado o operador new na declaração de parâmetros Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x new int5000 int total total somarx Systemoutprintlnsoma dos elementos total public static int somarint x int k total fork total 0 k xlength k total xk return total Sistemas de Informação ESPM Exercícios de programação 5 Escreva um programa em Java para calcular as raízes de uma equação do segundo grau O seu programa deverá ter um método para calcular e retornar o valor do delta e também um método para calcular e retornar as duas raízes da equação 6 Escreva um programa em Java que leia um vetor de 10 posições com valores inteiros e aleatórios Em seguida coloque os elementos do vetor em ordem crescente Sistemas de Informação ESPM Exercício extra 1 Escreva um programa em Java que preencha um array de 10 posições com valores inteiros e aleatórios Em seguida imprima no vídeo a tabuada do maior valor armazenado no array 2 Escreva um programa em Java contendo um método que calcule e retorne o valor da expressão 16 3 5 2 x x y A impressão do valor de y deverá ser no método main Sistemas de Informação ESPM Bibliografia CORNELL G HORSTMANN C A Y S Core Java Volume 1 Fundamentos 8ª ed Editora Pearson 2010 DEITEL H DEITEL P Java Como Programar 10ª ed Editora Pearson 2010 Sistemas de Informação ESPM Bibliografia COELHO A Java com orientação a objetos 1ª ed Editora LCM 2012
Send your question to AI and receive an answer instantly
Recommended for you
2
Base R Cheat Sheet
Linguagens de Programação
ESPM
20
Introdução aos Arrays Bidimensionais em Programação
Linguagens de Programação
ESPM
42
Introdução aos Arrays Unidimensionais em Java
Linguagens de Programação
ESPM
19
Introdução à Linguagem R - Histórico, Interfaces e Instalação
Linguagens de Programação
ESPM
8
Métodos de Manipulação de Strings - Exercícios de Programação em Java
Linguagens de Programação
ESPM
20
Introdução às Janelas Gráficas em Java com JOptionPane
Linguagens de Programação
ESPM
18
Exercícios Práticos em R Markdown: Análise de Dados e Visualização
Linguagens de Programação
ESPM
14
Atividade de Revisao - Criacao e Manipulacao de Dataframe com Tidyverse em R
Linguagens de Programação
ESPM
14
Recursividade em Sistemas de Informação: Conceitos e Exemplos
Linguagens de Programação
ESPM
42
Introdução ao Array Unidimensional em Java
Linguagens de Programação
ESPM
Preview text
Sistemas de Informação ESPM Laboratório de Programação Prof Dr Antonio Marcos SELMINI antonioselminiespmbr Codificação de Métodos Sistemas de Informação ESPM Introdução Até agora os nossos programas foram codificados em um único método chamado main onde toda a atividade do programa ocorria A medida que os programas vão ficando maiores sua complexidade aumenta e portanto fica também mais difícil fazer manutenções e até mesmo entender a lógica do programa Dessa forma as linguagens de programação permitem que os usuários separem seus programas em blocos A ideia é dividir programas grandes e complexos em blocos para facilitar a sua construção e também sua manutenção Sistemas de Informação ESPM Introdução Esses blocos de construção são chamados em Java de métodos ou subrotinas ou subprogramas De forma geral em português estruturado e também em algumas linguagens de programação como Pascal e Visual Bascic são também chamados de procedimentos e funções Procedimentos e funções são subrotinas mas há uma diferença entre eles Portanto um método nada mais é do que um bloco de código independente que realiza uma atividade específica Programas que podem ser divididos em métodos blocos menores de código são ditos modulares ou estruturados Sistemas de Informação ESPM Introdução Os principais objetivos dos métodos em um programa são Dividir e estruturar um algoritmo em partes logicamente coerentes Facilidade em testar os trechos do programa em separado Maior legibilidade de um algoritmo Evitar que determinados trechos de código sejam escritos diversas vezes evitar repetição de código Sistemas de Informação ESPM Declaração de métodos A declaração de um método em Java segue o mesmo padrão adotado para o método principal do programa método main A sua forma geral é visibilidade e static não serão abordados neste momento Nem todo método será definido como static tipoderetorno é o tipo da variável que o método irá retornar será abordado mais a frente visibilidade static tipoderetorno nomeDoMétodolistadeparâmetros corpo do método Sistemas de Informação ESPM Parâmetros do método A declaraçãodeparâmetros é feita de forma semelhante a declaração de variáveis que estamos acostumados a fazer em nossos programas A grande diferença na declaração dos parâmetros é que devemos especificar o tipo para cada variável Exemplo Estas variáveis que compõem os parâmetros do método representam as entradas para o método A saída do método está especificada no tipoderetorno O corpodométodo contém as instruções que irão processar os dados de entrada parâmetros gerando as saídas do método tipo variavel1 tipo variavel2 tipo variavel3 tipo variavelN Sistemas de Informação ESPM Parâmetros do método Para que um valor seja retornado pelo método devese utilizar o comando return Quando se chega a uma declaração return o método é encerrado imediatamente e se o valor de retorno é informado o método deverá retornar o valor É importante lembrar que o valor de retorno fornecido tem que ser compatível com o tipo de retorno declarado para o método A forma geral do comando return é return valorderetorno ou returnvalorderetorno ou return Sistemas de Informação ESPM Parâmetros do método public class Exemplo public static void mainString args imprimir public static void imprimir SystemoutprintlnExemplo de um método simples método não tem retorno Se o método não tem argumentos o método não terá parâmetros método não tem parâmetros Sistemas de Informação ESPM Passagem de argumentos Variáveis declaradas em um método não são acessíveis em outro método Caso um método tenha que usar o valor de uma variável declarada em outro método quando o método é chamado seu valor deverá ser passado para o método que irá processar O processo de passar o valor de uma variável de um método para outra é chamado de passagem de argumentos Variáveis declaradas em um método são chamadas de variáveis locais ou seja o tempo de vida está restrito à execução do método Sistemas de Informação ESPM Passagem de argumentos Variáveis locais em diferentes método podem ter o mesmo nome afinal de contas são locais Quando um argumento é enviado para um método o método chamado deverá declarar uma variável parâmetro para receber o valor enviado Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 imprimirx public static void imprimirint x Systemoutprintlnx x parâmetro formal ou simplesmente parâmetro valor recebido argumento ou parâmetro real do método valor enviado x é uma variável local ao método main Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 somarx y public static void somarint x int y int r r x y SystemoutprintlnSoma r método não tem retorno x e y são variáveis locais ao método main x y e r são variáveis locais ao método somar Sistemas de Informação ESPM Exercícios de programação 1 Escreva um programa em Java que leia um valor inteiro e positivo o valor deverá ser testado O seu programa deverá imprimir no vídeo todos os divisores inteiros do valor informado pelo usuário A impressão dos valores deverá ser feito em um método 2 Escreva um programa em Java que leia três valores Caso os valores formem os lados de um triângulo imprima a sua classificação quanto aos lados Observação para que três valores formem os lados de um triângulo é necessário que cada um dos lados seja menor que a soma dos outros dois A classificação dos triângulos quanto aos lado é equilátero 3 lados iguais isósceles 2 lados iguais ou escaleno 3 lados diferentes Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 r r somarx y SystemoutprintlnSoma r public static int somarint x int y int r r x y return r método retorna um valor inteiro x y e r são variáveis locais ao método main x y e r são variáveis locais ao método somar r armazena o valor retornado pelo método Sistemas de Informação ESPM Passagem de argumentos Diferente de outras linguagens de programação a passagem de argumentos para uma método é feita apenas por valor Na passagem por valor uma cópia dos valores das variáveis é enviada para a método Alterações realizadas nos parâmetros dos métodos não alteram os valores originais Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x 15 y 20 r r somarx y SystemoutprintlnSoma r public static int somarint x int y int r r x y returnr Parâmetros recebidos por valor Alterações nessas variáveis não alteram o valor original Passagem de argumentos por valor Apenas uma cópia dos valores é enviada para o método Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 memória para o método soma a b 2 5 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 7 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y memória para o método main args x y 2 5 r 7 Sistemas de Informação ESPM Exemplo public static int somaint a int b int r a b return r public static void mainString args int x 2 y 5 int r somax y Sistemas de Informação ESPM Exercícios de programação 3 Escreva um programa em Java que leia 3 valores inteiros O programa deverá ter um método para determinar e retornar o maior valor digitado 4 Escreva um programa em Java que leia dois valores inteiros e positivos O programa deverá calcular o MDC máximo divisor comum entre os dois valores digitados O cálculo do MDC deverá ser feito por um método que deverá retornar o valor Sistemas de Informação ESPM Passagem de arrays Os arrays são variáveis como qualquer outra em Java são declaradas e têm tipo definido Um array vetor ou matriz também pode ser passado para um método Quando for passar um array para um método devese especificar apenas o seu nome sem especificar qualquer posição Caso seja passado um elemento específico do array daí deve ser especificado o seu nome e também a posição Sistemas de Informação ESPM Passagem de arrays Exemplo declara um vetor com 5000 posições int x new int5000 chama o método somar e passa todos os valores do vetor somarx chama o método imprimir e passa o valor armazenado no índice 10 imprimirx10 Sistemas de Informação ESPM Passagem de arrays Como um método deve receber um vetor Considere o seguinte exemplo public static void funcint x no método int x new int5000 funcx Declara uma variável do mesmo tipo Não deve ser utilizado o operador new na declaração de parâmetros Sistemas de Informação ESPM Exemplo public class Exemplo public static void mainString args int x new int5000 int total total somarx Systemoutprintlnsoma dos elementos total public static int somarint x int k total fork total 0 k xlength k total xk return total Sistemas de Informação ESPM Exercícios de programação 5 Escreva um programa em Java para calcular as raízes de uma equação do segundo grau O seu programa deverá ter um método para calcular e retornar o valor do delta e também um método para calcular e retornar as duas raízes da equação 6 Escreva um programa em Java que leia um vetor de 10 posições com valores inteiros e aleatórios Em seguida coloque os elementos do vetor em ordem crescente Sistemas de Informação ESPM Exercício extra 1 Escreva um programa em Java que preencha um array de 10 posições com valores inteiros e aleatórios Em seguida imprima no vídeo a tabuada do maior valor armazenado no array 2 Escreva um programa em Java contendo um método que calcule e retorne o valor da expressão 16 3 5 2 x x y A impressão do valor de y deverá ser no método main Sistemas de Informação ESPM Bibliografia CORNELL G HORSTMANN C A Y S Core Java Volume 1 Fundamentos 8ª ed Editora Pearson 2010 DEITEL H DEITEL P Java Como Programar 10ª ed Editora Pearson 2010 Sistemas de Informação ESPM Bibliografia COELHO A Java com orientação a objetos 1ª ed Editora LCM 2012