Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.87 KB | None | 0 0
  1. #include<iostream>
  2. #include<cmath>
  3. using namespace std;
  4.  
  5.  
  6.  
  7. int dectobin(unsigned int b) {
  8. int m{0},sum,mis{0};
  9.         if (b<=0) {
  10.                 return 0;
  11.         } else {
  12.     for(int n{0}; pow(2,n) <= b; ++n) {
  13.         ++m; }
  14.     sum=pow(10,m-1);
  15.     mis=pow(2,m-1);
  16.     return sum + dectobin(b-mis);
  17.         }
  18. }
  19.  
  20.  
  21. int div (unsigned int a) {
  22. int b{10},h;
  23. while(a>=b) {
  24.     a=a-b;
  25.     ++h;}
  26. return h;
  27. }
  28.  
  29.  
  30. int umkehr(unsigned int j) {
  31. int k;
  32. if (j == 0) return 0;
  33. else{
  34.     k+=j%10;
  35.     }
  36. return k + umkehr(div(j));
  37. }
  38.  
  39.  
  40. bool pal2(unsigned b) {
  41.     if (dectobin(b) == umkehr(b)) return true;
  42.     else return false; 
  43. }
  44.  
  45. bool pal10(unsigned l) {
  46.     if (l == umkehr(l)) return true;
  47.     else return false;
  48. }
  49.  
  50.  
  51. int main() {
  52. unsigned int number;
  53. cin >> number;
  54. cout << "Decimal palindrom" << pal10(number) << endl;
  55. cout << "Binar palindrom " << pal2(number) << endl;
  56. return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement