在該程序中,您將學(xué)習(xí)檢查給定的數(shù)字是否可以表示為兩個質(zhì)數(shù)之和。這是通過Kotlin中的循環(huán)和break語句完成的。
為了完成此任務(wù),創(chuàng)建了函數(shù) checkPrime()。
如果傳遞給函數(shù)的數(shù)字是質(zhì)數(shù)。則checkPrime()返回1
fun main(args: Array<String>) {
val number = 34
var flag = false
for (i in 2..number / 2) {
//i是質(zhì)數(shù)的條件
if (checkPrime(i)) {
//n-i是質(zhì)數(shù)的條件
if (checkPrime(number - i)) {
// n = primeNumber1 + primeNumber2
System.out.printf("%d = %d + %d\n", number, i, number - i)
flag = true
}
}
}
if (!flag)
println("$number 不能表示為兩個質(zhì)數(shù)的和.")
}
//函數(shù)用來檢查質(zhì)數(shù)
fun checkPrime(num: Int): Boolean {
var isPrime = true
for (i in 2..num / 2) {
if (num % i == 0) {
isPrime = false
break
}
}
return isPrime
}運(yùn)行該程序時,輸出為:
34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17
這是等效的Java代碼:將一個數(shù)字表示為兩個數(shù)字之和的Java程序。