问题描述
- 输出从1到1000以内所有的完全平方数和完全立方数
-
输出从1到1000以内所有的完全平方数和完全立方数
如下例:
1 4 8 9 16 25 27 ……
求代码!!!!!!
!!!!!!!
!!!!!!!
解决方案
少年要好好学习,不能只求代码啊。
感觉你要求的东西只要好好学一下就能自己写出来了吧。。
而且你没说清楚需要什么语言的代码=。=
解决方案二:
#include <math.h>
#include <iostream.h>
using namespace std;
int main()
{
for (int i = 1; i <= 1000; i++)
{
if (abs(pow(i, 0.5) - (int)pow(i, 0.5)) < 0.001 ||
abs(pow(i, 1/3.0) - (int)pow(i, 1/3.0)) < 0.001)
cout << i << endl;
}
}
解决方案三:
结果:
1
4
8
9
16
25
27
36
49
64
81
100
121
144
169
196
225
256
289
324
361
400
441
484
529
576
625
676
729
784
841
900
961
http://codepad.org/ivkB5e8O
在线运行通过。
解决方案四:
有个小bug
修正下
#include <math.h>
#include <iostream.h>
using namespace std;
int main()
{
for (int i = 1; i <= 1000; i++)
{
if (abs(pow(i, 0.5) - (int)(pow(i, 0.5) + 0.000001)) < 0.001 ||
abs(pow(i, 1/3.0) - (int)(pow(i, 1/3.0) + 0.000001)) < 0.001)
cout << i << endl;
}
}
1
4
8
9
16
25
27
36
49
64
81
100
121
125
144
169
196
216
225
256
289
324
343
361
400
441
484
512
529
576
625
676
729
784
841
900
961
1000
解决方案五:
同楼上。。。你要什么语言的代码都没说。。
不过一般用C写的话 其他语言也都差不多可以参考吧
解决方案六:
可以使用类似丑数的方法,挺好的。
解决方案七:
#include
#include
int main(){
int i,j;
double a,b;
printf("1到1000以内所有的完全平方数为:n");
for(i=1;i<=1000;i++){
a=sqrt(i);
if(floor(a+0.5)==a)
printf("%dn",i);
}
printf("1到1000以内所有的完全立方数为:n");
for(i=1;i<=1000;i++){
a=pow(i,1.0/3);
if(floor(a+0.5)==a)
printf("%dn",i);
}
return 0;
}
解决方案八:
这是c++的一个代码
#include
using namespace std;
int main()
{
//平方和
for(int i=1; i<=1000;i++){
cout<<i*i<<" ";
}
cout<<'n';
//立方和
for(int i=1; i<=1000;i++){
cout<<i*i*i<<" ";
}
}