Please help my.My program is running but print in
"System.out.pri ntln(firstprime .findPrime ());" isn't
correct.It prin except string primenumbers some other
number for example 16 or 64(it isn't primenumbers).
I thynk that problem is in method "testIsPrim e"
but I cannot find it.
/**
*PrimeNumber.ja va
*
*
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
//package TestPrime;
/**
*
* @author lm
*/
public class PrimeNumber{
private int numberOf = 1;
private int numberTo = 100;
public PrimeNumber() {
}
public void setOf(int number) {
numberOf = number;
}
public void setTo(int number) {
numberTo = number;
}
private boolean testIsPrime(int testprime) {
boolean prime = true;
for(int k = 3; k < testprime; k++) {//changed here
if (prime){
for(int j=2;j<=Math.sqr t(testprime);j+ +) {
if(testprime%k= =0){
prime=false;
break;
}
}
}
}
return prime;
}
public String isPrime(int testprime) {
if ( testIsPrime(tes tprime)) {
return testprime+" is prime";
}else{
return testprime+" isn't prime";
}
}
public String findPrime(){
String s = "";
for(int j=numberOf;j<= numberTo;j++) {
if ( testIsPrime(j)) {
s = s + j+"is primenumber\n";
}
}
return s;
}
public static void main(String[] args) {
PrimeNumber firstprime = new PrimeNumber();
firstprime.numb erOf = 10;
firstprime.numb erTo = 40;
System.out.prin tln(firstprime. findPrime ());
System.out.prin tln(firstprime. isPrime(4272));
System.out.prin tln(firstprime. isPrime(3517));
}
}
"System.out.pri ntln(firstprime .findPrime ());" isn't
correct.It prin except string primenumbers some other
number for example 16 or 64(it isn't primenumbers).
I thynk that problem is in method "testIsPrim e"
but I cannot find it.
/**
*PrimeNumber.ja va
*
*
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
//package TestPrime;
/**
*
* @author lm
*/
public class PrimeNumber{
private int numberOf = 1;
private int numberTo = 100;
public PrimeNumber() {
}
public void setOf(int number) {
numberOf = number;
}
public void setTo(int number) {
numberTo = number;
}
private boolean testIsPrime(int testprime) {
boolean prime = true;
for(int k = 3; k < testprime; k++) {//changed here
if (prime){
for(int j=2;j<=Math.sqr t(testprime);j+ +) {
if(testprime%k= =0){
prime=false;
break;
}
}
}
}
return prime;
}
public String isPrime(int testprime) {
if ( testIsPrime(tes tprime)) {
return testprime+" is prime";
}else{
return testprime+" isn't prime";
}
}
public String findPrime(){
String s = "";
for(int j=numberOf;j<= numberTo;j++) {
if ( testIsPrime(j)) {
s = s + j+"is primenumber\n";
}
}
return s;
}
public static void main(String[] args) {
PrimeNumber firstprime = new PrimeNumber();
firstprime.numb erOf = 10;
firstprime.numb erTo = 40;
System.out.prin tln(firstprime. findPrime ());
System.out.prin tln(firstprime. isPrime(4272));
System.out.prin tln(firstprime. isPrime(3517));
}
}
Comment