C++程序:求大数除以r的余数
在这个问题中,我们得到一个表示大数的字符串num和一个整数R。我们的任务是创建一个C++程序来求大数除以r的余数。
问题描述 − 我们需要找到由字符串定义的数字除以r(一个两位数)的余数。
让我们举个例子来理解这个问题
输入
num = “123423450942121” r = 54
输出
7
解决方案
为了找到余数,我们显然需要进行除法运算。但是,对巨大的数字进行除法是一个复杂的过程,为了简化这个过程,我们将逐位进行除法。并存储余数。这个过程将持续到包含数字的整个字符串(从最高有效位到最低有效位)。最后打印余数。
程序演示了我们解决方案的工作原理
示例
#include <iostream>
#include <string.h>
using namespace std;
int calcRem(string num, int R){
int currDigit, rem = 0;
for (int i = 0; i < num.length(); i++) {
currDigit = rem * 10 + (num[i] - '0');
rem = currDigit % R;
}
return rem;
}
int main() {
string num = "123423450942121";
int R = 54;
cout<<"The remainder when large number is divided by r is"<<calcRem(num, R);
return 0;
}输出
The remainder when large number is divided by r is 7
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP