Advertisement
Guest User

Untitled

a guest
Jul 4th, 2015
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. public static int Modulo(int p, int q)
  2. {
  3. q = Math.Abs(q);
  4. var result = p % q;
  5. if (result < 0)
  6. result += q;
  7. return result;
  8. }
  9.  
  10. int p = 102;
  11. int q = 16;
  12. int needAdd = Modulo(-p, q);
  13.  
  14. int p = 102;
  15. int needAdd = -p & 0xf;
  16.  
  17. am = (a + 0x0FL) & ~0x0FL; // ближайшее сверху число, кратное 16
  18. d = am - a; // разница
  19.  
  20. исходное_число = 102
  21. кратное_число = 16
  22. частное = 6
  23.  
  24. если остаток_от_деления(исходное_число) == 0
  25. возвращаем исходное_число
  26. иначе
  27. возвращаем (частное + 1) * кратное_число - исходное_число
  28.  
  29. #include <stdio.h>
  30.  
  31. int main() {
  32. int input_number = 29;
  33. int multiple = 16;
  34. int quotient = input_number / multiple;
  35. int answer = 0;
  36.  
  37. if (input_number % multiple == 0) {
  38. answer = input_number;
  39. } else {
  40. answer = (quotient + 1) * multiple - input_number;
  41. }
  42.  
  43. printf("%un", answer);
  44.  
  45. return 0;
  46. }
  47.  
  48. искомое = делитель - функция ( делимое, делитель )
  49. искомое = делитель - ( делимое оператор делитель )
  50.  
  51. искомое = делитель - ( делимое - делитель * функция ( делимое, делитель ) )
  52. искомое = делитель - ( делимое - делитель * ( делимое оператор делитель ) )
  53.  
  54. искомое = делитель - ( делимое - делитель * функция ( делимое оператор делитель ) )
  55.  
  56. если делимое > 0 и делитель > 0
  57.  
  58. число = делимое
  59.  
  60. пока число >= 0
  61. число = число - делитель
  62. конец цикла
  63.  
  64. искомое = -число
  65.  
  66. конец условия
  67.  
  68. Math.floor((102+15) / 16) * 16
  69.  
  70. function calc(x, m) {
  71. return Math.floor((x+m-1) / m) * m;
  72. }
  73.  
  74. 0: 0000 0000
  75. 16: 0001 0000
  76. 32: 0010 0000
  77.  
  78. 11: 0000 1011 - только третий бит = "0"
  79. добавить 0100 - "1" для третьего бита
  80. добавить 0001 - и ещё +1, чтобы все младшие биты обнулились.
  81. -------------
  82. не хватало 0100 (это 4) и ещё 1 = итого +5
  83.  
  84. 22: 0001 0110 - нули в первом и четвертом битах
  85. добавить 1001 (это 9)
  86. добавить 0001 (единицу)
  87. -------------
  88. добавляем 10
  89.  
  90. исходное число: 0101 1100
  91. маска мл. 4 бит: 0000 1111
  92. ---------------------------
  93. результат «И»: 0000 1100
  94.  
  95. 1100
  96. «НЕ»
  97. -----
  98. 0011
  99.  
  100. 0011 = 3
  101. +0001 = 1
  102. -----
  103. 0100 = 4
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement