Kotlin 判断一个数是否可以表示为两个质数之和的程序

为了完成此任务,创建了 checkPrime() 函数。

如果传递给该函数的数字是 素数,则 checkPrime() 返回 1。

示例:整数表示为两个素数的和

fun main(args: Array<String>) {
    val number = 34
    var flag = false
    for (i in 2..number / 2) {

        // condition for i to be a prime number
        if (checkPrime(i)) {

            // condition for n-i to be a prime number
            if (checkPrime(number - i)) {

                // n = primeNumber1 + primeNumber2
                System.out.printf("%d = %d + %d\n", number, i, number - i)
                flag = true
            }

        }
    }

    if (!flag)
        println("$number cannot be expressed as the sum of two prime numbers.")
}

// Function to check prime number
fun checkPrime(num: Int): Boolean {
    var isPrime = true

    for (i in 2..num / 2) {
        if (num % i == 0) {
            isPrime = false
            break
        }
    }

    return isPrime
}

运行程序后,输出将是

34 = 3 + 31
34 = 5 + 29
34 = 11 + 23
34 = 17 + 17

这是等效的 Java 代码: Java 程序表示一个数是两个数的和。

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战