mirror of
https://github.com/trekhleb/javascript-algorithms.git
synced 2025-07-07 01:44:52 +08:00
Add primality tests.
This commit is contained in:
@ -1,24 +0,0 @@
|
|||||||
/**
|
|
||||||
* @param {function(n: number)} testFunction
|
|
||||||
*/
|
|
||||||
export default function primalityTest(testFunction) {
|
|
||||||
expect(testFunction(1)).toBeTruthy();
|
|
||||||
expect(testFunction(2)).toBeTruthy();
|
|
||||||
expect(testFunction(3)).toBeTruthy();
|
|
||||||
expect(testFunction(5)).toBeTruthy();
|
|
||||||
expect(testFunction(11)).toBeTruthy();
|
|
||||||
expect(testFunction(191)).toBeTruthy();
|
|
||||||
expect(testFunction(191)).toBeTruthy();
|
|
||||||
expect(testFunction(199)).toBeTruthy();
|
|
||||||
|
|
||||||
expect(testFunction(-1)).toBeFalsy();
|
|
||||||
expect(testFunction(0)).toBeFalsy();
|
|
||||||
expect(testFunction(4)).toBeFalsy();
|
|
||||||
expect(testFunction(6)).toBeFalsy();
|
|
||||||
expect(testFunction(12)).toBeFalsy();
|
|
||||||
expect(testFunction(14)).toBeFalsy();
|
|
||||||
expect(testFunction(25)).toBeFalsy();
|
|
||||||
expect(testFunction(192)).toBeFalsy();
|
|
||||||
expect(testFunction(200)).toBeFalsy();
|
|
||||||
expect(testFunction(400)).toBeFalsy();
|
|
||||||
}
|
|
@ -1,5 +1,29 @@
|
|||||||
import trialDivision from '../trialDivision';
|
import trialDivision from '../trialDivision';
|
||||||
import primalityTest from './primalityTest';
|
|
||||||
|
/**
|
||||||
|
* @param {function(n: number)} testFunction
|
||||||
|
*/
|
||||||
|
function primalityTest(testFunction) {
|
||||||
|
expect(testFunction(1)).toBeTruthy();
|
||||||
|
expect(testFunction(2)).toBeTruthy();
|
||||||
|
expect(testFunction(3)).toBeTruthy();
|
||||||
|
expect(testFunction(5)).toBeTruthy();
|
||||||
|
expect(testFunction(11)).toBeTruthy();
|
||||||
|
expect(testFunction(191)).toBeTruthy();
|
||||||
|
expect(testFunction(191)).toBeTruthy();
|
||||||
|
expect(testFunction(199)).toBeTruthy();
|
||||||
|
|
||||||
|
expect(testFunction(-1)).toBeFalsy();
|
||||||
|
expect(testFunction(0)).toBeFalsy();
|
||||||
|
expect(testFunction(4)).toBeFalsy();
|
||||||
|
expect(testFunction(6)).toBeFalsy();
|
||||||
|
expect(testFunction(12)).toBeFalsy();
|
||||||
|
expect(testFunction(14)).toBeFalsy();
|
||||||
|
expect(testFunction(25)).toBeFalsy();
|
||||||
|
expect(testFunction(192)).toBeFalsy();
|
||||||
|
expect(testFunction(200)).toBeFalsy();
|
||||||
|
expect(testFunction(400)).toBeFalsy();
|
||||||
|
}
|
||||||
|
|
||||||
describe('trialDivision', () => {
|
describe('trialDivision', () => {
|
||||||
it('should detect prime numbers', () => {
|
it('should detect prime numbers', () => {
|
||||||
|
Reference in New Issue
Block a user