Advertisement
Guest User

zad1

a guest
Nov 19th, 2018
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.66 KB | None | 0 0
  1. /*Двойно просто число е просто число, чийто сбор от цифри също е просто число. Изведете всички двойно прости числа в интервала [a, b].
  2. Ограничения: 0 <= a < b <= 1024
  3.  
  4. Пример:
  5. Вход:
  6. 100 1000
  7.  
  8. Изход:
  9. 101 113 131 137 139 151 157 173 179 191 193 197 199 223 227 229 241 263 269 281 283 311 313 317 331 337 353 359 373 379 397 401 409 421 443 449 461 463 467 487 557 571 577 593 599 601 607 641 643 647 661 683 719 733 739 751 757 773 797 809 821 823 827 829 863 881 883 887 911 919 937 953 971 977 991 */
  10.  
  11.  
  12. #include <iostream>
  13.  
  14. using namespace std;
  15.  
  16. int main()
  17. {
  18.     int a,b;
  19.     cout<<"Enter a:";
  20.     cin>>a;
  21.     cout<<"Enter b:";
  22.     cin>>b;
  23.  
  24.     if(a<0 || a>b || b>1024){
  25.         cout<<"Wrong input."<<endl;
  26.         return -1;
  27.     }
  28.  
  29.     bool isPrimeNumber, isPrimeDigits;
  30.  
  31.     for(int i=a; i<=b; ++i){
  32.         isPrimeNumber=1;
  33.         for(int j=2; j<i; ++j){
  34.             if(i%j==0){
  35.                 isPrimeNumber=0;
  36.                 break;
  37.             }
  38.         }
  39.        if(isPrimeNumber){
  40.  
  41.             int savedNum=i, temp=0, sumOfDigits=0;
  42.             isPrimeDigits=1;
  43.  
  44.             while(savedNum){
  45.                 temp=savedNum%10;
  46.                 sumOfDigits+=temp;
  47.                 savedNum/=10;
  48.             }
  49.  
  50.             for(int l=2; l<sumOfDigits; ++l){
  51.                 if(sumOfDigits%l==0){
  52.                     isPrimeDigits=0;
  53.                     break;
  54.                 }
  55.             }
  56.             if(isPrimeDigits){
  57.                 cout<<i<<" ";
  58.             }
  59.         }
  60.     }
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement