title: Check Large Number Divisible 13 Not
signature: def checkLargeNumberDivisible13Not(num: String) = {
test_code: import scala.collection.mutable.HashMap
  import scala.collection.immutable.HashSet
  
  
  // SOLUTION CODE
  // ============================================
  PLACEHOLDER_CODE_BODY
  
  
  // TESTING CODE 
  // ============================================
  def validateSolution(actual: Boolean , expected: Boolean): Boolean = {
      actual.toString == expected.toString
  }
  
  def driver(num: String, expected: Boolean): String = {
      try {
          if (validateSolution(PLACEHOLDER_FN_NAME(num),expected)) {
              "PASSED"
          } else{
              "FAILED"
          }
      }catch{
          case e: Exception => {e.getClass.getName}
      }
  
  }
  object QuestionEvaluator extends App {
  
      println(s"TEST-0...${driver(
        "vzTUaItpCpLnjY", 
        false    
      )}")   
  
  
      println(s"TEST-1...${driver(
        "33855", 
        true    
      )}")   
  
  
      println(s"TEST-2...${driver(
        "0011110101011", 
        true    
      )}")   
  
  
      println(s"TEST-3...${driver(
        "MMQ", 
        false    
      )}")   
  
  
      println(s"TEST-4...${driver(
        "439340517954", 
        true    
      )}")   
  
  
      println(s"TEST-5...${driver(
        "000000000", 
        true    
      )}")   
  
  
      println(s"TEST-6...${driver(
        "UugAuRRJbjEgl", 
        true    
      )}")   
  
  
      println(s"TEST-7...${driver(
        "6406553695441", 
        true    
      )}")   
  
  
      println(s"TEST-8...${driver(
        "011001", 
        true    
      )}")   
  
  
      println(s"TEST-9...${driver(
        "yjFqEEvgiNjEX", 
        true    
      )}")   
  
  }
  
source_py: def check_large_number_divisible_13_not(num):
      length = len(num)
      if ((length == 1) and (num[0] == '0')):
          return True
      if ((length % 3) == 1):
          num = (str(num) + '00')
          length += 2
      elif ((length % 3) == 2):
          num = (str(num) + '0')
          length += 1
      sum = 0
      p = 1
      for i in range((length - 1), (- 1), (- 1)):
          group = 0
          group += (ord(num[i]) - ord('0'))
          i -= 1
          group += ((ord(num[i]) - ord('0')) * 10)
          i -= 1
          group += ((ord(num[i]) - ord('0')) * 100)
          sum = (sum + (group * p))
          p *= (- 1)
      sum = abs(sum)
      return ((sum % 13) == 0)
source_cpp: bool check_large_number_divisible_13_not(string num) {
    int length = num . size ( );
    if ( length == 1 && num [ 0 ] == '0' ) return true;
    if ( length % 3 == 1 ) {
      num += "00";
      length += 2;
    }
    else if ( length % 3 == 2 ) {
      num += "0";
      length += 1;
    }
    int sum = 0, p = 1;
    for ( int i = length - 1;
    i >= 0;
    i -- ) {
      int group = 0;
      group += num [ i -- ] - '0';
      group += ( num [ i -- ] - '0' ) * 10;
      group += ( num [ i ] - '0' ) * 100;
      sum = sum + group * p;
      p *= ( - 1 );
    }
    sum = abs ( sum );
    return ( sum % 13 == 0 );
  }