C++ 竖式问题
来源:互联网 发布:淘宝联盟提现时间限制 编辑:程序博客网 时间:2024/04/28 03:05
问题描述:
找出所有形如abc*de(三位数乘以两位数)的算式,使得在完整的竖式中,所有数字都属于一个特定的数字集合。输入数字集合(相邻数字之间没有空格),输出所有竖式。每个竖式前应有编号,之后应有一个空行。最后输出解的总数。具体格式见样例输出(为了便于观察,竖式中的空格改用小数点显示,但你的程序应该输出空格,而非小数点)。
样例输入:2357
样例输出:
<1>
..775
X..33
-----
.2325
2325.
-----
25575
The number of solutions = 1
//其实就是输入一串数字,然后枚举出所有的abc(三位数)*de(两位数)相乘的结果,并对他们的结果以及运算过程中出现的数与输入的一串数字进行比较,查看是否包含在一串数字中,结果为真,则记录一个运算的结果并输出,然后继续验证。模拟了一下我们在手算乘法时的过程。
<span style="color:#000099;"><strong><span style="font-size:18px;">#include<iostream>#include<string.h>using namespace std;int main(){int i,ok,abc,de,x,y,z,count=0;char s[20],buf[99];scanf("%s",s);for(abc=111;abc<=999;abc++){for(de=11;de<=99;de++){x=abc*(de%10); y=abc*(de/10);z=abc*de;sprintf(buf,"%d%d%d%d%d",abc,de,x,y,z);ok=1;for(i=0;i<strlen(buf);i++){if(strchr(s,buf[i]) == NULL) ok=0;}if(ok){printf("<%d>\n",++count);printf("%5d\nX%4d\n------\n%5d\n%4d\n-------\n%5d\n\n",abc,de,x,y,z);}}}printf("The number of solutions = %d\n",count);return 0;}</span></strong></span>
0 0
- 竖式问题--c
- 刘汝佳 竖式问题(C语言)
- 每天一点C语言--竖式问题
- C语言 竖式问题 模拟竖式
- C问题
- c问题
- c问题
- c问题
- C问题
- C++/C 颜色问题
- C++/C const问题
- 问题 C: 背包问题
- C/C++"野指针"问题
- <c:set> c:forEach> 问题
- 【C/C++】运算符问题
- 【C/C++】指针基本问题
- C/C++:全排列问题
- 【C/C++】sizeof问题总结
- 自旋锁spinlock见解
- maven in action(二)maven安装和配置-->myeclipse
- 00_linux下安装SQLite
- printf("%d",5.01)和printf("%f",5)的输出结果
- 完成端口
- C++ 竖式问题
- Cocos2d-x 3.4 之 文本输入之 EditBox
- 1013求偶数和
- Linux下运行Java的jar包方法
- 内存分配及时机
- git - 查看已暂存和未暂存的更新以及文件修改之后暂存区、上次提交过的不同
- apache-tomcat-7.0.34 安装配置
- java实验二的实验4和实验6 →_→
- C语言----数据的宽度