По заданию мне надо написать программу которая будет считать факториал переданного в консоль числа.
Желательно с примером.
Другие языки программирования и технологии
Как посчитать факториал на через метод main?
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("Number: ");
int n = scan.nextInt();
System.out.println(Factorial(n));
}
public static int Factorial(int n) {
int m = 1;
for (int i = 1; i <= n; ++i) {
m *= i;
}
return m;
}
}
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("Number: ");
int n = scan.nextInt();
System.out.println(Factorial(n));
}
public static int Factorial(int n) {
int m = 1;
for (int i = 1; i <= n; ++i) {
m *= i;
}
return m;
}
}
Виктор Брусов
Благодарю, правда я немного по-другому сделал)
Свободный Паскаль:
uses crt; var i, n: integer; f: int64 = 1;
begin clrscr(); write('n » '); readln(n);
if (n = 0) then writeln('0! = 1') else begin
for i := 1 to n do f := f * i; writeln(n, '! = ', f)
end end.
В pascal abc.net есть специальный тип BigInteger, которым можно представить любое большое целое число, а то, что вверху, работает только до n=20. И вообще - что значит "на через метод main" ? ʘ‿ʘ Может быть, на C/C++ надо сделать через функцию? Тогда так:
#include <iostream>
using namespace std;
unsigned long long f(int n)
{ return (n == 0) ? 1 : n * f(n - 1); }
int main() { int n; cout << "n » "; cin >> n;
cout << f(n) << endl; system("pause > nul"); }
uses crt; var i, n: integer; f: int64 = 1;
begin clrscr(); write('n » '); readln(n);
if (n = 0) then writeln('0! = 1') else begin
for i := 1 to n do f := f * i; writeln(n, '! = ', f)
end end.
В pascal abc.net есть специальный тип BigInteger, которым можно представить любое большое целое число, а то, что вверху, работает только до n=20. И вообще - что значит "на через метод main" ? ʘ‿ʘ Может быть, на C/C++ надо сделать через функцию? Тогда так:
#include <iostream>
using namespace std;
unsigned long long f(int n)
{ return (n == 0) ? 1 : n * f(n - 1); }
int main() { int n; cout << "n » "; cin >> n;
cout << f(n) << endl; system("pause > nul"); }
покажи, пожалуйста ,как написал. Застрял на этом задании
Вот пример алгоритма, не java но синтаксис здесь ничем не отличается


Игорь Николаев
value = 12 // число вводимое пользователем
tmp = 1 // переменная не должна быть пуста и не должна быть равна 0
for (i = value; i > 1; --i) { // --i, i-- в данном примере без разницы
tmp = tmp * i
}
если нужно скопипастить
tmp = 1 // переменная не должна быть пуста и не должна быть равна 0
for (i = value; i > 1; --i) { // --i, i-- в данном примере без разницы
tmp = tmp * i
}
если нужно скопипастить
Похожие вопросы
- Факториал парных чисел в С++ (VS 2010)
- как посчитать 365! (С++) Нужен алгоритм вычисления факториала больших чисел.
- Что такое факториал? Помогите пожалуйсто с синтаксисом С++.
- Задание функции факториала в С++
- Факториал tasm. Нужно вычислить факториал (не меньше 300!) и вывести результат на дисплей. Заранее спасибо.
- Факториалы в паскале???
- нужно написать программку на ассемблере, к-рая считает факториал числа n
- Помогите, пожалуйста, с нахождением факториала. Язык Си.
- Вычисление суммы с факториалом в С++?
- На сколько нулей оканчивается факториал заданного числа