计算 1到10的n次方的范围中 含有 a数字(小于10)的个数和 能被a整出的 个数和。(求高手指点 我觉得我这个办法很笨 代码也不优)
来源:互联网 发布:linux tomcat7 log4j 编辑:程序博客网 时间:2024/05/15 19:37
昨天看见有朋友问到这个问题,就动手写了写一个很笨的算法,希望有人来 探讨下,我是自学的C++刚学的菜鸟
#include<iostream>#include<vector>using namespace std;class Arithmetics{public :int arithmetics(int inum);void PowerOperation(int n);private:int pn;//安全起见 最好保护};/*power operation 10的 n幂数求得*/void Arithmetics::PowerOperation(int n){int inumber = 1;while(n--)inumber = inumber * 10;pn = inumber;}/*算法:找出数字*/int Arithmetics::arithmetics(int inum){int count = 0;int temp ,temp1, temp2, flag;flag = inum;//传递 需要求的包含是数字比如7,即求的是包含7这个数字,和能被7整除的 数vector<int> iver;temp1 = temp2 = temp = 0;//这个我感觉定义了 比较好表达 具体我也说不出 for (int i = 1; i< pn;i ++){if (i>10){temp1 =temp2 = temp = i ;while (temp1 > 10){if (temp1 = temp1 /10){if ( (temp1 == flag)||(temp1%10 ==flag))//判断是否含有要包含数字比如7的个数{iver.push_back(i);}}if ((temp2 >0 )){temp2 = temp2%10;if ( temp2 == flag){iver.push_back(i);}}}} if (((i % 7) == 0)){iver.push_back(i);}}for (vector<int>:: iterator iiter = iver.begin();iiter != iver.end();iiter++){count++;cout<<*iiter<<endl;for (vector<int>:: iterator iiter1 = iiter+1;iiter1 != iver.end();iiter1++){if(*iiter == *iiter1)//帅选出相同的元素{cout<<" "<<*iiter<<endl;//打印下相同的元素++iiter;//通过偏移指针 选出。}}}cout<<count<<endl;return count;}int main(){int flag, n;cout<<"输入要计算包含数字(小于10的数字 用 回车键 隔开输出的第二个数字)"<<" 输入计算1~10的多少次方 "<<endl;cin >> flag>>n;class Arithmetics A;A.PowerOperation(n);A.arithmetics(flag);while(1);//方便查看调试信息 设置的等待
- 计算 1到10的n次方的范围中 含有 a数字(小于10)的个数和 能被a整出的 个数和。(求高手指点 我觉得我这个办法很笨 代码也不优)
- 求小于N的正整数中含有1的数字的个数
- n全排列输出和 n个数的组合(数字范围a~b)
- 求0到n之间所有数字中1的个数和
- k次方 求1个数的n次方的前三位数和后三位数
- 计算0到N中包含数字1的个数
- 如何从N个数中选出最大(小)的n个数?我的想法
- 求小于n的素数个数(模板)
- 求1到(10^N - 1)中9的个数
- 求n个数的和
- 欧拉函数--(求小于n的整数中与n互质的个数)
- 计算0到N中包含数字1的个数(整合)
- 求小于等于n的质数个数
- 求(1~n)个数中1的个数
- [数学知识]求小于等于a^b的与a^b互质的数的个数与和
- 计算数组中2的N次方的个数
- 求a的N次方
- 计算二进制中含有1的个数
- Debian下无线网卡配置
- 大学本科计算机专业那些课 左飞
- 跟我学MySQL存储过程
- Android Binder设计与实现 - 设计篇
- 加大扶持青年创业力度 鼓励青年与祖国共同奋进
- 计算 1到10的n次方的范围中 含有 a数字(小于10)的个数和 能被a整出的 个数和。(求高手指点 我觉得我这个办法很笨 代码也不优)
- 网络版最小化安装Debian后的配置
- 【C语言】——判断给定的路径是目录还是文件
- linux多线程编程
- 用自由的软件
- Debian硬盘安装的几个关键设置
- 项目二、
- S5PV210 -- UBOOT修改为只使用MEMORY PORT2
- 可伸缩性最佳实践:来自eBay的经验