Advertisement
strikero

discrete2

Jan 23rd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.44 KB | None | 0 0
  1. package com.discretemath.discretemath;
  2.  
  3. /**
  4. * Created by rickygwapo on 1/19/2018.
  5. */
  6.  
  7. public class Methods {
  8. boolean used[] = new boolean[11];
  9. boolean secondUsed[] = new boolean[11];
  10.  
  11. public void initialize(){
  12. for(int i =0; i<used.length; i++){
  13. used[i] = false;
  14. secondUsed[i] = false;
  15. }
  16. }
  17.  
  18. public void checkDivisiblity(int num){
  19. String numString = "";
  20. numString = Integer.toString(num);
  21. if(numString.length()==1){
  22. Sone(num);
  23. return;
  24. }
  25. int lastNum;
  26. String lastNumString;
  27. lastNumString = numString.substring(numString.length() - 1);
  28. lastNum = Integer.parseInt(lastNumString);
  29.  
  30.  
  31. two(lastNum);
  32. three(numString);
  33. if(used[0] == true && used[1] == true){
  34. used[4] = true;
  35. }
  36. four(numString);
  37. five(lastNum);
  38. seven(numString);
  39. eight(numString);
  40. nine(numString);
  41. ten(lastNum);
  42. eleven(numString);
  43. if(used[1] == true && used[2]==true){
  44. used[10] = true;
  45. }
  46. }
  47.  
  48. public void one(int num){
  49. switch(num){
  50. case 2:
  51. used[0] = true;
  52. return;
  53. case 3:
  54. used[1] = true;
  55. return;
  56. case 4:
  57. used[2] = true;
  58. return;
  59. case 5:
  60. used[3] = true;
  61. return;
  62. case 6:
  63. used[0] = true;
  64. used[1] = true;
  65. used[4] = true;
  66. return;
  67. case 7:
  68. used[5] = true;
  69. return;
  70. case 8:
  71. used[2] = true;
  72. used[0] = true;
  73. used[6] = true;
  74. return;
  75. case 9:
  76. used[1] = true;
  77. used[7] = true;
  78. return;
  79. }
  80. }
  81.  
  82. public void two(int num){
  83. if(num == 0 || num == 2 || num == 4 || num == 6 || num == 8 ){
  84. used[0] = true;
  85. }
  86. }
  87. public void three(String numString){
  88. String individualString[] = new String[numString.length()];
  89. int num[] = new int[numString.length()];
  90. int sum = 0; // sum of all individual numbers
  91. for(int i =0; i<numString.length(); i++){
  92. individualString[i] = numString.substring(i,i+1);
  93. num[i] = Integer.parseInt(individualString[i]);
  94. sum = sum + num[i];
  95. }
  96. int divide;
  97. divide = (sum / 3)*3;
  98. if((sum-divide) == 0){
  99. used[1] = true;
  100. }
  101.  
  102. }
  103. public void four(String numString){
  104. int num;
  105. int divide;
  106. num = Integer.parseInt(numString.substring(numString.length() - 2));
  107. divide = (num / 4)*4;
  108. if((num-divide) == 0){
  109. used[2] = true;
  110. }
  111. }
  112.  
  113. public void five(int num){
  114. if(num == 5 || num == 0){
  115. used[3] = true;
  116. }
  117.  
  118.  
  119. }
  120. public void seven(String numString){
  121. long lastNum = Integer.parseInt(numString.substring(numString.length()-1));
  122. long otherNum = Long.parseLong(numString.substring(numString.length()-1));
  123. lastNum = lastNum*2;
  124. long total = otherNum - lastNum;
  125. long divide = (total/7)*7;
  126. if((total-divide)==0){
  127. used[5] = true;
  128. }
  129. }
  130. public void eight(String numString){
  131. int divide;
  132. int num;
  133. switch(numString.length()){
  134. case 2:
  135. num = Integer.parseInt(numString);
  136. divide = (num/8)&8;
  137. if((num-divide)==0){
  138. used[6] = true;
  139. return;
  140. }
  141. break;
  142. default:
  143. num = Integer.parseInt(numString.substring(numString.length()-3));
  144. divide = (num/8)&8;
  145. if((num-divide)==0){
  146. used[6] = true;
  147. return;
  148. }
  149. break;
  150. }
  151. }
  152. public void nine(String numString){
  153. String individualString[] = new String[numString.length()];
  154. int num[] = new int[numString.length()];
  155. int sum; // sum of all individual numbers
  156. for(int i =0; i<numString.length(); i++){
  157. individualString[i] = numString.substring(i,i+1);
  158. num[i] = Integer.parseInt(individualString[i]);
  159. }
  160. sum = num[0];
  161. for(int i = 0; i<num.length-1;i++){
  162. sum = sum + num[i+1];
  163. }
  164. String sumLength = String.valueOf(sum);
  165. if(sumLength.length() == 1){
  166. if(sum == 9){
  167. used[7] = true;
  168. return;
  169. }
  170. return;
  171. }
  172. nine(sumLength);
  173. }
  174.  
  175. public void ten(int num){
  176. if(num == 0){
  177. used[8] = true;
  178. }
  179. }
  180.  
  181. public void eleven(String numString){
  182. String individualString[] = new String[numString.length()];
  183. int num[] = new int[numString.length()];
  184.  
  185. int sum; // sum of all individual numbers
  186. for(int i =0; i<numString.length(); i++){
  187. individualString[i] = numString.substring(i,i+1);
  188. num[i] = Integer.parseInt(individualString[i]);
  189. }
  190. sum = 0;
  191. for(int i =0; i<numString.length(); i=i+2){
  192. if(numString.length()>i+1){
  193. sum = sum + (num[i]- num[i+1]);
  194. }else{
  195. sum = sum+num[i];
  196. }
  197. }
  198. if(sum == 11 || sum == -11 || sum == 0){
  199. used[9] = true;
  200. }
  201. }
  202.  
  203.  
  204. public boolean getUsed(int element){
  205. return used[element];
  206. }
  207.  
  208.  
  209. public void checkSecondDivisiblity(int num){
  210. String numString = "";
  211. numString = Integer.toString(num);
  212. if(numString.length()==1){
  213. Sone(num);
  214. return;
  215. }
  216.  
  217. int lastNum;
  218. String lastNumString;
  219. lastNumString = numString.substring(numString.length() - 1);
  220. lastNum = Integer.parseInt(lastNumString);
  221.  
  222.  
  223. Stwo(lastNum);
  224. Sthree(numString);
  225. if(secondUsed[0] == true && secondUsed[1] == true){
  226. secondUsed[4] = true;
  227. }
  228. Sfour(numString);
  229. Sfive(lastNum);
  230. Sseven(numString);
  231. Seight(numString);
  232. Snine(numString);
  233. Sten(lastNum);
  234. Seleven(numString);
  235. if(secondUsed[1] == true && secondUsed[2]==true){
  236. secondUsed[10] = true;
  237. }
  238. }
  239.  
  240.  
  241.  
  242.  
  243. public void Sone(int num){
  244. switch(num){
  245. case 2:
  246. secondUsed[0] = true;
  247. return;
  248. case 3:
  249. secondUsed[1] = true;
  250. return;
  251. case 4:
  252. secondUsed[2] = true;
  253. return;
  254. case 5:
  255. secondUsed[3] = true;
  256. return;
  257. case 6:
  258. secondUsed[0] = true;
  259. secondUsed[1] = true;
  260. secondUsed[4] = true;
  261. return;
  262. case 7:
  263. secondUsed[5] = true;
  264. return;
  265. case 8:
  266. secondUsed[2] = true;
  267. secondUsed[0] = true;
  268. secondUsed[6] = true;
  269. return;
  270. case 9:
  271. secondUsed[1] = true;
  272. secondUsed[7] = true;
  273. return;
  274. }
  275. }
  276.  
  277. public void Stwo(int num){
  278. if(num == 0 || num == 2 || num == 4 || num == 6 || num == 8 ){
  279. secondUsed[0] = true;
  280. }
  281. }
  282. public void Sthree(String numString){
  283. String individualString[] = new String[numString.length()];
  284. int num[] = new int[numString.length()];
  285. int sum = 0; // sum of all individual numbers
  286. for(int i =0; i<numString.length(); i++){
  287. individualString[i] = numString.substring(i,i+1);
  288. num[i] = Integer.parseInt(individualString[i]);
  289. sum = sum + num[i];
  290. }
  291. int divide;
  292. divide = (sum / 3)*3;
  293. if((sum-divide) == 0){
  294. secondUsed[1] = true;
  295. }
  296.  
  297. }
  298. public void Sfour(String numString){
  299. int num;
  300. int divide;
  301. num = Integer.parseInt(numString.substring(numString.length() - 2));
  302. divide = (num / 4)*4;
  303. if((num-divide) == 0){
  304. secondUsed[2] = true;
  305. }
  306. }
  307.  
  308. public void Sfive(int num){
  309. if(num == 5 || num == 0){
  310. secondUsed[3] = true;
  311. }
  312.  
  313.  
  314. }
  315. public void Sseven(String numString){
  316. long lastNum = Integer.parseInt(numString.substring(numString.length()-1));
  317. long otherNum = Long.parseLong(numString.substring(numString.length()-1));
  318. lastNum = lastNum*2;
  319. long total = otherNum - lastNum;
  320. long divide = (total/7)*7;
  321. if((total-divide)==0){
  322. secondUsed[5] = true;
  323. }
  324. }
  325. public void Seight(String numString){
  326. int divide;
  327. int num;
  328. switch(numString.length()){
  329. case 2:
  330. num = Integer.parseInt(numString);
  331. divide = (num/8)&8;
  332. if((num-divide)==0){
  333. secondUsed[6] = true;
  334. return;
  335. }
  336. break;
  337. default:
  338. num = Integer.parseInt(numString.substring(numString.length()-3));
  339. divide = (num/8)&8;
  340. if((num-divide)==0){
  341. secondUsed[6] = true;
  342. return;
  343. }
  344. break;
  345. }
  346. }
  347. public void Snine(String numString){
  348. String individualString[] = new String[numString.length()];
  349. int num[] = new int[numString.length()];
  350. int sum; // sum of all individual numbers
  351. for(int i =0; i<numString.length(); i++){
  352. individualString[i] = numString.substring(i,i+1);
  353. num[i] = Integer.parseInt(individualString[i]);
  354. }
  355. sum = num[0];
  356. for(int i = 0; i<num.length-1;i++){
  357. sum = sum + num[i+1];
  358. }
  359. String sumLength = String.valueOf(sum);
  360. if(sumLength.length() == 1){
  361. if(sum == 9){
  362. secondUsed[7] = true;
  363. return;
  364. }
  365. return;
  366. }
  367. Snine(sumLength);
  368. }
  369.  
  370. public void Sten(int num){
  371. if(num == 0){
  372. secondUsed[8] = true;
  373. }
  374. }
  375.  
  376. public void Seleven(String numString){
  377. String individualString[] = new String[numString.length()];
  378. int num[] = new int[numString.length()];
  379.  
  380. int sum; // sum of all individual numbers
  381. for(int i =0; i<numString.length(); i++){
  382. individualString[i] = numString.substring(i,i+1);
  383. num[i] = Integer.parseInt(individualString[i]);
  384. }
  385. sum = 0;
  386. for(int i =0; i<numString.length(); i=i+2){
  387. if(numString.length()>i+1){
  388. sum = sum + (num[i]- num[i+1]);
  389. }else{
  390. sum = sum+num[i];
  391. }
  392. }
  393. if(sum == 11 || sum == -11 || sum == 0){
  394. secondUsed[9] = true;
  395. }
  396. }
  397.  
  398.  
  399.  
  400. public boolean getSecondUsed(int element){
  401. return secondUsed[element];
  402. }
  403.  
  404. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement