Die rekursiven Primzahlen sind eine Folge von Primzahlen, so dass
p(1) = 2
p(n) = the p(n-1)th prime
Hier ist ein Beispiel, wie man die 4. rekursive Primzahl berechnen könnte.
p(4) = the p(3)th prime
p(3) = the p(2)th prime
p(2) = the p(1)th prime
p(1) = 2
p(2) = the 2nd prime
p(2) = 3
p(3) = the 3rd prime
p(3) = 5
p(4) = the 5th prime
p(4) = 11
Sie sollten ein Programm oder eine Funktion schreiben, die bei Angabe von n das n-te rekursive Prime Prime ausgibt.
Sie können die 0-basierte Indexierung verwenden, wenn Sie dies wünschen. In diesem Fall müssen Sie dies in Ihrer Antwort angeben.
Dies ist Code-Golf, also ist das Ziel, Ihre Byteanzahl zu minimieren.
Testfälle
1 -> 2
2 -> 3
3 -> 5
4 -> 11
5 -> 31
6 -> 127
7 -> 709
8 -> 5381
9 -> 52711
Relevanter OEIS-Eintrag: OEIS A007097
⁸
.¡
nur Nilads als Wiederholungen und standardmäßig Eingaben, wenn keine gefunden werden?<f><n>¡
Akzeptiert gerne monadische oder dyadische Atome für<n>
. Wenn<f>
es sich jedoch um ein Nilad handelt, muss etwas falsch sein.<f>¡
Daher wird es stattdessen als geparst und verwendet die letzte Eingabe (letztes Befehlszeilenargument, STDIN gibt es keine) als<n>
stattdessen.JavaScript (ES6), 71 Byte
Ungolfed, Sie haben drei separate rekursive Funktionen:
P
bestimmt, obn
prim ist;N
findet dien
th prime;p
Läuft rekursivN
auf Eingabezeiten1
n
.quelle
MATL , 6 Bytes
Probieren Sie es online!
Erläuterung
quelle
R
9893 Bytes5 Bytes dank @smci
Hier ist eine schrecklich ineffiziente rekursive Lösung:
Testausgang:
quelle
a<-ifelse(m==0,j,f(m-1,j))
if
gebraucht gesehen ... ziemlich cool !!Bash + gemeinsame Dienstprogramme, 55
Da wir rekursive Primzahlen verwenden, ist hier eine rekursive Antwort:
Da die Zählung der Rekursionsebenen auf der
$SHLVL
integrierten Variablen basiert , kann die Antwort deaktiviert sein, wenn Sie bereits einige Shell-Ebenen tief sind. Dies ist wahrscheinlich der Grund, warum diese Antwort bei TIO nicht funktioniert.Wenn das nicht gut ist, dann ist hier eine konventionellere Antwort:
Bash + gemeinsame Dienstprogramme, 58
Probieren Sie es online aus .
quelle
Haskell , 58 Bytes
1-indiziert
Probieren Sie es online!
Erläuterung:
Verwendet den gleichen 0-indizierten Prime-List-Zugriffstrick wie Adnans Antwort .
Im Wesentlichen folgt Straight-Up ansonsten der Spezifikation.
quelle
05AB1E , 4 Bytes
Probieren Sie es online!
Erläuterung
quelle
Wunder , 23 Bytes
1-indiziert. Verwendung:
Erläuterung
quelle