设为首页收藏本站
查看: 1498|回复: 13

[C++] 求助c++哪里错了

[复制链接]
  • TA的每日心情

    2019-2-16 00:50
  • 签到天数: 35 天

    [LV.5]常住居民I

    发表于 2018-12-16 12:23:15 | 显示全部楼层 |阅读模式
    判断素数;一直返回值是0  QAQ.

    #include <iostream>
    using namespace std;
    int banduan(int x);
    int demo();
    int main()
    {

            demo();
            return 0;
    }
    int demo()
    {
            int a, i, m, s;
            cout << "输入所求范围的下限: ";
            cin >> a;
            cout << "输入所求范围的上限: ";
            cin >> s;
            for (i = 1;i = s-a;i++)
            {
                    m = banduan(a);
                    a++;
                    cout <<  ":" << m << endl;
            }
            return 0;


    }

    int banduan(int x)
    {
            int i;
            if (x<1)
            return 0;
            for (i =x-1;i >= 2;i--)
            {
                    if (x%i == 0)
                            break;
            }
            if (i == 2)
                    return x;
            else
                    return 0;
    }
  • TA的每日心情
    郁闷
    2019-1-3 00:06
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    发表于 2018-12-20 20:29:09 | 显示全部楼层
    改的有点多,但是强迫症属性爆发了,最后彻底把改动的地方忘光了。。。emmm将就着比对吧= =
    #include <iostream>
    using namespace std;

    int banduan(int x)
    {
            int i, r;
            if (x<=1) return 0;
            for (i = x-1;i >= 2;i--)
            {
                    if (x%i == 0)
                    {
                            return 0;
                    }
            }
                    return x;
    }

    int demo()
    {
            int a, m, max, min, s;
            cout << "输入所求范围的下限: ";
            cin >> min;
            cout << "输入所求范围的上限: ";
            cin >> max;
            a = min;
            for (int i=0; i<max-min+1; i++)
            {
                    m = banduan(a);
                    a++;
                    if(m==0) continue;                                        //
                    else cout << ":" << m << endl;
            }
    }

    int main()
    {

            demo();
            return 0;
    }
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    郁闷
    2019-1-3 00:06
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    发表于 2018-12-16 19:10:43 | 显示全部楼层
    程序想要实现什么功能
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-16 00:50
  • 签到天数: 35 天

    [LV.5]常住居民I

     楼主| 发表于 2018-12-16 19:35:51 来自手机 | 显示全部楼层
    wild_kid 发表于 2018-12-16 19:10
    程序想要实现什么功能

    输入上下限两个数,找到这两个数中的所有素数
    .
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2019-1-3 00:06
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    发表于 2018-12-16 20:28:03 | 显示全部楼层
    浅梦入眠从未醉 发表于 2018-12-16 19:35
    输入上下限两个数,找到这两个数中的所有素数
    .

    明天帮你看一下
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    4 天前
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    发表于 2018-12-22 13:52:52 | 显示全部楼层
      for (i = 1;i = s-a;i++)
            {
                    m = banduan(a);
                    a++;
                    cout <<  ":" << m << endl;
            }
    感觉是这个for循环有点问题,for循环的循环条件i=s-a;明显不对
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-16 00:50
  • 签到天数: 35 天

    [LV.5]常住居民I

     楼主| 发表于 2018-12-24 14:55:19 来自手机 | 显示全部楼层
    B1103 发表于 2018-12-22 13:52
    for (i = 1;i = s-a;i++)
            {
                    m = banduan(a);

    就是循环上限减下限那么多次啊。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    4 天前
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    发表于 2018-12-28 12:52:56 | 显示全部楼层
    浅梦入眠从未醉 发表于 2018-12-24 14:55
    就是循环上限减下限那么多次啊。

    那个不应该是等于,应该是小于或小于等于,你这个等于的意思是,只有在i等于s-a的时候才执行for里面的程序
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2 小时前
  • 签到天数: 146 天

    [LV.7]常住居民III

    发表于 2019-1-7 13:57:30 来自手机 | 显示全部楼层
    还没有学习C++
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2019-1-28 15:14
  • 签到天数: 51 天

    [LV.5]常住居民I

    发表于 2019-1-12 15:15:40 | 显示全部楼层
    循环里面有i=s-a有问题,这里应该不循环
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2019-1-28 15:14
  • 签到天数: 51 天

    [LV.5]常住居民I

    发表于 2019-1-12 15:18:26 | 显示全部楼层
    seesunner 发表于 2019-1-12 15:15
    循环里面有i=s-a有问题,这里应该不循环

    写成这样应该是程序不for循环了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-3-15 21:53
  • 签到天数: 30 天

    [LV.5]常住居民I

    发表于 2019-1-12 16:34:56 | 显示全部楼层
    #include <iostream>
    #include <cstdio>
    #include <cmath>
    #include <cstring>
    #include <vector>
    #include <algorithm>
    using namespace std;

    const long long maxn = 10000007 + 10;
    const long long maxp = 700000;
    int vis[maxn];   
    long long prime[maxp];

    void sieve(long long n){
        long long m = (long long)sqrt(n + 0.5);
        memset(vis, 0, sizeof(vis));
        vis[2] = 0;
        for (long long i = 3; i <= m; i += 2) {
            if(!vis[i])
                for (long long j = i * i; j <= n; j += i)
                    vis[j] = 1;
            if(i * i > n)
                break;
        }
    }

    long long gen(long long n){
        sieve(n);
        long long c = 1;
        prime[0] = 2;
        for (long long i = 3; i <= n; i += 2)
            if(!vis[i])
                prime[c++] = i;
        return c;
    }

    int main()
    {
        long long n, c;
        cout << "刷素数到n:";
        cin >> n;
        c = gen(n);
        for (long long i = 0; i < c; i++)
            printf("%lld%c", prime[i],' ');
        cout << endl << "共有素数:"<< c;
        return 0;
    }
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 11:07
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2019-1-18 10:14:38 | 显示全部楼层
    #include <iostream>
    using namespace std;
    bool banduan(int x);
    void demo();
    int main(){
        demo();
        return 0;
    }
    void demo()
    {
        int a, i, s;
        cout << "输入所求范围的下限: ";
        cin >> a;
        cout << "输入所求范围的上限: ";
        cin >> s;
        for (i = a;i <= s;i++)
        {
            if(banduan(i)){
                    cout <<  ":" << i << endl;
                            a++;
                    }
        }
    }
    bool banduan(int x)
    {
            int i;
        if (x<=1)        return false;
        for (i = 2;i * i <= x;i++)
        {
                    if (x%i == 0)        return false;
        }
        return true;
    }
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-4-11 08:53
  • 签到天数: 125 天

    [LV.7]常住居民III

    发表于 2019-3-8 12:02:19 | 显示全部楼层
    应该是判断逻辑的问题
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    站长推荐 上一条 /1 下一条

    红盟社区--中国红客联盟 

    Processed in 0.123707 second(s), 29 queries.

    站点统计| 举报| Archiver| 手机版| 黑屋 |   

    Powered by HUC © 2001-2017 Comsenz Inc.

    手机扫我进入移动触屏客户端

    关注我们可获取更多热点资讯

    Honor accompaniments. theme macfee

    快速回复 返回顶部 返回列表