Факториальный метод c - PullRequest
       27

Факториальный метод c

0 голосов
/ 17 февраля 2020

Я делаю факториал cal c с помощью методов stati c Я смог заставить его работать с одним int за раз, но сканер должен иметь возможность принимать два int s (N и M) где код выполняет факториал всех чисел от N до M.

Here is my code so far

import java.util.Scanner;
public class Factorial {

  public static long Factorialcalc(int n) {
    long fact = 1;
    for (int i = 1; i <= n; i++) {
      fact *= i;
    }
    return fact;
  }
  public static void main(String args[]) {
    System.out.println("Enter first int N");
    Scanner sc = new Scanner(System.in);
    int n;
    long fact = 1;
    n = sc.nextInt();
    System.out.println("Enter second int M");
    int m;
    m = sc.nextInt();
    if (n < 0) {
      System.out.println("Not Valid!");
    } else {
      for (int i = n; i <= m; i++) {
        fact = Factorialcalc(i);
      }
      fact = Factorialcalc(n);
      System.out.println("the factorial for " + n + " is " + fact + ".");
    }
  }
}

Я не уверен, как мне следует go добавить в M int значение для вычисления факториала от N и выше.

1 Ответ

1 голос
/ 17 февраля 2020

в main метод требует следующих изменений:

int m = sc.nextInt()

в блоке else:

for (int i=n;i<=m;i++){
    fact = Factorial.Factorialcalc(i);

}

Совет: всегда добавляйте свой код как образец кода или фрагмент (HTML / CSS / JS)

...