1323 |
1337 |
1324 self assert:(1 factorial = 1). |
1338 self assert:(1 factorial = 1). |
1325 self assert:(2 factorial = 2). |
1339 self assert:(2 factorial = 2). |
1326 self assert:(10 factorial = 3628800). |
1340 self assert:(10 factorial = 3628800). |
1327 self assert:(11 factorial = 39916800). |
1341 self assert:(11 factorial = 39916800). |
|
1342 self assert:(12 factorial = 479001600). |
|
1343 self assert:(13 factorial digitBytes = #[0 204 40 115 1]). |
|
1344 self assert:(13 factorial = 6227020800). |
|
1345 self assert:(14 factorial digitBytes = #[0 40 59 76 20]). |
|
1346 self assert:(14 factorial = 87178291200). |
|
1347 self assert:(15 factorial digitBytes = #[0 88 119 119 48 1]). |
|
1348 self assert:(15 factorial = 1307674368000). |
|
1349 self assert:(16 factorial digitBytes = #[0 128 117 119 7 19]). |
|
1350 self assert:(16 factorial = 20922789888000). |
|
1351 self assert:(17 factorial digitBytes = #[0 128 205 238 126 67 1]). |
|
1352 self assert:(17 factorial = 355687428096000). |
|
1353 self assert:(18 factorial digitBytes = #[0 0 115 202 236 190 22]). |
|
1354 self assert:(18 factorial = 6402373705728000). |
|
1355 self assert:(19 factorial digitBytes = #[0 0 137 6 147 43 176 1]). |
|
1356 self assert:(19 factorial = 121645100408832000). |
|
1357 self assert:(20 factorial digitBytes = #[0 0 180 130 124 103 195 33]). |
1328 self assert:(20 factorial = 2432902008176640000). |
1358 self assert:(20 factorial = 2432902008176640000). |
1329 self assert:(50 factorial = 30414093201713378043612608166064768844377641568960512000000000000). |
1359 self assert:(50 factorial = 30414093201713378043612608166064768844377641568960512000000000000). |
1330 |
1360 |
1331 " |
1361 " |
1332 self basicNew testFactorial |
1362 self basicNew testFactorial |
1333 " |
1363 " |
1334 |
1364 |
1335 "Created: / 24-04-2010 / 13:52:23 / cg" |
1365 "Created: / 24-04-2010 / 13:52:23 / cg" |
1336 "Modified: / 27-04-2010 / 10:34:22 / cg" |
1366 "Modified: / 26-02-2016 / 15:43:16 / cg" |
1337 ! |
1367 ! |
1338 |
1368 |
1339 testGCD |
1369 testGCD |
1340 "/ <testedMethods: #( (Integer >> #gcd:) ) > |
1370 "/ <testedMethods: #( (Integer >> #gcd:) ) > |
1341 |
1371 |
2472 |
2502 |
2473 self assert:((divMod at:1) * 1099511627775 + (divMod at:2) = nr). |
2503 self assert:((divMod at:1) * 1099511627775 + (divMod at:2) = nr). |
2474 |
2504 |
2475 " |
2505 " |
2476 self basicNew testLargeDivision3 |
2506 self basicNew testLargeDivision3 |
|
2507 " |
|
2508 ! |
|
2509 |
|
2510 testLargeDivision4 |
|
2511 self assert:(9000000000 \\ 4000000000) = (900 \\ 400 * 10000000). |
|
2512 self assert:(-9000000000 \\ 4000000000) = (-900 \\ 400 * 10000000). |
|
2513 self assert:(9000000000 \\ -4000000000) = (900 \\ -400 * 10000000). |
|
2514 self assert:(-9000000000 \\ -4000000000) = (-900 \\ -400 * 10000000). |
|
2515 self assert:(16000000000 \\ 4000000000) = (1600 \\ 400 * 10000000). |
|
2516 self assert:(-16000000000 \\ 4000000000) = (-1600 \\ 400 * 10000000). |
|
2517 self assert:(16000000000 \\ -4000000000) = (1600 \\ -400 * 10000000). |
|
2518 self assert:(-16000000000 \\ -4000000000) = (-1600 \\ -400 * 10000000). |
|
2519 |
|
2520 self assert:(9000000000000000000 \\ 4000000000000000000) = (900 \\ 400 * 10000000000000000). |
|
2521 self assert:(-9000000000000000000 \\ 4000000000000000000) = (-900 \\ 400 * 10000000000000000). |
|
2522 self assert:(9000000000000000000 \\ -4000000000000000000) = (900 \\ -400 * 10000000000000000). |
|
2523 self assert:(-9000000000000000000 \\ -4000000000000000000) = (-900 \\ -400 * 10000000000000000). |
|
2524 self assert:(16000000000000000000 \\ 4000000000000000000) = (1600 \\ 400 * 10000000000000000). |
|
2525 self assert:(-16000000000000000000 \\ 4000000000000000000) = (-1600 \\ 400 * 10000000000000000). |
|
2526 self assert:(16000000000000000000 \\ -4000000000000000000) = (1600 \\ -400 * 10000000000000000). |
|
2527 self assert:(-16000000000000000000 \\ -4000000000000000000) = (-1600 \\ -400 * 10000000000000000). |
|
2528 |
|
2529 self assert:(9000000000 \\ 7) = 5. |
|
2530 self assert:(-9000000000 \\ 7) = 2. |
|
2531 self assert:(9000000000 \\ -7) = -2. |
|
2532 self assert:(-9000000000 \\ -7) = -5. |
|
2533 |
|
2534 self assert:(900 rem: 400) = 100. |
|
2535 self assert:(-900 rem: 400) = -100. |
|
2536 self assert:(900 rem: -400) = 100. |
|
2537 self assert:(-900 rem: -400) = -100. |
|
2538 |
|
2539 self assert:(9000000000 rem: 4000000000) = 1000000000. |
|
2540 self assert:(-9000000000 rem: 4000000000) = -1000000000. |
|
2541 self assert:(9000000000 rem: -4000000000) = 1000000000. |
|
2542 self assert:(-9000000000 rem: -4000000000) = -1000000000. |
|
2543 |
|
2544 " |
|
2545 self basicNew testLargeDivision4 |
|
2546 " |
|
2547 ! |
|
2548 |
|
2549 testLargeDivision5 |
|
2550 self assert:(9000000000 quo: 4000000000) = ((900 quo: 400) ). |
|
2551 self assert:(-9000000000 quo: 4000000000) = ((-900 quo: 400) ). |
|
2552 self assert:(9000000000 quo: -4000000000) = ((900 quo: -400) ). |
|
2553 self assert:(-9000000000 quo: -4000000000) = ((-900 quo: -400) ). |
|
2554 self assert:(16000000000 quo: 4000000000) = ((1600 quo: 400) ). |
|
2555 self assert:(-16000000000 quo: 4000000000) = ((-1600 quo: 400) ). |
|
2556 self assert:(16000000000 quo: -4000000000) = ((1600 quo: -400) ). |
|
2557 self assert:(-16000000000 quo: -4000000000) = ((-1600 quo: -400) ). |
|
2558 |
|
2559 self assert:(9000000000000000000 quo: 4000000000000000000) = ((900 quo: 400) ). |
|
2560 self assert:(-9000000000000000000 quo: 4000000000000000000) = ((-900 quo: 400) ). |
|
2561 self assert:(9000000000000000000 quo: -4000000000000000000) = ((900 quo: -400) ). |
|
2562 self assert:(-9000000000000000000 quo: -4000000000000000000) = ((-900 quo: -400) ). |
|
2563 self assert:(16000000000000000000 quo: 4000000000000000000) = ((1600 quo: 400) ). |
|
2564 self assert:(-16000000000000000000 quo: 4000000000000000000) = ((-1600 quo: 400) ). |
|
2565 self assert:(16000000000000000000 quo: -4000000000000000000) = ((1600 quo: -400) ). |
|
2566 self assert:(-16000000000000000000 quo: -4000000000000000000) = ((-1600 quo: -400) ). |
|
2567 |
|
2568 self assert:(9000000000 quo: 7) = 1285714285. |
|
2569 self assert:(-9000000000 quo: 7) = -1285714285. |
|
2570 self assert:(9000000000 quo: -7) = -1285714285. |
|
2571 self assert:(-9000000000 quo: -7) = 1285714285. |
|
2572 |
|
2573 " |
|
2574 self basicNew testLargeDivision5 |
|
2575 " |
|
2576 ! |
|
2577 |
|
2578 testLargeDivision6 |
|
2579 |t| |
|
2580 |
|
2581 t := 20 factorial. |
|
2582 self assert:(t = 2432902008176640000). |
|
2583 t := t / 20. |
|
2584 self assert:(t = 19 factorial). |
|
2585 self assert:(t = 121645100408832000). |
|
2586 |
|
2587 t := t / 19. |
|
2588 self assert:(t = 18 factorial). |
|
2589 self assert:(t = 6402373705728000). |
|
2590 |
|
2591 t := t / 18. |
|
2592 self assert:(t = 17 factorial). |
|
2593 self assert:(t = 355687428096000). |
|
2594 |
|
2595 t := t / 17. |
|
2596 self assert:(t = 16 factorial). |
|
2597 self assert:(t = 20922789888000). |
|
2598 |
|
2599 t := t / 16. |
|
2600 self assert:(t = 15 factorial). |
|
2601 self assert:(t = 1307674368000). |
|
2602 |
|
2603 t := t / 15. |
|
2604 self assert:(t = 14 factorial). |
|
2605 self assert:(t = 87178291200). |
|
2606 |
|
2607 t := t / 14. |
|
2608 self assert:(t = 13 factorial). |
|
2609 self assert:(t = 6227020800). |
|
2610 |
|
2611 t := t / 13. |
|
2612 self assert:(t = 12 factorial). |
|
2613 self assert:(t = 479001600). |
|
2614 |
|
2615 t := t / 12. |
|
2616 self assert:(t = 11 factorial). |
|
2617 self assert:(t = 39916800). |
|
2618 |
|
2619 t := t / 11. |
|
2620 self assert:(t = 10 factorial). |
|
2621 self assert:(t = 3628800). |
|
2622 |
|
2623 " |
|
2624 self basicNew testLargeDivision6 |
2477 " |
2625 " |
2478 ! |
2626 ! |
2479 |
2627 |
2480 testLargeIntegerHelpers |
2628 testLargeIntegerHelpers |
2481 |t1 t2| |
2629 |t1 t2| |
2578 " |
2726 " |
2579 self basicNew testLargeIntegerHelpers |
2727 self basicNew testLargeIntegerHelpers |
2580 " |
2728 " |
2581 |
2729 |
2582 "Modified: / 20.5.1999 / 09:41:19 / cg" |
2730 "Modified: / 20.5.1999 / 09:41:19 / cg" |
|
2731 ! |
|
2732 |
|
2733 testLargeIntegerHelpers2 |
|
2734 |t1 r| |
|
2735 |
|
2736 "/ absSubtract: |
|
2737 |
|
2738 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2739 r := t1 absDestructiveSubtract:16r00ffffffffffffffff. |
|
2740 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2741 self assert:(r == true). |
|
2742 |
|
2743 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2744 r := t1 absDestructiveSubtract:16r010000000000000000. |
|
2745 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2746 self assert:(r == false). |
|
2747 |
|
2748 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2749 r := t1 absDestructiveSubtract:16r00ffffffffffffffffff. |
|
2750 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2751 self assert:(r == true). |
|
2752 |
|
2753 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2754 r := t1 absDestructiveSubtract:16r01000000000000000000. |
|
2755 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2756 self assert:(r == false). |
|
2757 |
|
2758 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2759 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffff. |
|
2760 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2761 self assert:(r == true). |
|
2762 |
|
2763 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2764 r := t1 absDestructiveSubtract:16r0100000000000000000000. |
|
2765 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2766 self assert:(r == false). |
|
2767 |
|
2768 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2769 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffffff. |
|
2770 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2771 self assert:(r == true). |
|
2772 |
|
2773 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2774 r := t1 absDestructiveSubtract:16r010000000000000000000000. |
|
2775 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2776 self assert:(r == false). |
|
2777 |
|
2778 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2779 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffffffff. |
|
2780 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2781 self assert:(r == true). |
|
2782 |
|
2783 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2784 r := t1 absDestructiveSubtract:16r01000000000000000000000000. |
|
2785 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2786 self assert:(r == false). |
|
2787 |
|
2788 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2789 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffffffffff. |
|
2790 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2791 self assert:(r == true). |
|
2792 |
|
2793 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2794 r := t1 absDestructiveSubtract:16r0100000000000000000000000000. |
|
2795 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2796 self assert:(r == false). |
|
2797 |
|
2798 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2799 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffffffffffff. |
|
2800 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2801 self assert:(r == true). |
|
2802 |
|
2803 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2804 r := t1 absDestructiveSubtract:16r010000000000000000000000000000. |
|
2805 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2806 self assert:(r == false). |
|
2807 |
|
2808 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2809 r := t1 absDestructiveSubtract:16r00ffffffffffffffffffffffffffffff. |
|
2810 self assert:(t1 digitBytes = #[16r01 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2811 self assert:(r == true). |
|
2812 |
|
2813 t1 := LargeInteger digitBytes:#[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r01 ] copy sign:1. |
|
2814 r := t1 absDestructiveSubtract:16r01000000000000000000000000000000. |
|
2815 self assert:(t1 digitBytes = #[16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 16r00 ]). |
|
2816 self assert:(r == false). |
|
2817 " |
|
2818 self basicNew testLargeIntegerHelpers2 |
|
2819 " |
|
2820 ! |
|
2821 |
|
2822 testLargeIntegerHelpers3 |
|
2823 "/ absDivMod: |
|
2824 |
|
2825 self assert:(9000000000000000000 absDivMod: 4000) = #(2250000000000000 0). |
|
2826 self assert:(-9000000000000000000 absDivMod: 4000) = #(2250000000000000 0). |
|
2827 self assert:(9000000000000000000 absDivMod: -4000) = #(2250000000000000 0). |
|
2828 self assert:(-9000000000000000000 absDivMod: -4000) = #(2250000000000000 0). |
|
2829 |
|
2830 self assert:(9000000000000000001 absDivMod: 4000) = #(2250000000000000 1). |
|
2831 self assert:(-9000000000000000001 absDivMod: 4000) = #(2250000000000000 1). |
|
2832 self assert:(9000000000000000001 absDivMod: -4000) = #(2250000000000000 1). |
|
2833 self assert:(-9000000000000000001 absDivMod: -4000) = #(2250000000000000 1). |
|
2834 |
|
2835 self assert:(9000000000000000000 absDivMod: 40000) = #(225000000000000 0). |
|
2836 self assert:(-9000000000000000000 absDivMod: 40000) = #(225000000000000 0). |
|
2837 self assert:(9000000000000000000 absDivMod: -40000) = #(225000000000000 0). |
|
2838 self assert:(-9000000000000000000 absDivMod: -40000) = #(225000000000000 0). |
|
2839 |
|
2840 self assert:(9000000000000000000 absDivMod: 400000) = #(22500000000000 0). |
|
2841 self assert:(-9000000000000000000 absDivMod: 400000) = #(22500000000000 0). |
|
2842 self assert:(9000000000000000000 absDivMod: -400000) = #(22500000000000 0). |
|
2843 self assert:(-9000000000000000000 absDivMod: -400000) = #(22500000000000 0). |
|
2844 |
|
2845 self assert:(9000000000000000000 absDivMod: 4000000) = #(2250000000000 0). |
|
2846 self assert:(-9000000000000000000 absDivMod: 4000000) = #(2250000000000 0). |
|
2847 self assert:(9000000000000000000 absDivMod: -4000000) = #(2250000000000 0). |
|
2848 self assert:(-9000000000000000000 absDivMod: -4000000) = #(2250000000000 0). |
|
2849 |
|
2850 self assert:(9000000000000000000 absDivMod: 40000000) = #(225000000000 0). |
|
2851 self assert:(-9000000000000000000 absDivMod: 40000000) = #(225000000000 0). |
|
2852 self assert:(9000000000000000000 absDivMod: -40000000) = #(225000000000 0). |
|
2853 self assert:(-9000000000000000000 absDivMod: -40000000) = #(225000000000 0). |
|
2854 |
|
2855 self assert:(9000000000000000000 absDivMod: 400000000) = #(22500000000 0). |
|
2856 self assert:(-9000000000000000000 absDivMod: 400000000) = #(22500000000 0). |
|
2857 self assert:(9000000000000000000 absDivMod: -400000000) = #(22500000000 0). |
|
2858 self assert:(-9000000000000000000 absDivMod: -400000000) = #(22500000000 0). |
|
2859 |
|
2860 self assert:(9000000000000000000 absDivMod: 4000000000) = #(2250000000 0). |
|
2861 self assert:(-9000000000000000000 absDivMod: 4000000000) = #(2250000000 0). |
|
2862 self assert:(9000000000000000000 absDivMod: -4000000000) = #(2250000000 0). |
|
2863 self assert:(-9000000000000000000 absDivMod: -4000000000) = #(2250000000 0). |
|
2864 |
|
2865 self assert:(9000000000000000000 absDivMod: 40000000000) = #(225000000 0). |
|
2866 self assert:(-9000000000000000000 absDivMod: 40000000000) = #(225000000 0). |
|
2867 self assert:(9000000000000000000 absDivMod: -40000000000) = #(225000000 0). |
|
2868 self assert:(-9000000000000000000 absDivMod: -40000000000) = #(225000000 0). |
|
2869 |
|
2870 self assert:(9000000000000000000 absDivMod: 400000000000) = #(22500000 0). |
|
2871 self assert:(-9000000000000000000 absDivMod: 400000000000) = #(22500000 0). |
|
2872 self assert:(9000000000000000000 absDivMod: -400000000000) = #(22500000 0). |
|
2873 self assert:(-9000000000000000000 absDivMod: -400000000000) = #(22500000 0). |
|
2874 |
|
2875 self assert:(9000000000000000000 absDivMod: 4000000000000) = #(2250000 0). |
|
2876 self assert:(-9000000000000000000 absDivMod: 4000000000000) = #(2250000 0). |
|
2877 self assert:(9000000000000000000 absDivMod: -4000000000000) = #(2250000 0). |
|
2878 self assert:(-9000000000000000000 absDivMod: -4000000000000) = #(2250000 0). |
|
2879 |
|
2880 self assert:(9000000000000000000 absDivMod: 40000000000000) = #(225000 0). |
|
2881 self assert:(-9000000000000000000 absDivMod: 40000000000000) = #(225000 0). |
|
2882 self assert:(9000000000000000000 absDivMod: -40000000000000) = #(225000 0). |
|
2883 self assert:(-9000000000000000000 absDivMod: -40000000000000) = #(225000 0). |
|
2884 |
|
2885 self assert:(9000000000000000000 absDivMod: 400000000000000) = #(22500 0). |
|
2886 self assert:(-9000000000000000000 absDivMod: 400000000000000) = #(22500 0). |
|
2887 self assert:(9000000000000000000 absDivMod: -400000000000000) = #(22500 0). |
|
2888 self assert:(-9000000000000000000 absDivMod: -400000000000000) = #(22500 0). |
|
2889 |
|
2890 self assert:(9000000000000000000 absDivMod: 4000000000000000) = #(2250 0). |
|
2891 self assert:(-9000000000000000000 absDivMod: 4000000000000000) = #(2250 0). |
|
2892 self assert:(9000000000000000000 absDivMod: -4000000000000000) = #(2250 0). |
|
2893 self assert:(-9000000000000000000 absDivMod: -4000000000000000) = #(2250 0). |
|
2894 |
|
2895 self assert:(9000000000000000000 absDivMod: 4000000000000000000) = #(2 1000000000000000000). |
|
2896 self assert:(-9000000000000000000 absDivMod: 4000000000000000000) = #(2 1000000000000000000). |
|
2897 self assert:(9000000000000000000 absDivMod: -4000000000000000000) = #(2 1000000000000000000). |
|
2898 self assert:(-9000000000000000000 absDivMod: -4000000000000000000) = #(2 1000000000000000000). |
|
2899 |
|
2900 " |
|
2901 self basicNew testLargeIntegerHelpers3 |
|
2902 " |
2583 ! |
2903 ! |
2584 |
2904 |
2585 testLargeMultiplication |
2905 testLargeMultiplication |
2586 |t1 t2| |
2906 |t1 t2| |
2587 |
2907 |