Parâmetro ou Argumento

Um conceito que pode ser um pouco confuso para quem está iniciando na Orientação a Objeto, é a  diferencia entre parâmetro e argumento.

O parâmento é utilizado quando está sendo criado um método e segue a seguinte ordem, tipo de variável e nome.

Exemplo 1 – utilização de parâmentos:


//um parâmento

public String MsgCaixaAlta(String msg){

return msg.toUpperCase();

}

//dois parâmentos

public int soma(int x, int y){

return x + y;

}

//três parâmentos

public void  somaComSubtracao (int a, int b, int c, ){

return (a + b) - c;

}

 

Argumento é utilizado para executar  métodos que esteja paramentizado, tem que ser do mesmo tipo que foi utilizado no parâmento para que ocorra a execução correta da aplicação.

Exemplo 2 – utilização de argumento:


//passando argumento

Math.abs(-8);
Math.round(5.22);

Então podemos chegar a conclusão que o argumento é o valor utilizado na chamada do método, que possui na sua assinatura parâmetro definindo o tipo de argumento aceito.

 

 

 

Anúncios

Fatorial em Java

Olá pessoal, irei mostrar algumas formas de realizar o fatorial em Java.

Exemplo 1 – fatorial interativo :
Vamos calcular o fatorial de 5:

//variável para armazenar o valor a ser calculado
int fatorial = 1;

//laço de repetição
for (int i = 2; i <= 5; i++) {
fatorial = fatorial * i;
}

Analisando o código acima:
Primeiro declaramo uma variável para armazenar o valor a ser calculado atribuindo o valor inicial um, para não haver erro no cálculo, pois qualquer número multiplicado por zero é igual a zero, após utilizamos um laço de repetição for, nos parâmetros do for a variável de controle é iniciada com o valor dois, na condição de parada verificamos se  a variável de controle é igual ou menor que cinco, assim quando a variável de controle estiver maior que cinco será encerrado o laço de repetição, logo após a condição de parada a ser avaliada é executado o código dentro do for, onde ocorre a multiplicação da variável que armazena o cálculo com a variável de controle, depois de executar o cálculo incrementada-se a variável de controle e novamente retorna a verificar a condição de parada do loop, até a condição está falsa e termina o laço de repetição.

Exemplo 2 – fatorial recursivo:
Vamos supor que queremos saber o fatorial de 5 de forma recursiva:

public int fatorialRecursivo(int fatRec){
//condição de parada
if(fatRec <= 1){
return 1 ;
}
//5!
//5 * 4! = 120
//4 * 3! = 24
//3 * 2! = 6
//2 * 1! = 2
// 1! = 1 = se o valor for igual a um, para a recursão e retorna calculando os valores

return (fatRec * fatorialRecursivo(fatRec - 1));
}

Analisando o código acima:
Para realizar o fatorial de forma recursiva teremos que criar um método para retornar o valor calculado. Então criaremos um método que retorne um inteiro e receba como parâmetro um valor para ser calculado, lembrando que qualquer método que não seja void retorna algum valor ou objeto, dentro do método especificamos a condição de parada, ou seja quando esta condição for verdadeira a recursão para, se a condição de parada for falsa retorna o mesmo método com outro parâmetro até encontrar a condição  de parada verdadeira, deve-se tomar cuidado para esta condição não se torne uma recursão infinita, pois se esta condição nunca for verdadeira o método irá consumir muita  mémoria da máquina e ocorrerá um erro StackOverflowError.

Código fonte no Github: https://github.com/franciscojsc/Fatorial-em-Java.git