当前位置: 首页 > news >正文

大幂计算和大阶乘计算【C语言】

大幂计算:

#include<stdio.h>
long long int c[1000000]={0};
int main()
{long long a,b,x=1;c[0]=1;printf("请输入底数:");scanf("%lld",&a);printf("请输入指数:");scanf("%lld",&b);for(int i=0;i<b;i++){if(x>99900){printf("太大了!无法计算!");return 0;}for(int j=0;j<x;j++){c[j]*=a;}for(int j=0;j<x;j++){if(c[j]>9){for(int k=j;k<x;k++){if(c[k]<9)break;if(k==x-1)x++;c[k+1]+=c[k]/10;c[k]%=10;}}}}printf("%lld^%lld=",a,b);for(int i=x-1;i>=0;i--){if(i==x-1&&c[i]==0){x--;continue;}printf("%lld",c[i]);}printf("\n结果共计%lld位数!",x);return 0;
}

大阶乘计算 :

#include<stdio.h>
long long int c[1000000];
int main()
{long long a,x=1;c[0]=1;printf("请输入阶数:");scanf("%lld",&a);for(int i=2;i<=a;i++){if(x>999000){printf("太大了!无法计算!");return 0;}for(int j=0;j<x;j++){c[j]*=i;}for(int j=0;j<x;j++){if(c[j]>9){for(int k=j;k<x;k++){if(c[k]<9)break;if(k==x-1)x++;c[k+1]+=c[k]/10;c[k]%=10;}}}}printf("%lld!=",a);for(int i=x-1;i>=0;i--){if(i==x-1&&c[i]==0){x--;continue;}printf("%lld",c[i]);}printf("\n结果共计%lld位数!",x);return 0;
}

应用的题:

P1009 [NOIP 1998 普及组] 阶乘之和https://www.luogu.com.cn/problem/P1009题解代码

#include<stdio.h>
int as(int a,int c[]){int x=1;c[0]=1;for(int i=2;i<=a;i++){for(int j=0;j<x;j++){c[j]*=i;}for(int j=0;j<x;j++){if(c[j]>9){for(int k=j;k<x;k++){if(c[k]<9)break;if(k==x-1)x++;c[k+1]+=c[k]/10;c[k]%=10;}}}}return x;
}
int main() {int a,exp=0;int data[100]={0};scanf("%d",&a);for(int i=1;i<=a;i++){int temp[100]={0},b;b=as(i,temp);if(b>exp)exp=b;for(int j=0;j<exp;j++){data[j]+=temp[j];if(data[j]>9){data[j+1]++;data[j]%=10;if(j==exp-1)exp++;}}}for(int i=exp-1;i>=0;i--){printf("%d",data[i]);}return 0;
}
http://www.lryc.cn/news/538415.html

相关文章:

  • 【Linux】详谈 进程控制
  • Linux top 命令
  • Leetcode 424-替换后的最长重复字符
  • 《StyleDiffusion:通过扩散模型实现可控的解耦风格迁移》学习笔记
  • Django 创建表时 “__str__ ”方法的使用
  • 图像处理之CSC
  • C语言数组之二维数组
  • PyTorch 源码学习:阅读经验 代码结构
  • vite+vue3开发低版本浏览器不支持es6语法的问题排坑笔记
  • C语言中printf()函数,格式输出符
  • AI 编程工具—Cursor 进阶篇 数据分析
  • 青少年编程与数学 02-009 Django 5 Web 编程 20课题、测试
  • zookeeper watch
  • vue3.x 的shallowReactive 与 shallowRef 详细解读
  • 鸿蒙NEXT开发-界面渲染(条件和循环)
  • python电影数据分析及可视化系统建设
  • 在本地校验密码或弱口令 (windows)
  • pytest测试专题 - 1.3 测试用例发现规则
  • 零基础学习人工智能
  • LeetCode热题100- 缺失的第一个正数【JavaScript讲解】
  • JAVA泛型介绍与举例
  • 【ISO 14229-1:2023 UDS诊断(会话控制0x10服务)测试用例CAPL代码全解析③】
  • Vivado生成edif网表及其使用
  • Win10环境借助DockerDesktop部署大数据时序数据库Apache Druid
  • mac 意外退出移动硬盘后再次插入移动硬盘不显示怎么办
  • 力扣动态规划-32【算法学习day.126】
  • 【算法进阶详解 第一节】树状数组
  • 【苍穹外卖】学习
  • Python常见面试题的详解8
  • Deepseek R1模型本地化部署与API实战指南:释放企业级AI生产力