سلام دوستان
من میخوام تو برنامم یه عددو وارد کنم و خود برنامه تشخیص بدهد که چند عدد اول بین 21 تا عدد وارد شده وجود دارد
من برنامه زیرو نوشتم(میدونم برناممو بد نوشتم) اما کار نمیده و فقط تشخیص میدهد که عدد وارد شده اول است یا نه
کار این برنامه این است که عدد را دریافت میکند و سپس تشخیص میدهد اول است یا نه اگر اول بود ادامه برنامه اجرا بشود اما اگر عدد وارد شده اول نبود عدد -1 نمایش داده شود و سپس از برنامه خارج میشود.
import java.util.Scanner;
public class One{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
int n,count=1,not=-1;
boolean flag=true;
System.out.print("Please Enter Integer Number : ");
n=input.nextInt();
if (n<=1){
System.out.println(not);
}
else if (n==2){
System.out.println(count);
}
else if (n%2==0){
System.out.println(not);
}
else
for (int i=3; flag==true && i*i<=n; i+=2){
if((n%i)==0){
flag=false;
System.out.println(not);
}
}
if (flag==true){
for (int j=3,i=n; j<=i && 2<i; j+=2,i-=2){
if ((i%j)!=0){
count=count+2;
}
}
System.out.println(count);
}
}
}
ممنون میشوم اگر کمکم کنید
با ساس فراوان