Java歐拉函數(shù)的計算代碼詳解
歐拉函數(shù)
在數(shù)論,對正整數(shù)n,歐拉函數(shù)是小于或等于n的正整數(shù)中與n互質(zhì)的數(shù)的數(shù)目(因此φ(1)=1)。此函數(shù)以其首名研究者歐拉命名(Euler's totient function),它又稱為Euler's totient function、φ函數(shù)、歐拉商數(shù)等。 例如φ(8)=4,因為1,3,5,7均和8互質(zhì)。 從歐拉函數(shù)引伸出來在環(huán)論方面的事實和拉格朗日定理構(gòu)成了歐拉定理的證明。 歐拉函數(shù)-百度百科.
前言
在數(shù)論,對正整數(shù)n,歐拉函數(shù)是小于n的正整數(shù)中與n互質(zhì)的數(shù)的數(shù)目(因此φ(1)=1)。此函數(shù)以其首名研究者歐拉命名(Euler's totient function),它又稱為Euler's totient function、φ函數(shù)、歐拉商數(shù)等。 例如φ(8)=4,因為1,3,5,7均和8互質(zhì)。 從歐拉函數(shù)引伸出來在環(huán)論方面的事實和拉格朗日定理構(gòu)成了歐拉定理的證明。
話不多說,直接上代碼:
package com.qlu.java1; import java.util.Scanner; /** * 1.歐拉函數(shù)求解 * * @author Dxkstart * @create 2021-05-28 13:32 */ public class EulerTest { public static void main(String[] args) { Euler e = new Euler(); e.euler(); } } class Euler { int num;//最大公因數(shù) int eul;//歐拉函數(shù)值 //求gcd public int gcd(int m, int b) { for (int i = (m - 1); i > 0; i--) { if (m % i == 0 && b % i == 0) { num = i; break; } } return num; } //求歐拉函數(shù) public void euler() { Scanner scanner = new Scanner(System.in); System.out.println("請輸入要求的歐拉函數(shù):"); int m = scanner.nextInt(); for (int j = 1; j < m; j++) { if (gcd(m, j) == 1) { eul++; } } System.out.println("歐拉函數(shù)值為:" + eul); } }
以上就是Java歐拉函數(shù)的計算代碼詳解的詳細(xì)內(nèi)容,更多關(guān)于Java實現(xiàn)歐拉函數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java三種獲取redis的連接及redis_String類型演示(適合新手)
這篇文章主要介紹了Java三種獲取redis的連接及redis_String類型演示(適合新手),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Java?@SpringBootApplication注解深入解析
這篇文章主要給大家介紹了關(guān)于Java?@SpringBootApplication注解的相關(guān)資料,@SpringBootApplication這個注解是Spring?Boot項目的基石,創(chuàng)建SpringBoot項目之后會默認(rèn)在主類加上,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-02-02Java?EasyExcel利用填充模版動態(tài)生成多個sheet頁
這篇文章主要為大家詳細(xì)介紹了Java?EasyExcel如何利用填充模版動態(tài)生成多個sheet頁,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12Mybatis plus 配置多數(shù)據(jù)源的實現(xiàn)示例
這篇文章主要介紹了Mybatis plus 配置多數(shù)據(jù)源的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08使用java實現(xiàn)http多線程斷點下載文件(二)
下載工具我想沒有幾個人不會用的吧,前段時間比較無聊,花了點時間用java寫了個簡單的http多線程下載程序,我實現(xiàn)的這個http下載工具功能很簡單,就是一個多線程以及一個斷點恢復(fù),當(dāng)然下載是必不可少的,需要的朋友可以參考下2012-12-12