Advertisement
Guest User

Untitled

a guest
Feb 19th, 2020
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. #include<iostream>
  2. #include<math.h>
  3. using namespace std;
  4.  
  5. bool stepen(int number)
  6. {
  7. if(number % 2 == 0)
  8. {
  9. if(number / 2 == 1)
  10. {
  11. return true;
  12. }
  13. else
  14. {
  15. return stepen(number / 2);
  16. }
  17. }
  18. else
  19. {
  20. return false;
  21. }
  22. }
  23.  
  24. int main()
  25. {
  26. int numbers[10];
  27. int n;
  28. cout<<"N = ";
  29. cin>>n;
  30. cout<<endl;
  31.  
  32. for(int i = 0; i < n; i++)
  33. {
  34. cout<<"Number "<< i + 1<<" = ";
  35. cin>>numbers[i];
  36. }
  37. cout<<endl;
  38.  
  39. int solutions = 0;
  40. for(int m = 0; m < n; m++)
  41. {
  42. if(stepen(numbers[m]))
  43. {
  44. solutions += 1;
  45. }
  46. }
  47.  
  48. int arr[solutions];
  49. int added_numbers = 0;
  50. for(int l = 0; l < n; l++)
  51. {
  52. if(numbers[l] > 0)
  53. {
  54. if(stepen(numbers[l]))
  55. {
  56. arr[added_numbers] = numbers[l];
  57. added_numbers += 1;
  58. }
  59. }
  60. }
  61.  
  62.  
  63. while(true)
  64. {
  65. int number_of_swaps = 0;
  66. for(int j = 0; j < n - 1; j++)
  67. {
  68. if(arr[j] > arr[j + 1])
  69. {
  70. int num1;
  71. int num2;
  72. num1 = arr[j + 1];
  73. num2 = arr[j];
  74. arr[j] = num1;
  75. arr[j + 1] = num2;
  76. number_of_swaps += 1;
  77. }
  78. }
  79. if(number_of_swaps == 0)
  80. {
  81. break;
  82. }
  83. }
  84.  
  85. for(int k = 0; k < solutions; k++)
  86. {
  87. cout<<arr[k]<<endl;
  88. }
  89. return 0;
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement