Program czynnikowy w Javie: Jak znaleźć silnię liczby?



Silnia dodatniej liczby całkowitej jest iloczynem liczby całkowitej i wszystkich liczb całkowitych pod nią. Dowiedz się, jak napisać program czynnikowy w Javie. Np .: 5! = 5 * 4 * 3 * 2 * 1

Jako początkujący często natkniesz się na program silni w . Mówiąc językiem Laymana, silnia dodatniej liczby całkowitej jest iloczynem wszystkich malejących liczb całkowitych.Silnia liczby ( n) jest oznaczona przez n !. Również,silnia 0 to 1 i nie jest definiowana dla ujemnych liczb całkowitych. Oto prosta reprezentacja obliczania silni liczby:

n! = n * (n-1) * (n-2) *. . . . . * 1





Istnieje wiele sposobów wyszukiwania silni w Javie, które są wymienione poniżej:


Zacznijmy.



Program czynnikowy wykorzystujący pętlę For

Jest to jeden z najłatwiejszych programów do znajdowania silni liczby za pomocą „pętli For”. Przejdźmy do przykładu i znajdźmy silnię danego wkładu.

public class FactorialProgram {public static void main (String args []) {int i, fact = 1 // definiowanie faktów = 1, ponieważ najmniejszą wartością jest 1 int liczba = 5 // podane dane wejściowe do obliczenia silni dla (i = 1i<=numberi++){ fact=fact*i } System.out.println('Factorial of '+number+' = '+fact) } } 

Wynik: Silnia 5 = 120

Wyjaśnienie: Liczba, której silnia ma zostać znaleziona, jest traktowana jako dane wejściowe i przechowywana w zmiennej „liczba”. Tutaj mamy zainicjowany fakt = 1, ponieważ najmniejsza wartość to 1. Następnie użyliśmy pętli do przechodzenia przez wszystkie liczby między 1 a liczbą wejściową (5), gdzie iloczyn każdej liczby jest przechowywany w zmiennej ” fakt'.



Uwaga: Logika programu silniowego pozostaje ta sama, ale wykonanie różni się.

Teraz, gdy rozumiesz już logikę, spróbujmy wdrożyć program silni w Jawa w inny sposób, czyli używając pętli while.

Program czynnikowy w Javie wykorzystujący pętlę while

Pętla While w Javie pomaga w powtarzalnym wykonywaniu kodu na podstawie warunku. Przejdźmy do kodu i zaimplementujmy program silni w Javie przy użyciu pętli while.
Daj nam znać, jeśli napotkasz jakiekolwiek błędy lub wątpliwości związane z programem.

public class FactorialProgram {public static void main (String [] args) {int number = 5 // zdefiniowane przez użytkownika wejście w celu znalezienia factorial long fact = 1 // definiowanie faktów = 1, ponieważ najmniejszą wartością jest 1 int i = 1 while (i<=number) { fact = fact * i i++ } System.out.println('Factorial of '+number+' = '+fact) } }

Wynik: Silnia 5 = 120

Wyjaśnienie- W powyższym programie wartość i jest zwiększana wewnątrz treści pętli. Jak już wspomniałem powyżej, logika pozostaje taka sama dla silni w Javie, różni się tylko wykonanie.

Idąc dalej, zaimplementujmy silnię w Javie przy użyciu rekurencji.

Program czynnikowy w Javie wykorzystujący rekursję

Rekursja to funkcja lub metoda, która wywołuje siebie w sposób ciągły. Możesz użyć metod rekurencyjnych, które wywołują same siebie, przez co kod jest krótki, ale nieco skomplikowany do zrozumienia. Dowiedzmy się więcej o rekurencji, odwiedzając poniższy kod.

public class FactorialProgram {static int silnia (int n) {if (n == 0) return 1 else return (n * silnia (n-1))} public static void main (String args []) {int i, fact = 1 int liczba = 5 // zdefiniowane przez użytkownika dane wejściowe w celu znalezienia silni faktów = silnia (liczba) System.out.println ('Silnia z' + liczba + 'is =' + fakt)}}

Wynik- Silnia 5 to = 120

Wyjaśnienie: W powyższym kodzie utworzyłem rekurencyjną metodę silnia, która wywołuje samą siebie, dopóki warunek nie zostanie spełniony.

To prowadzi nas do końca tego artykułu, w którym nauczyliśmy się implementować program czynnikowy w Javie. Mam nadzieję, że wszystko, co zostało Ci udostępnione w tym samouczku, jest dla Ciebie jasne. Upewnij się, że ćwiczysz jak najwięcej i cofnij swoje doświadczenie!

Jeśli chcesz się uczyć

java konwertuje podwójną na liczbę całkowitą

Jeśli uważasz, że ten artykuł dotyczący „programu silni w Javie” jest odpowiedni, zapoznaj się z zaufana firma zajmująca się edukacją online z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Jesteśmy tutaj, aby pomóc Ci na każdym etapie Twojej podróży, aby zostać oprócz tych pytań do rozmowy kwalifikacyjnej w języku Java, opracowaliśmy program nauczania przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistą Java. Kurs ma na celu zapewnienie przewagi w programowaniu w języku Java i szkolenie zarówno podstawowych, jak i zaawansowanych koncepcji języka Java, a także różnych struktur Java, takich jak Hibernate i Spring.

Jeśli natkniesz się na jakieś pytania, nie wahaj się zadawać wszystkich pytań w sekcji komentarzy w „programie silniowym w Javie”, a nasz zespół z przyjemnością odpowie.