2016-02-10 2 views
0

Вот кодрекурсии в методе Java

import java.math.BigInteger; 
public class RecursionTest2 
{ 
public static BigInteger fact(int n) 
{ 
    System.out.println(n); 
    BigInteger ans = BigInteger.ONE; 
    if (n > 0) { 
     ans = BigInteger.valueOf(n); 
     ans = ans.multiply(fact(n-1)); 
    } 
    System.out.println(ans); 
    return ans; 
} 



public static void main(String [] args) 
{ 
    System.out.println("fact(50) = " + fact(50)); 
} 
} 

Я должен вывести линейную рекурсивную формулу для мощн (2, п). n имеет значение = 80.

Затем я должен реализовать последовательный программный метод в той же программе.

Может ли кто-нибудь помочь мне с этой проблемой?

+0

Не могли бы вы объяснить, что вы сделали до сих пор, и почему вы думаете, что это проблема? – Phani

+0

@Phani, что у меня выше, это код, но я должен реализовать методы, которые я перечислял. Я не знаю, как это сделать. – Bevy

+1

«Я не знаю, как это сделать» не является описанием проблемы, установленным для StackOverflow. Прочтите и следуйте инструкциям по отправке в справочной документации. [по теме] (http://stackoverflow.com/help/on-topic) и [как спросить] (http://stackoverflow.com/help/how-to-ask) применяются здесь. – Prune

ответ

0

Обратите внимание на общие черты: факториал и возведение в степень как использование повторного умножения. Основное различие заключается в том, что факторные кратные N, повторяя N раз; экспоненциация умножается на базу , повторяя N раз.

Можете ли вы нести этот намек достаточно далеко, чтобы написать код? Это подводит вас к парадигме, с которой мы более комфортно.