Показать сообщение отдельно
Старый 26.01.2012, 11:49   #41
Matt Merkulov
Модератор
 
Аватар для Matt Merkulov
 
Регистрация: 23.10.2005
Сообщений: 219
Написано 62 полезных сообщений
(для 247 пользователей)
Ответ: Олимпиада по программированию

import java.math.BigInteger;

public class CFactorial {
	public static void main( String[] args ) {
		System.out.println( Factorial( BigInteger.valueOf( 100 ) ).toString() );
	}
	
	private static BigInteger Factorial( BigInteger N ) {
		if( N.equals( BigInteger.ONE ) ) return BigInteger.ONE; else return N.multiply( Factorial( N.subtract( BigInteger.ONE ) ) );
	}
}
Вот, кстати, вам еще задача:
Даны два дробных числа, представленные 8-байтовым значением типа long следующим образом: старшие 4 байта - это целая часть, младшие - дробная. Т. е. это число "поделено" на 0x100000000. Реализовать сложение и вычитание просто, но попробуйте реализовать умножение, деление и вывод на экран не прибегая к другим типам данных.
(Offline)
 
Ответить с цитированием