美文网首页算法程序员首页投稿(暂停使用,暂停投稿)
【分享】一些经典的C/C++语言基础算法及代码(三)

【分享】一些经典的C/C++语言基础算法及代码(三)

作者: Orient_ZY | 来源:发表于2016-05-04 20:14 被阅读467次

    阅读到的一些经典C/C++语言算法及代码。在此分享。

    简单的四则运算计算器

    这个程序小改了一点,添加了Q退出计算功能

    #include <iostream>
    using namespace std;
    
    int main()
    {
        float a, b;
        char chr;
        cout << "Choose operator either + or - or * or / : " << endl;
        cin >> chr;
        if(chr != 'Q')  //往复循环进行四则运算,若输入Q则退出.
        {
            cout << "Enter two operands: " << endl;
            cin >> a >> b;
            switch (chr)
            {
                case '+':
                    cout << a << " + " << b << " = " << a + b << endl;
                    return main();
                case '-':
                    cout << a << " - " << b << " = " << a - b << endl;
                    return main();
                case '*':
                    cout << a << " * " << b << " = " << a * b << endl;
                    return main();
                case '/':
                    cout << a << " * " << b << " = " << a / b << endl;
                    return main();
                case 'Q':
                    break;
                default:
                    cout << "Error: Choose operator again! " << ends; //若有"+、-、*、/、Q"以外的输入,则重新运行程序。
                    return main();
            }
        }
        return 0;
    }
    

    检查一个数能否分解为两个质数的和

    列举法把一个数写成两个数之和,再验证哪些加数为质数

    #include <iostream>
    #include <math.h>
    using namespace std;
    
    int check(int n);
    int main()
    {
        int i, n, flag = 0;
        cout << "Enter a positive integer: " << endl;
        cin >> n;
        for(i = 2; i <= n / 2; ++i)
        {
            if(check(i) != 0)
            {
                if(check(n - i) != 0)
                {
                    cout << n << " = " << i << " + " << n - i << endl;
                    flag = 1;
                }
            }
        }
        if(flag == 0)
            cout << n << " can not be expressed as sum of two prime numbers. " << endl;
        return 0;
    }
    
    //验证加数是否为质数
    int check(int n)
    {
        int i, flag = 1;
        for(i = 2; i <= sqrt(n); ++i)
            if(n % i == 0)
                flag = 0;
        return flag;
    }
    
    

    相关文章

      网友评论

      本文标题:【分享】一些经典的C/C++语言基础算法及代码(三)

      本文链接:https://www.haomeiwen.com/subject/cwarrttx.html