| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 544 人关注过本帖
标题:关于完全平方的问题,
只看楼主 加入收藏
alicefioan37
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2007-9-29
收藏
 问题点数:0 回复次数:9 
关于完全平方的问题,

要求用户输入两个数字X,Y,比如输入3,30,算一下一共有几个质数,和所有完全平方的数,比如3-30之间有4,9,16,25,这4个数是完全平方数。最后再把所有质数和可以平方的数都加起来,并且打印出来,
显示结果如下
Prime:3 5 7 11 13 17 19 23 29
Prime count = 9
Square: 4 9 16 25
Square count = 4
Sum of all primes and squares:181

下面是我写的,不过完全平方那部分好像不行,大侠们帮忙看看啊。

#include<stdio.h>
#include <conio.h>
#include <math.h>

int isPrime(int);
int findPrime (int, int ) ;
int findSquare(int,int);
int square (int);
int sum;

int main (void)
{
int x,y,sumPrime;

printf("Enter two numbers\n");
scanf("%d %d",&x,&y);

while(x <= y)
{
printf("Prime: ");
sumPrime=findPrime( x, y);

printf("\nSquare: ");
findSquare(x,y);

printf("\nsum of all primes and squares:%d",sum);

printf("\nEnter two numbers");
scanf("%d %d",&x,&y);
}
return 0;
}

int findPrime (int a, int b )
{
int t=0,c=0;
while(a<=b)
{

if(isPrime(a))

printf("%d ",a);
sum+=a;
c++;
a++;
}
printf("\nPrime count = %d\n",c);
return t ;
}

int isPrime(int n)
{
int i;

for(i=2;i<n;i++)

if(n%i==0)
return 0;
return 1;
}


int findSquare ( int a,int b)
{
int t;
if(square(t))



printf("%d", a);
c++;
sum+=a;

printf("\nSquare count = %d\n",c);
return 1;
}

int square (int x)
{

int i,k;
k = sqrt(i);
for(i=2;i<=x;i++)
{

if(k*k==1)
return 0;
return 1;
}
}

搜索更多相关主题的帖子: 平方 
2007-11-01 14:31
万兽无缰
Rank: 1
等 级:新手上路
威 望:1
帖 子:296
专家分:0
注 册:2007-8-27
收藏
得分:0 
以下是引用alicefioan37在2007-11-1 14:31:46的发言:

要求用户输入两个数字X,Y,比如输入3,30,算一下一共有几个质数,和所有完全平方的数,比如3-30之间有4,9,16,25,这4个数是完全平方数。最后再把所有质数和可以平方的数都加起来,并且打印出来,
显示结果如下
Prime:3 5 7 11 13 17 19 23 29
Prime count = 9
Square: 4 9 16 25
Square count = 4
Sum of all primes and squares:181

下面是我写的,不过完全平方那部分好像不行,大侠们帮忙看看啊。

#include<stdio.h>
#include <conio.h>
#include <math.h>

int isPrime(int);
int findPrime (int, int ) ;
int findSquare(int,int);
int square (int);
int sum;

int main (void)
{
int x,y,sumPrime;

printf("Enter two numbers\n");
scanf("%d %d",&x,&y);

while(x <= y)
{
printf("Prime: ");
sumPrime=findPrime( x, y);

printf("\nSquare: ");
findSquare(x,y);

printf("\nsum of all primes and squares:%d",sum);

printf("\nEnter two numbers");
scanf("%d %d",&x,&y);
}
return 0;
}

int findPrime (int a, int b )
{
int t=0,c=0;
while(a<=b)
{

if(isPrime(a))

printf("%d ",a);
sum+=a;
c++;
a++;
}
printf("\nPrime count = %d\n",c);
return t ;
}

int isPrime(int n)
{
int i;

for(i=2;i<n;i++)

if(n%i==0)
return 0;
return 1;
}


int findSquare ( int a,int b)
{
int t;
if(square(t))



printf("%d", a);
c++;
sum+=a;

printf("\nSquare count = %d\n",c);
return 1;
}

int square (int x)
{

int i,k;
k = sqrt(i); //只看了你这部分,你该把k = sqrt(i);放进FOR循环就能算出了
for(i=2;i<=x;i++)
{

if(k*k==1)
return 0;
return 1;
}
}



女朋友问我想怎么死~~~
             我说我想"爽死"
2007-11-01 15:14
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 

看看我的吧。

tqguFRps.txt (1.25 KB) 关于完全平方的问题,


不知道怎么贴代码,只能贴附件了。
还忘高手指点。
2007-11-01 16:10
chmlqw
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-10-11
收藏
得分:0 

int square (int x)
{

float i,k;

for(i=2;i<=x;i++)
{
k = sqrt(i);
if(k*k != i)
return 0;
return 1;
}
}

[此贴子已经被作者于2007-11-1 16:22:01编辑过]

2007-11-01 16:17
chmlqw
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-10-11
收藏
得分:0 
3 楼,代码直接复制就可以了嘛.....
2007-11-01 16:19
chmlqw
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-10-11
收藏
得分:0 
3楼,你的

j = 0;
for (i=x; i<=y; i++)
{
if ((i%2!=0) && (i%3!=0) && (i%5!=0)) /* 这里是错误的,比如49 */
a[j++] = i;
if ((i==2)||(i==3)||(i==5))
a[j++] = i;
}

===========================
可以用for (i=x;i<=y;i++)
{
for (m=0; m<sqrt(i); m++)
if (i%m == 0) continue;
a[j++] = i;
}
2007-11-01 16:32
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 
LS的,那再加一个&amp;&amp;(i%7!=0)下面再加一个||(i==7)也可以吧。
2007-11-01 17:07
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 

复制了代码,但贴不进来。郁闷
谢谢6楼的。

2007-11-01 17:13
alicefioan37
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2007-9-29
收藏
得分:0 

大侠们都不行啊

2007-11-02 00:53
xia0y1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2007-10-31
收藏
得分:0 
嘿嘿
不学 C ...能直接 学 JAVA 吗?
2007-11-02 08:15
快速回复:关于完全平方的问题,
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050363 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved