Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { IResultValidator } from '../IResultValidator';
  2.  
  3. export default class Validator implements IResultValidator {
  4.     async validate(input: string, result: string): Promise<boolean> {
  5.         const inputs = input.split(/,/);
  6.         const results = result.split(/,/);
  7.        
  8.         if (inputs.length !== results.length) {
  9.             return false;
  10.         }
  11.  
  12.         for (let i = 0; i < inputs.length; i++) {
  13.             if (results[i] !== this.sumOfNth(Number(inputs[i]))) {
  14.                 return false;
  15.             }
  16.         }
  17.  
  18.         return true;
  19.     }
  20.  
  21.     private sumOfNth(n: number) {
  22.         let sum = 0;
  23.  
  24.         for (let i = 0; i < n; i++) {
  25.             sum += 1 / (1 + (4 * i));
  26.         }
  27.  
  28.         return sum.toFixed(2) + '';
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement