大大大大数怎么求余?C语言

article/2025/9/27 1:57:46

问题:

一个特别大的数除以23求余数用C语言应该怎么算啊?比如23232323232323232323232323232323232323232323232323232323233除以23,怎么算余数?

数据类型在计算机的存储是有大小限制的,所以才出现了大数求余这种问题,相对应的,我们的钱存储在银行也不可能用数字来表示,毕竟整个中国人的钱,远远超过了最大的数据类型的大小。

计算计算机最大数据类型的值:

#include "stdio.h"int main()
{printf("0~%lu\n",(1UL << sizeof(unsigned long long int)*8) -1);return 0;
}

输出

0~18446744073709551615

我们所说的大数是数字大于最大存储的变量,一个unsigned long long int存储最大的自然数是18446744073709551615,如果自然数大于这个数,就会溢出了。

有事说事,这个题目涉及数学知识,但是我觉得学好数学也是学好计算机的基础。

—— 有个知乎的同学进行了论证

对于取模23,只需要

1.声明结果变量,假设它是ans, 令ans = 0作为起始条件。

2.取走最高位数字,假设它是t,令 ans = ans +t.

3.如果还有数字没有被取走,则令 ans = (10*ans )%23,并返回第二步。

最终得到的 ans就是答案

—— 代码如下

