Sei sulla pagina 1di 4

import java.util.

Scanner;
import java.util.Random;
//All code contained within was written by Ian Sutherland and may or may not be
protected by international copyright laws. plagiarism will be handeled to the fu
ll extent of said laws
public class PrimalityChecker
{
public static Scanner kbd = new Scanner(System.in);
public static Random die = new Random();
public static int number = 0;
public static int bruteNumber = 0;
public static String input = new String();
public static boolean morePrimes = true;
public static boolean brutePrime = true;
public static boolean primes100 = true;
public static int numberPrimes100Checked = 0;
public static int numberPrimes100Wrong = 0;
public static boolean bruteCheck(int number)
{
if(number==2){
System.out.println("yes two is prime and this is a lazy
way to check");
}
else if(number<=1){
System.out.println("i wont check negatives for primality
and 0 and 1 are not considered prime");
}
else{
bruteNumber = number-1;
while(bruteNumber>1){
if((number%bruteNumber)==0){
brutePrime = false;
bruteNumber =0;
}
bruteNumber--;
}
}
return brutePrime;
}
public static boolean primes100Check(int number){
if((number%2)==0&&number!=2){
primes100= false;
}
else if((number%3)==0&&number!=3){
primes100 = false;
}
else if((number%5)==0&&number!=5){
primes100 = false;
}
else if((number%7)==0&&number!=7){
primes100 = false;
}
else if((number%11)==0&&number!=11){
primes100 = false;
}
else if((number%13)==0&&number!=13){

primes100 = false;
}
else if((number%17)==0&&number!=17){
primes100 = false;
}
else if((number%19)==0&&number!=19){
primes100 = false;
}
else if((number%23)==0&&number!=23){
primes100 = false;
}
else if((number%29)==0&&number!=29){
primes100 = false;
}
else if((number%31)==0&&number!=31){
primes100 = false;
}
else if((number%37)==0&&number!=37){
primes100 = false;
}
else if((number%41)==0&&number!=41){
primes100 = false;
}
else if((number%43)==0&&number!=43){
primes100 = false;
}
else if((number%47)==0&&number!=47){
primes100 = false;
}
else if((number%53)==0&&number!=53){
primes100 = false;
}
else if((number%59)==0&&number!=59){
primes100 = false;
}
else if((number%61)==0&&number!=61){
primes100 = false;
}
else if((number%71)==0&&number!=71){
primes100 = false;
}
else if((number%73)==0&&number!=73){
primes100 = false;
}
else if((number%79)==0&&number!=79){
primes100 = false;
}
else if((number%83)==0&&number!=83){
primes100 = false;
}
else if((number%89)==0&&number!=89){
primes100 = false;
}
else if((number%97)==0&&number!=97){
primes100 = false;
}
numberPrimes100Checked++;
return primes100;
}

public static void main(String[] args)


{
PrimalityChecker idioticCheck = new PrimalityChecker();
while(morePrimes){
System.out.println("\n\nWhich would you like to do\nEnte
r a number to check(E)\nGet a random number to check(R)\nExit the program(X)");
input = kbd.nextLine();
if(input.equalsIgnoreCase("E")){
System.out.println("Okay so what number did you
want to check");
number = kbd.nextInt();
kbd.nextLine();
idioticCheck.bruteCheck(number);
idioticCheck.primes100Check(number);
System.out.println("Your number was " + number+
"\nAccording to brute force the statement that " + number+ " is prime is " + bru
tePrime);
System.out.println("According to the Primes 100
method the statement that " + number + " is prime is " + primes100);
if(brutePrime!=primes100){
numberPrimes100Wrong++;
}
primes100=true;
brutePrime=true;
}
if(input.equalsIgnoreCase("R")){
number = Math.abs(die.nextInt());
idioticCheck.bruteCheck(number);
idioticCheck.primes100Check(number);
System.out.println("Your number was absolute val
ue " + number+ "\nAccording to brute force the statement that " + number+ " is p
rime is " + brutePrime);
System.out.println("According to the Primes 100
method the statement that " + number + " is prime is " + primes100);
if(brutePrime!=primes100){
numberPrimes100Wrong++;
}
primes100=true;
brutePrime=true;
}
if(input.equalsIgnoreCase("X")){
double errorRate = numberPrimes100Wrong/numberPr
imes100Checked;
System.out.println("OK Quitting now");
System.out.println(numberPrimes100Checked + " nu
mbers checked for primality " + numberPrimes100Wrong + " times the primes 100 me
thod was wrong");
System.out.println("The error rate of the primes
100 method was " + errorRate);
morePrimes = false;
}
if(input.equalsIgnoreCase("E")!=true&&input.equalsIgnore
Case("R")!=true&&input.equalsIgnoreCase("X")!=true){
System.out.println("I dont understand...");
}
}
}
}

//All code contained within was written by Ian Sutherland and may or may not be
protected by international copyright laws. plagiarism will be handeled to the fu
ll extent of said laws

Potrebbero piacerti anche