# 算法题：如何计算大数的mod？

## 本文概述

``````Input:  num = "12316767678678", a = 10
Output: num (mod a) ≡ 8``````

## C ++

``````// C++ program to compute mod of a big number represented
// as string
#include<iostream>
using namespace std;

// Function to compute num (mod a)
int mod(string num, int a)
{
// Initialize result
int res = 0;

// One by one process all digits of 'num'
for ( int i = 0; i < num.length(); i++)
res = (res*10 + ( int )num[i] - '0' ) %a;

return res;
}

// Driver program
int main()
{
string num = "12316767678678" ;
cout << mod(num, 10);
return 0;
}``````

## Java

``````// Java program to compute mod of a big
// number represented as string
import java.io.*;

class GFG {

// Function to compute num (mod a)
static int mod(String num, int a)
{

// Initialize result
int res = 0 ;

// One by one process all digits of 'num'
for ( int i = 0 ; i < num.length(); i++)
res = (res * 10 + ( int )num.charAt(i)
- '0' ) % a;

return res;
}

// Driver program
public static void main(String[] args)
{

String num = "12316767678678" ;

System.out.println(mod(num, 10 ));
}
}

// This code is contributed by vt_m.``````

## Python3

``````# program to compute mod of a big number
# represented as string

# Function to compute num (mod a)
def mod(num, a):

# Initialize result
res = 0

# One by one process all digits
# of 'num'
for i in range ( 0 , len (num)):
res = (res * 10 + int (num[i])) % a;

return res

# Driver program
num = "12316767678678" ;
print (mod(num, 10 ))

# This code is contributed by Sam007``````

## C#

``````// C# program to compute mod of a big
// number represented as string
using System;

public class GFG
{

// Function to compute num (mod a)
static int mod(String num, int a)
{

// Initialize result
int res = 0;

// One by one process all
// digits of 'num'
for ( int i = 0; i < num.Length; i++)
res = (res * 10 + ( int )num[i]-
'0' ) % a;

return res;
}

// Driver code
public static void Main()
{
String num = "12316767678678" ;

Console.WriteLine(mod(num, 10));
}
}

// This code is contributed by Sam007``````

## 的PHP

``````<?php
// PHP program to compute mod
// of a big number represented
// as string

// Function to compute num (mod a)
function mod( \$num , \$a )
{
// Initialize result
\$res = 0;

// One by one process
// all digits of 'num'
for ( \$i = 0; \$i < \$r = strlen ( \$num ); \$i ++)
\$res = ( \$res * 10 +
\$num [ \$i ] - '0' ) % \$a ;

return \$res ;
}

// Driver Code
\$num = "12316767678678" ;
echo mod( \$num , 10);

// This code is contributed by ajit
?>``````

``8``

• 回顶