10的9次方是多少呀回答的1后面9个0到底是
- 提问者网友:焚苦与心
- 2021-10-28 09:15
- 二级知识专家网友:从此江山别
- 2021-01-28 15:30
10的1次方为10,10的2次方为100,10的3次方为1000……以此类推,10的9次方,就是在1的后面有9个0。
- 1楼网友:荒野風
- 2020-10-11 17:51
我编了一个,代码不是很简洁,但思路简洁,用的是电脑最基本的方法,枚举法,它怎么说就怎么做,原代码如下:
#include<stdio.h> #include<conio.h> int chengfang(int x,int y) { int i,z=1; for(i=1;i<=y;i++) { z*=x; } return z; } main() { int i,j,a[10],tag; for(i=10;i<=100;i++) { for(j=0;j<10;j++) a[j]=0; tag=1; if(chengfang(i,3)>=1000&&chengfang(i,3)<10000&&chengfang(i,4)>=100000&&chengfang(i,4)<1000000) { a[chengfang(i,3)%10]=1; a[(chengfang(i,3)%100-chengfang(i,3)%10)/10]=1; a[(chengfang(i,3)%1000-chengfang(i,3)%100)/100]=1; a[(chengfang(i,3)-chengfang(i,3)%1000)/1000]=1; a[chengfang(i,4)%10]=1; a[(chengfang(i,4)%100-chengfang(i,4)%10)/10]=1; a[(chengfang(i,4)%1000-chengfang(i,4)%100)/100]=1; a[(chengfang(i,4)%10000-chengfang(i,4)%1000)/1000]=1; a[(chengfang(i,4)%100000-chengfang(i,4)%10000)/10000]=1; a[(chengfang(i,4)-chengfang(i,4)%100000)/100000]=1; for(j=0;j<10;j++) tag*=a[j]; if(tag==1) { printf("%d\t",i); continue; } } } getch(); }
我试了,好使,输出例子为:
简单说一下思路,就是测试从10到100的所有数据,先验证其立方、四次方位数是否满足要求,满足要求的再验证是否从0到9都有,用数组a记录,没有的为0,有的为1,最后用tag确定是否都为1,若是则输出。
至于简化源代码、缩短用时等,有很多方法,只要多点分析就可以了,如将从10到100范围缩小,或多点其它思维,不过有时思维过多就不用电脑了,就可以直接通过数学方法算出来的。我写的是未含任何思维的最原始的源代码。
此为无所不能原创,未抄袭。