#include "stdio.h"int main()
{int c;int ans = 0;/*如果没有按下Ctrl+C 就一直在while循环里面判断*/while ((c = getchar()) != EOF) {if (c == '\n') {/*输出结果*/printf("%d\n", ans);ans = 0;} else {/*递归计算*/// c in '0'...'9'c -= '0';ans = ans +c;ans = (ans*10)%3;}}return 0;
}

程序输出结果

weiqifa@bsp-ubuntu1804:~/c/dashuqiuyu$ gcc 1.c && ./a.out
0
0
1
1
2
2
3
0
12312312312
0
3235
1
23
2
5
2
156151859198153151561561561561561
0

数学论证过程

https://www.zhihu.com/question/431163782/answer/1644964013

推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~


http://chatgpt.dhexx.cn/article/hU1Rvlwp.shtml

相关文章

求整数的余数C语言,c语言求整数余数 大一C语言作业. 编写程序输入两个整数,输出它们的商和余数。...

c语言中怎样取余数 C语言提供了一个取余数的运算符%&#xff0c;称之为“模”运算符。只有两个整数之间才可以进行模运算&#xff01;a%b 表示 用b来整除a&#xff0c;商整数&#xff0c;得到余数。如&#xff1a;5%324%313%30 在 C语言中 取整 &#xff0c; 求余的符号各是什么…

c语言求余的方法,c语言求余的实现方法_后端开发

python语言是由哪个人创造的_后端开发 python语言是由荷兰人“Guido van Rossum”在1989年的时候创造出来的一种面向对象的解释型高级编程语言&#xff0c;并将其命名为“Python”&#xff0c;Python有着简单、开发速度快、节省实际和容易学习等特点。 c语言求余的实现方法 求余…

C语言散列法求英文字母字符串求余,c语言求余数

he00692694 2012.10.13 采纳率&#xff1a;48% 等级&#xff1a;13 已帮助&#xff1a;6711人 #include #include void main() { int num,num2;//这里改了 printf(\\"Please input two number:\\"); scanf(\\"%d%d\\",&num,&num2); printf(\\…

C语言-关于求余

求余是一种数学计算方法&#xff0c;指一个数除以另一个数&#xff0c;不够除的部分就是余数&#xff0c;就是求余的结果。整除就是一个数除以另一个数&#xff0c;刚刚好的倍数&#xff0c;这里没有四舍五入&#xff0c;不够一倍的都将舍去。 一、求余负数 求余一个负数 验…

Docker Desktop 安装使用教程

系列文章&#xff1a; 一分钟教会你使用Docker Desktop搭建RocketMQ–巨简单 30秒完成在Docker Desktop中搭建kafka----你肯定没我快 在Docker中搭建 prometheus&#xff08;普罗米修斯&#xff09;这个大佬 来来来&#xff0c;咱统计一下Docker常用命令 什么&#xff1f;…

docker安装步骤

目录 一、docker安装步骤 Ⅰ、官方安装文档 Ⅱ、具体安装步骤 一、docker安装步骤 Ⅰ、官方安装文档 Install Docker Engine | Docker Documentation Ⅱ、具体安装步骤 1、卸载原来安装过的docker&#xff0c;如果没有安装可以不需要卸载 yum remove docker \docker-cli…

Docker环境安装

本文介绍yum与二进制两种环境部署方式&#xff0c;二选一即可。 一、yum安装 若有旧版本docker需要使用以下命令卸载: sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-eng…

Docker buildx 安装

文章目录 推荐简介开启实验室特性安装docker buildx安装模拟器Build多平台image问题及解决方法问题一问题二 参考链接 推荐 欢迎关注公众号9500后&#xff0c;围观技术、生活和日常。 简介 Docker buildx是docker的一个插件&#xff0c;它包含如下作用&#xff1a; 支持Mob…

Docker安装MySQL

目录 前言 一、拉取镜像 二、查看镜像 三、运行镜像 四、查看正在运行的容器 五、查看容器内部 六、修改mysql配置 七、重启mysql服务&#xff0c;使其配置生效 八、设置docker启动时启动mysql 九、重启mysql 十、授权远程访问 10.1 进入容器内部 10.2 登陆mysql 10.…

docker安装rabbitmq

1.准备 需要安装好docker环境&#xff0c;可以阅读文章在Centos和Redhat上安装Docker_小帅虎丶丿的博客-CSDN博客 学习如何安装docker 需要安装docker-compose,了解yaml格式文件的编写以及一些常用的docker-compose的属性&#xff0c;可以参考文章 需要会使用dockerfile构建…

Docker中安装宝塔

1、docker拉取ubuntu系统 docker pull ubuntu 2、运行容器 docker run -i -t -d --name bt -p 2000:20 -p 2100:21 -p 8000:80 -p 4430:443 -p 8880:888 -p 8888:8888 --privilegedtrue -v /d/baota:/www/wwwroot ubuntu -v后的/d/baota代表本地D盘的baota目录与ubuntu系统…

Win7安装Docker

Win7安装Docker 下载安装包为&#xff1a;DockerToolbox.exe下载docker的win安装工具 如果是win10系统&#xff0c;可以直接去docker官网下载docker for windows&#xff1b;如果不是&#xff0c;为了避免乱七八糟的错误&#xff0c;建议直接去阿里云下载老一点的版本&#xf…

Docker下安装Redis超详细步骤

查看需要安装的镜像版本 dockerHub官网地址 搜索reids 2.点击标签 3.查看需要的版本 在安装好docker的linux中执行命令 拉取镜像 //拉取最新版本 docker pull redis //拉取指定版本 docker pull redis:6.0.8查看是否拉取成功 docker images去redis官网下载redis,然后在…

【docker】Mac M1版本下载安装

文章目录 docker简介为什么使用dockerdocker Mac系统M1安装M1版本下载地址 配置国内加速镜像检查是否安装成功总结 docker简介 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中&#xff0c;然后发布到任何流行的 Linux…

Windows10下载安装docker

Docker 简介 Docker 并非是一个通用的容器工具&#xff0c;它依赖于已存在并运行的 Linux 内核环境。 Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境&#xff0c;因此它执行的效率几乎等同于所部署的 Linux 主机。 因此&#xff0c;Docker 必须部署在 Linux…

windows下Docker的下载与安装

一、下载 1、下载地址&#xff1a;docker下载 选择适合自己操作系统的 2、下载完毕之后&#xff0c;双击安装包进⾏安装即可。 3、打开docker&#xff0c;一般会弹出下面的弹窗点击链接&#xff0c;按照网页提示依次进行操作。 下载完成后&#xff0c;运行上一步中下载的…

docker下载安装

1. 安装docker 离线安装路径&#xff1a; https://download.docker.com/linux/static/stable/x86_64/ 下载&#xff1a;docker-18.06.3-ce.tgz 使用ftp上传文件到服务器 解压文件&#xff1a; tar -zxvf docker-18.06.3-ce.tgz 复制docker文件&#xff1a;cp docker/* /usr/b…

【Docker】Docker下载与安装

目录 零、文章简介 一、Docker介绍 二、Docker安装 2-1、使用Boot2Docker安装 2-1-1、安装 2-1-2、初始化 2-1-3、初始化失败&#xff1a;解决&#xff1f; 2-1-4、小结和检测 2-2、Docker Toolbox 2-2-1、下载 2-2-2、安装 2-2-3、初始化 2-2-4、初始化后的样子 …

Docker 下载安装使用(简单教程)

虚拟化容器技术。Docker基于镜像&#xff0c;可以秒级启动各种容器。每一种容器都是一个完整的运行环境&#xff0c;容器之间互相隔离。 安装Docekr https://docs.docker.com/engine/install/fedora/ Docker下载地址 1、卸载linux服务器中旧版本的docker&#xff08;不管有没…

uniapp中app分享小程序方法

在uniapp中只需要调用uni.share这个api就可以发起app中分享到小程序&#xff0c;其中id需要绑定小程序管理后台中的id。 但是很多时候会报[share&#xff1a;-3]这个错误&#xff0c;官方给出的解释是&#xff1a;‘发送失败’&#xff0c;后来我多次尝试后发现&#xff0c;we…