From 354ed22c9a3569832e50d6d294dd514c7615e8a8 Mon Sep 17 00:00:00 2001 From: Dan Ballard Date: Mon, 29 Jun 2026 12:03:37 -0700 Subject: [PATCH] kotlin prime finder; gitignore --- .gitignore | 3 +++ Makefile | 6 +++++- autoTest.pl | 9 ++++++++- primes.kt | 19 +++++++++++++++++++ 4 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 .gitignore create mode 100644 primes.kt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..46394f7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.iml +.idea +*.swp diff --git a/Makefile b/Makefile index 3240ee8..9bdea9f 100644 --- a/Makefile +++ b/Makefile @@ -3,4 +3,8 @@ default: ./autoTest.pl clean: - rm -f *.txt primesgcc primesclang primescpp primesaltc primes.class primespas primes*.exe primes.o primesobjc primes.ali primesada primesfor primese primes.h primes1.c primes1.o primes.id primes.make primescbl link.res ppas.sh primes.beam primesocaml primesasm primes.cmi primes.cmx luac.out primeshs primes_clisp.fas primes.lib Main.hi primes_clisp.lib primes_clisp.o primes.hi primescsieve gst.im primesalt2c primesalt3c primesgo primesrs + rm -f *.txt primesgcc primesclang primescpp primesaltc primes.class primespas primes*.exe primes.o primesobjc \ + primes.ali primesada primesfor primese primes.h primes1.c primes1.o primes.id primes.make primescbl link.res \ + ppas.sh primes.beam primesocaml primesasm primes.cmi primes.cmx luac.out primeshs primes_clisp.fas primes.lib \ + Main.hi primes_clisp.lib primes_clisp.o primes.hi primescsieve gst.im primesalt2c primesalt3c primesgo primesrs \ + primes.jar diff --git a/autoTest.pl b/autoTest.pl index 58698f0..2bce589 100755 --- a/autoTest.pl +++ b/autoTest.pl @@ -20,7 +20,7 @@ if ($ARGV[0] eq "--debug") { # "c2", "ca", "ca2", "ca3", # Applied some Tiobe 2026 language ordering "cpp", "objc", "py", "java", "cs", "js", "vb", "r", "pas", "rs", "go", "php", "ada", "for", "pl", - "cbl", "dart", "pro", "lua", "rb", "cl", "oml", "erl", "scala", "hs", + "kt", "cbl", "dart", "pro", "lua", "rb", "cl", "oml", "erl", "scala", "hs", "scm", "e", "awk", "tcl", "st", "sml", "4th", "m3", "pike", "rexx", "fe", "5c", "m4", "sh"); $llen = $#langs+1; @@ -346,6 +346,13 @@ $data{'scala'}{'compiler0'} = "scalac"; $data{'scala'}{'interp0'} = "scala"; $data{'scala'}{'prog'} = "Primes"; +$data{'kt'}{'name'} = "Kotlin"; +$data{'kt'}{'src'} = "primes.kt"; +$data{'kt'}{'compiler0'} = "kotlinc"; +$data{'kt'}{'cflags0'} = "-include-runtime -d primes.jar"; +$data{'kt'}{'interp0'} = "java"; +$data{'kt'}{'iflags0'} = "-jar primes.jar $max"; + $data{'cs'}{'name'} = "C# (Mono)"; $data{'cs'}{'src'} = "primes.cs"; $data{'cs'}{'compiler0'} = "mcs"; diff --git a/primes.kt b/primes.kt new file mode 100644 index 0000000..87f4be9 --- /dev/null +++ b/primes.kt @@ -0,0 +1,19 @@ +import kotlin.math.sqrt + +// Kotlin prime number finder + +fun main(args: Array) { + val max = args[0].toInt() + for (n in 3..max step 2) { + var isPrime = true + for (i in 3..sqrt(n.toDouble()).toInt() step 2) { + if (n % i == 0) { + isPrime = false + break + } + } + if (isPrime) { + println(n) + } + } +} \ No newline at end of file