How to check if a number is prime in Scala

1 Answer

0 votes
import scala.util.Random
import scala.math.sqrt

def isPrime(num: Int): Int = {
  if (num == 0) return 0
  if (num == 1) return 0

  var rv = 1
  for (p <- 2 to math.round(sqrt(num)).toInt) {
    if (num % p == 0) rv = 0
  }
  
  rv
}

val random = new Random()

for (i <- 1 to 20) {
  val n = random.nextInt(200) + 1
  if (isPrime(n) == 1) {
    println(s"$n - Prime")
  } else {
    println(s"$n - NOT Prime")
  }
}

 
 
    
/*
run:
    
187 - NOT Prime
58 - NOT Prime
55 - NOT Prime
101 - Prime
42 - NOT Prime
101 - Prime
183 - NOT Prime
159 - NOT Prime
179 - Prime
111 - NOT Prime
146 - NOT Prime
94 - NOT Prime
161 - NOT Prime
106 - NOT Prime
43 - Prime
4 - NOT Prime
133 - NOT Prime
118 - NOT Prime
22 - NOT Prime
165 - NOT Prime
    
*/

 



answered Oct 29, 2024 by avibootz
...