title: Sum Factors Number
signature: sumFactorsNumber(n) {
test_code: import 'dart:convert';
  
  // SOLUTION CODE
  // ============================================
  PLACEHOLDER_CODE_BODY
  
  // TESTING CODE 
  // ============================================
  bool validateSolution(int actual, int expected){
      return actual.toString() == expected.toString();
  }
  
  String driver(n, int expected){
      try
      {
          if (validateSolution(PLACEHOLDER_FN_NAME(n), expected)){
              return "PASSED";
          }
          return "FAILED";
      }catch(exception_object){
          return exception_object.runtimeType.toString();
      }
  }
  
  int main() {
  
      print("TEST-0...${driver(
          76, 
          140)
      }");
  
      print("TEST-1...${driver(
          21, 
          32)
      }");
  
      print("TEST-2...${driver(
          4, 
          7)
      }");
  
      print("TEST-3...${driver(
          49, 
          57)
      }");
  
      print("TEST-4...${driver(
          35, 
          48)
      }");
  
      print("TEST-5...${driver(
          55, 
          72)
      }");
  
      print("TEST-6...${driver(
          43, 
          44)
      }");
  
      print("TEST-7...${driver(
          39, 
          56)
      }");
  
      print("TEST-8...${driver(
          36, 
          91)
      }");
  
      print("TEST-9...${driver(
          5, 
          6)
      }");
  
      return 0;
  }
source_py: def sum_factors_number(n):
      result = 0
      for i in range(2, (int(math.sqrt(n)) + 1)):
          if ((n % i) == 0):
              if (i == (n / i)):
                  result = (result + i)
              else:
                  result = (result + (i + (n // i)))
      return ((result + n) + 1)
source_cpp: int sum_factors_number(int n) {
    int result = 0;
    for ( int i = 2;
    i <= sqrt ( n );
    i ++ ) {
      if ( n % i == 0 ) {
        if ( i == ( n / i ) ) result += i;
        else result += ( i + n / i );
      }
    }
    return ( result + n + 1 );
  }