Exercício de Metodos

1 resposta
programaçãometodosjava
J

Estou tentando resolver o problema, mais esta ocorrendo um erro de classe segue abaixo problema e meu código

Faça um método que receba um valor inteiro e positivo, calcule e mostre o seu fatorial. O método terá
que verificar se o número é positivo, para executar o cálculo. Método sem retorno.

package exercicio3;

import java.util.Scanner;


public class Exercicio3 {

static void fatorialNumero (int fatorial, int resul ){
 resul=1;
    for (int i = fatorial; i > 0; i--) {
            resul = resul * i; 
        }
}        
    


    public static void main(String[] args) {
        Scanner t = new Scanner(System.in);
        int numero=0;
        int result;
        
        numero=t.nextInt();
        t.nextLine().
        numero=fatorialNumero(resul);
        
        
        if(numero<0){
            System.out.println("Não é possivel o calculo de fatorial de numeros negativos!!");
        }
        else{
            System.out.println("O resultado é: " + numero);
        }
    }
    
}

1 Resposta

LincolnStuart

1 - Falta um “;” ao invés de um “.” na linha

“Jonathan_Galdino:

t.nextLine().

2 - Me parece que variável que você tem que passar é a “result”, ao invés de "resul", mas além disso são dois parâmetros que o método tem que receber.

3 - O método está devolvendo void, e você está atribuindo numa variável inteira, eu alterei algumas coisas no seu código, no meu pronto de vista ficaria assim:

static int fatorialNumero(int numero) {
	//teste dentro do método qualquer se o número é positivo, caso não seja o programa para e dá uma msg de erro
	if (numero < 0) {
		throw new RuntimeException("Não é possivel o calculo de fatorial de numeros negativos!!");
	}
	int resul = 1;
	for (int i = numero; i > 0; i--) {
		resul = resul * i;
	}
	return resul;
}

public static void main(String[] args) {
	Scanner t = new Scanner(System.in);
	int numero = 0;
	numero = t.nextInt();
	t.nextLine();
	int result = fatorialNumero(numero);
	System.out.println("O resultado é: " + result);
}

veja se entende… qq coisa pode falar :grinning:

Criado 9 de setembro de 2016
Ultima resposta 9 de set. de 2016
Respostas 1
Participantes 2