第十一周项目4-特殊三位数
来源:互联网 发布:域名注册不用实名 编辑:程序博客网 时间:2024/06/05 11:55
输出满足条件n=a!+b!+c!的所有三位数n,其中,a、b、c分别是n的百、十、个位数,并且用自定义函数实现求阶乘。
/* *Copyright (c) 2014,烟台大学计算机学院 *All gight reserved. *文件名称:temp.cpp *作者:邵帅 *完成时间:2014年11月5日 *版本号:v1.0*/#include <iostream>using namespace std;int main(){ long fac(int n); int n, a, b, c, sum; cout << "满足条件n=a!+b!+c!的所有三位数:"; for (n = 100; n <= 999; n++) { a = n / 100; b = (n / 10) % 10; c = n % 10; sum = fac(a) + fac(b) + fac(c); if (sum == n) cout << n; } return 0;}long fac(int n){ int i, y = 1; for (i = 1; i <= n; i++) y = y * i; return y;}运行结果:
思路:要想求出符合题意的数字,要先构造一个阶乘的函数fac(),利用sum的变量, sum = fac(a) + fac(b) + fac(c),这样,利用穷举法列出符合题意的数字,本程序最关键的是如何求出百、十、个位数的数字:百位直接利用int整形的特殊性求出,十位利用/10再取/10的余数,个位直接取/10的余数。
@ Mayuko
0 0
- 第十一周项目4-特殊三位数
- 第十一周项目 4 特殊的三位数
- 第十一周项目4-特殊的三位数
- 第十一周项目4特殊三位数
- 第十一周上机项目4 特殊三位数
- 第十一周项目4-特殊三位数
- 第十一周 项目4:特殊的三位数
- 第十一周项目4--特殊三位数
- 第十一周项目4 特殊的三位数
- 第十一周项目4-特殊三位数
- 第十一周项目4--特殊的三位数
- 第十一周项目四:特殊的三位数
- 第十一周 项目四:特殊三位数
- 第十一周项目四 特殊三位数
- 第十一周项目四:特殊三位数
- 第十一周项目四:特殊三位数
- 第十一周项目四 特殊三位数
- 第十一周项目四之特殊三位数
- 初探Oracle:表的管理命令简单介绍
- POJ1125——Stockbroker Grapevine
- 一些国外优秀的elasticsearch使用案例
- 二分法查找
- (八)Z-Stack 添加自己任务
- 第十一周项目4-特殊三位数
- C#中实现byte[]与任意对象互换(服务端通讯专用)
- makefile 总结
- 用VS2010创建三层架构开发模式及三层架构的研究
- C++创建对象的两种方法(C++用new和不用new创建类对象)
- spring mvc注解方式实现向导式跳转页面
- 《NoSQL精粹》读后感(一)
- [Unity3D]蓝港面试题
- 单点登录cas与权限管理框架shiro集成------普通web项目方式