博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
九的余数
阅读量:4984 次
发布时间:2019-06-12

本文共 1111 字,大约阅读时间需要 3 分钟。

 

自然数123456789101112……198919901991被9除,余数是几?根据“一个数被9除的余数,等于它各位数字之和被9除的余数”这一“弃九法”的原理,考虑本题的答案,只须考虑:A=1+2+3+4+5+6+7+8+9+1+0+1+1+……+1+9+8+9+1+9+9+0+1+9+9+1被9的余数,并将它与如下的B作比较:B=1+2+3+4+5+6+7+8+9+10+11+……+1989+1990+1991。由于B中的每个数,都对应A中若干个数字之和(即该数的各位数字之和,如B中的+10就与A中的+1+0对应;B中的1991就与A中的+1+9+9+1对应).而两者对9来说,余数都是一样的[如B中1991÷9=221……2;A中的(1+9+9+1)÷9=20÷9=2……2].也就是说,它们可以互相替换,被9除时,不会影响余数.根据这个道理:A÷9与B÷9的余数是相等的.而后者是前1991个自然数的和,可以每9个数作为一段,即:B=(1+2+3+……+8+9)+(10+11+……+18+19)+……+(1981+……+1989)+1990+1991。而每一段都能被9整除,最后剩下两个数,它除以9余数为3.所以本题答案应是:余数是3。
 

九的余数

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 3
 
描述

现在给你一个自然数n,它的位数小于等于一百万,现在你要做的就是求出这个数整除九之后的余数。

 
输入
第一行有一个整数m(1<=m<=8),表示有m组测试数据;
随后m行每行有一个自然数n。
输出
输出n整除九之后的余数,每次输出占一行。
样例输入
3 4 5 465456541
样例输出
4 5 4
#include
#include
using namespace std; int main() {
int sum,i,len; int m; string str; cin>>m; while(m--) {
cin>>str; i=0;sum=0; len=str.length(); while(i
>m; return 0; }
 
另附超大求超大数除以1-9的余数的讨论 网址  

转载于:https://www.cnblogs.com/pcoda/archive/2011/07/16/2108237.html

你可能感兴趣的文章
差一点搞混了Transactional注解
查看>>
javascript基本函数
查看>>
C#转义字符
查看>>
前端公共库cdn服务推荐//提高加载速度/节省流量
查看>>
python openpyxl内存不主动释放 ——关闭Excel工作簿后内存依旧(MemoryError)
查看>>
snprintf 返回值陷阱 重新封装
查看>>
asp.net GridView多行表头的实现,合并表头
查看>>
C#套打
查看>>
codeforce 932E Team Work(第二类斯特林数)
查看>>
PolyCluster: Minimum Fragment Disagreement Clustering for Polyploid Phasing 多聚类:用于多倍体的最小碎片不一致聚类...
查看>>
省市三级菜单
查看>>
C#中的事件
查看>>
【每日进步】July 2012
查看>>
策略模式
查看>>
单机部署多实例redis
查看>>
Cookie登录保存
查看>>
继承与重写的具体事例
查看>>
327 作业
查看>>
sql 取汉字首字母
查看>>
python3 字符串属性(四)
查看>>