Java Rekursion Primzahlen

12/01/2014 17:42 LoLBotting#1
Hey könntest ihr mir helfen, wie ich rekursiv eine Primzahl bestimme?

// Implementieren Sie hier die Methode istPrim(n)
public static boolean ( int n) {
if (a%a-1==0) return false;

else return true;


könntet ihr mir helfen? Ich versuche gerade Java zu lernen..
12/01/2014 17:53 XxharCs#2
Das geht einfach, und wenn mans nicht schafft, dann wird dir google die Lösung geben.
Hier meine:
Code:
private long lastprime = 0;
private Date lastprimeModified = new Date();
...
...
if(lastprime == 1) {
	System.out.println("Still searching for the first prime...");
}else {
	System.out.println("Last prime discovered was " + lastprime + " at " + lastprimeModified);
}
...
...
long numb = 1;
while(true) {
	if(isPrime(numb)) {
	
		lastprime = numb;
		lastprimeModified = new Date();
	}
	numb += 2;
}
...
...
private boolean isPrime(long numb) {

	if(numb%2 == 0)
		return false;
	
	for(long i = 3; i*i <= numb; i += 2) {
	
		if(numb%i == 0)
			return false;
	}
	return true;
}
Falls das ganze Beispiel sehen willst, ich habe eins auf meinem Github-Acc, zur Übung für JavaEE damals gemacht: [Only registered and activated users can see links. Click Here To Register...]
12/01/2014 18:00 LoLBotting#3
Das ist schon rekursiv oder ?
Also braucht man 2 Methoden um das zu lösen ?



BTW private boolean isPrime(long numb) {

if(numb%2 == 0)
return false;

for(long i = 3; i*i <= numb; i += 2) {

if(numb%i == 0)
return false;
}
return true;
}

eigtl reicht das auch oder ? :D
12/01/2014 18:37 XxharCs#4
Rekursiv ist es dann wenn die Methode immer wieder aufgerufen wird.
Wie du es machst bleibt dir überlassen
12/01/2014 19:12 DeinMud#5
Quote:
private bool istPrimzahl(uint pZahl, int pTeiler = 2)
{
return (pTeiler == pZahl) || (pZahl % pTeiler != 0 && istPrimzahl(pZahl,pTeiler + 1));
}
Aufruf:

Quote:
bool lZahl = istPrimzahl(1621);
(Habs in C# gemacht müsste aber 1:1 in Java funktionieren)
12/01/2014 20:18 YatoDev#6
Quote:
Originally Posted by XxharCs View Post
Rekursiv ist es dann wenn die Methode immer wieder aufgerufen wird.
Wie du es machst bleibt dir überlassen
nein, wenn eine methode sich selbst aufruft
12/01/2014 22:23 alpines#7
Quote:
Originally Posted by »FlutterShy™ View Post
nein, wenn eine methode sich selbst aufruft
Das meinte er wohl so, Rekursion sollte ja jedem bekannt sein.