第三章部分例题

例3-1

编写一个求x的n次方的函数

分析:用数学函数pow求

代码部分:

#include<iostream>
#include<math.h>
using namespace std;
int main()
{
    int k, f,l;
    cin >> k;
    cin >> f;
    l=pow(k, f);
    cout << l;
    return 0;
}

例3-2

输入一个8位二进制数,将其转换为十进制输出。

分析:根据二进制上的位数让这个数乘以2的该位数次方,让所有结果相加的一个十进制数。

流程图:

代码部分:

#include<iostream>
#include<math.h>
using namespace std;
int main()
{
    int sum=0;
    for (int i = 7; i >= 0; i--)
    {
        char a;
        cin >> a;
        if (a == '1')
        {
            sum += static_cast<int>(pow(2, i));
        }
        cout << sum;
    }
    return 0;
}

例3-3

编写程序求Π的值。

#include<iostream>
#include<math.h>
using namespace std;
double arctan(double x)
{
    double a = x * x;
    double e = x;
    double r = 0;
    int i = 1;
    while (e / i > 1e-15)
    {
        double f = e / i;
        r = (i % 4 == 1) ? r + f : r - f;
        e = e * a;
        i += 2;
}
    return r;
}
int main()
{
    double a = 16.0 * arctan(1 / 5.0);
    double b = 4.0 * arctan(1 / 239.0);
    cout << "PI=" << a - b << endl;
    return 0;
}

 

编写程序求Π的值,

 

posted on 2023-04-14 22:55  石铁生  阅读(19)  评论(0)    收藏  举报