| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 623 人关注过本帖
标题:用迭代法求a的开平方,用条件语句求一个正整能否被5,7,11之一整除。
只看楼主 加入收藏
墨言sky
Rank: 1
来 自:河南
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-4-5
结帖率:0
收藏
已结贴  问题点数:1 回复次数:9 
用迭代法求a的开平方,用条件语句求一个正整能否被5,7,11之一整除。
高手们看看这两个程序错误的原因。

读时是什么效果,若不能读就算了。。。

#include<stdio.h>

#include<math.h>
int main()
{
double a,x1,x2;
x1=a/2;
printf("请输入a:");
scanf("%lf",&a);
for(int i=1;;i++)
{
x2=1/2*(x1+a/x1);
if(fabs(x2-x1)<=1e-6) break;
x1=x2;
}
printf("%lf\a\n",x2);
return 0;
}

#include<stdio.h>
int main()
{
int n,leap;
scanf("%d",&n);

if((n%5==0&&n%7!=0&&n%11!=0)||(n%5!=0&&n%7!=0&&n%11==0)||(n%5!=0&&n%7!=0&&n%11!=0))
leap=1;
if(leap==1)
printf("%d\n\a",n);
else
printf("please reput\n");
return 0;
}
搜索更多相关主题的帖子: 开平 return double include 
2014-04-06 13:33
hedys
Rank: 1
等 级:新手上路
帖 子:1
专家分:1
注 册:2011-1-27
收藏
得分:1 
只看懂第一个程序,变量i在for循环里定义的,vc++6.0不支持在for循环里定义一个变量。
第二个程序看不大明白,如果需要n为正整数,为什么在程序里没有判定n是否大于等于0呢?如果输入了一个负数为浮点数,那程序是否会报错呢..再一个,是要判定这个正整数能否被5,7,11其中的一个整除呢?还是需要三个都成立才输出结果?如果是第一个,这样写行不行呢?if(n%5==0||n%7==0||n%11==0)。
而且第二个程序变量leap,都没用到,我不明白声明这个变量有什么用处?
而且你已经赋值给它1了,下面的if判断语句岂不是多余的??
新手,如果有不对地方还请指教。数学不大好,不知道这样写对不对?


[ 本帖最后由 hedys 于 2014-4-6 14:10 编辑 ]
2014-04-06 14:04
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:1 
太多错误了..第一条printf和scanf语句应该放在变量赋值的前面,也就是放在x1=a/2的前面,否则程序会提示变量a没有进行初始化。另外,fabs不是开平方,而是求绝对值。开平方函数是sqrt()。而且好像你的算法也有问题。得不出结果。数学不懂,

因为有你,所以做什么都有动力。z,爱你。
2014-04-06 14:44
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:1 
#include<stdio.h>
#include<math.h>
int main()
{
    double a,x1,x2;

   
    printf("请输入a:");
    scanf("%lf",&a);

    x1=a/2;
    for(int i=1;;i++)
    {
        x2=(x1+a/x1)/2;
        if(fabs(x2-x1)<=1e-6) break;
        x1=x2;
    }
    printf("%lf\a\n",x2);
    return 0;
}
2014-04-06 15:44
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:0 
//能被5,7,11中的一个整除?
#include<stdio.h>
int main()
{
    int n,d;
    scanf("%d",&n);

    d=((n%5==0)+(n%7==0)+(n%11==0)==1);

    printf("%s\n\a", d?" 是":"否");

    return 0;
}
2014-04-06 15:55
墨言sky
Rank: 1
来 自:河南
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-4-5
收藏
得分:0 
回复 2 楼 hedys
多谢啦,老师已经在课堂上讲过了。

学无止境
2014-05-06 16:01
墨言sky
Rank: 1
来 自:河南
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-4-5
收藏
得分:0 
回复 3 楼 安宁 1991
c语言新手,c语言不好,数学还可以,多谢啦。

学无止境
2014-05-06 16:03
墨言sky
Rank: 1
来 自:河南
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-4-5
收藏
得分:0 
回复 4 楼 ying8501
能不能留下qq

学无止境
2014-05-06 16:05
墨言sky
Rank: 1
来 自:河南
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-4-5
收藏
得分:0 
回复 5 楼 ying8501
谢谢啦

学无止境
2014-05-06 16:06
虚心求教123
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-5-7
收藏
得分:0 
czfbergeg
2014-05-07 15:40
快速回复:用迭代法求a的开平方,用条件语句求一个正整能否被5,7,11之一整除。
数据加载中...
 
   



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

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