idzik icon

Java/Matura/SuperBPierwsze

idzik | PRO | 10/24/16 12:57:02 PM UTC | 0 ⭐ | 251 👁️ | Never ⏰ | []
Java |

1.78 KB

|

None

|

0 👍

/

0 👎

 
public class zadanko {
 
    
public static boolean czyPierwsza(int liczba){
    for(int i=2;i<=(int)Math.sqrt(liczba);i++){
        if (liczba%i==0) return false;
    }
    return true;
}
 
public static int sumaCyfr(int liczba){
String naszaLiczba=String.valueOf(liczba);
int suma=0;
for (int i = 0; i < naszaLiczba.length(); i++) {
    suma=suma+Integer.parseInt(naszaLiczba.charAt(i)+"");
}
return suma;
}
 
public static boolean czySuperPierwsza(int liczba){
    if (czyPierwsza(liczba)&&czyPierwsza(sumaCyfr(liczba)))
        return true;
    return false;
}
 
public static int sumaBinarnych(int liczba){
    String binarna=Integer.toBinaryString(liczba);
    int suma=0;
    for (int i = 0; i < binarna.length(); i++) {
        suma=suma+Integer.parseInt(binarna.charAt(i)+"");
    }
    return suma;
}
 
public static boolean czySuperBPierwsza(int liczba){
    if (czySuperPierwsza(liczba)&&czyPierwsza(sumaBinarnych(liczba)))
            return true;
    return false;
}
 
public static int ileSuperBPW(int a,int b){
    int licznik=0;
    for (int i = a; i <=b; i++) {
        if (czySuperBPierwsza(i)) licznik++;
    }
    return licznik;
}
    public static void main(String[] args) {
           System.out.println("a");
           System.out.println(ileSuperBPW(2,1000));
           System.out.println(ileSuperBPW(100,10000));
           System.out.println(ileSuperBPW(1000,100000));
           System.out.println("b");
           int licznik1=0;
           for (int i = 100; i <=10000; i++) {
           if (czyPierwsza(sumaCyfr(i))) licznik1++;
        }
           System.out.println(licznik1);
           int suma=0;
           for (int i = 100; i <=10000; i++) {
               if (czySuperBPierwsza(i)) suma=suma+i;
        }
           if (czyPierwsza(suma))System.out.println("TAK");
           else System.out.println("NIE");
           
    }
 
}

Comments