Guest User

Untitled

a guest
May 24th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. #include <stdio.h>
  2. typedef unsigned long uint32; //Mit einer typedef-Deklaration wird dem Datentyp ein Aliasname gegeben
  3.  
  4. void bitPrint(uint32 zahl)
  5. {
  6. char* ausgabe = "00000000000000000000000000000000";
  7. char* pointer;
  8.  
  9. for (pointer = ausgabe+31; pointer > ausgabe; pointer--) {
  10. if (zahl & 1)
  11. *pointer = '1';
  12. else
  13. *pointer = '0';
  14.  
  15. zahl >>= 1;
  16. }
  17. printf(ausgabe);
  18. }
  19.  
  20. int main(void)
  21. {
  22. uint32 zahl1, zahl2, ergebnis, items, bereit;
  23. char operator;
  24.  
  25. do {
  26. printf("Geben Sie den zu berechnenden Ausdruck ein:\n");
  27. items = scanf("%u %c %u", &zahl1, &operator, &zahl2);
  28.  
  29. if (items != 3)
  30. continue;
  31.  
  32. bereit = 1;
  33. switch (operator) {
  34. case '^':
  35. ergebnis = zahl1 ^ zahl2;
  36. break;
  37. case '&':
  38. ergebnis = zahl1 & zahl2;
  39. break;
  40. case '|':
  41. ergebnis = zahl1 | zahl2;
  42. break;
  43. case '<':
  44. ergebnis = zahl1 << zahl2;
  45. break;
  46. case '>':
  47. ergebnis = zahl1 >> zahl2;
  48. break;
  49. default:
  50. bereit = 0;
  51. }
  52. } while (bereit != 1);
  53.  
  54. printf("Das Ergebnis ist:\n");
  55. bitPrint(ergebnis);
  56. }
Add Comment
Please, Sign In to add comment