Skip to content

Wszystkie dzielniki

🔗 Opis problemu

Solution zupełnie naiwne

Implementation

fun printDivisors(n: Int) {
  for (i in 1 until n + 1) {
    if (n % i == 0) {
      println(i)
    }
  }
}

fun main() {
  val n = 12

  println("Dzielniki liczby $n:")
  printDivisors(n)
}

Wszystkie dzielniki - podejście zupełnie naiwne

Description implementacji

TODO

Solution naiwne

Implementation

fun printDivisors(n: Int) {
  for (i in 1 until (n / 2) + 1) {
    if (n % i == 0) {
      println(i)
    }
  }

  if (n > 1) {
    println(n)
  }
}

fun main() {
  val n = 12

  println("Dzielniki liczby $n:")
  printDivisors(n)
}

Wszystkie dzielniki - podejście naiwne

Description implementacji

TODO

Solution optymalne

Implementation

import kotlin.math.sqrt

fun printDivisors(n: Int) {
  for (i in 1 until sqrt(n.toDouble()).toInt() + 1) {
    if (n % i == 0) {
      println(i)

      if (i != n / i) {
        println(n / i)
      }
    }
  }
}

fun main() {
  val n = 12

  println("Dzielniki liczby $n:")
  printDivisors(n)
}

Wszystkie dzielniki - podejście optymalne

Description implementacji

TODO