C++大学教程(第九版)6.26摄氏温度和华氏温度 6.28完数

6.26题目

(摄氏温度和华氏温度)请实现下面的整数函数。
a)celsius函数返回华氏温度相应的摄氏温度。
b)fahrenheit函数返回摄氏温度相应的华氏温度。
c)利用上面两个函数编写一个程序打印0-100之间所有摄氏温度对应的华氏温度的图表和32-212之间所有华氏温度对应的摄氏温度的图表。
要求在保证可读性的前提下,尽量减少输出的行数,把输出结果打印成整齐的表格形式。

代码

#include 
#include 

using namespace std;

double celsius(double hua_tempereture)
{ // 返回摄氏温度
    return (hua_tempereture - 32.0) / 1.8;
}

double fahrenheit(double she_tempereture)
{ // 返回华氏温度
    return 32.0 + she_tempereture * 1.8;
}

int main()
{
    cout << "摄氏温度(℃ )和对应的华氏温度(℉ )如下表" << endl;
    for (int i = 0; i <= 100; i++)
    {
        cout << i << "℃ ->";
        cout << fixed << setprecision(1); // 设定输出一位小数
        cout << celsius(i) << "℉\t";

        if (i != 0 && (i + 1) % 10 == 0)
        {
            cout << endl;
        }
    }
    cout << endl;
    cout << "华氏温度(℉ )和对应的摄氏温度(℃ )如下表\t" << endl;
    for (int j = 32, count = 0; j <= 212; j++, count++)
    {
        cout << j << "℉ ->";
        cout << fahrenheit(j) << "℃\t";

        if (count != 0 && (count + 1) % 10 == 0) // 控制10个换行
        {
            cout << endl;
        }
    }
    return 0;
}

运行截图

C++大学教程(第九版)6.26摄氏温度和华氏温度 6.28完数_第1张图片

6.28题目

在这里插入图片描述

代码

#include 
// #include 

using namespace std;

bool isperfect(unsigned long long);

int main()
{
    for (unsigned long long i = 1; i <= 10000; i++)
    {
        if (isperfect(i))
        {
            cout << i << "是完数" << endl;
        }
    }
    return 0;
}

bool isperfect(unsigned long long number)
{
    unsigned long long sum = 0; // 最初没有初始化,一直找不到问题在哪,害死我了。。。
    for (int i = 1; i < number; i++)
    {
        if (number % i == 0)
            sum += i;
    }

    if (sum == number)
        return true;
    else
        return false;
}

运行截图

C++大学教程(第九版)6.26摄氏温度和华氏温度 6.28完数_第2张图片

你可能感兴趣的:(C++大学教程,c++,开发语言)