从Python过渡到C++

如果正整数 n 等于其正因数之和(不包括其自身),则该正整数 n 称为完全数

例如:

  • 6 是完全数,因为 1、2、3 能除 6,并且 1 + 2 + 3 = 6。
  • 28 是完全数,因为 1、2、4、7 和 14 能整除 28,并且 1 + 2 + 4 + 7 + 14 = 28。
  • 35 不是完全数,因为 1、5 和 7 能整除 35,并且 1 + 5 + 7 ≠ 35。

让我们找出前四个完全数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
def sumOfDivisorsOf(n):
"""返回数字 n >= 0 的正除数之和"""
total = 0
for i in range(1, n):
if n % i == 0:
total += i

return total


found = 0 # 我们发现的完全数
number = 1 # 下一个测试的数字

# 继续寻找,直到找到四个完全数
while (found < 4):
# 如果一个数的除数之和等于它本身,则该数是完全数
if sumOfDivisorsOf(number) == number:
print(number)
found += 1

number += 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
using namespace std;

/* 返回数字 n >= 0 的正除数之和 */
int sumOfDivisorsOf(int n) {
int total = 0;

for (int i = 0; i < n; i++) {
if (n % i == 0) {
total += i;
}
}
return total;
}

int main() {
int found = 0; // 我们发现的完全数
int number = 1; // 下一个测试的数字

/* 继续寻找,直到找到四个完全数 */
while (found < 4) {
# 如果一个数的除数之和等于它本身,则该数是完全数
if (sumOfDivisorsOf(number) == number) {
cout << number << endl;
found++;
}
number++;
}
return 0;
}

Python代码和C++代码的比较

  • 在 Python 中只有缩进决定嵌套。在 C++ 中,缩进很好,但仅大括号才能确定嵌套。
  • 在 Python 中换行符标记语句的结尾。在 C++ 中,单个语句后面必须有一个分号 ;
  • 在 Python 中,你可以使用 print() 打印输出。在 C++ 中,您可以使用 流插入运算符 (<<) 将数据推送到控制台(endl 会打印新行)。
  • 在 Python 中,您可以选择在 if 语句和 while 循环中的条件两边加上括号。在C++,这些是强制性的。
  • Python 和 C++ 都有 for 循环,但语法不同。
  • C++有一个运算符 ++,表示“向此变量的值添加一个”。Python没有。
  • 在 Python 中,注释以 # 开头,一直到行尾。在C++中,有两种样式注释。以 /* 开头的注释一直持续到 */。以 // 开头的注释继续到行尾。
  • 在 Python 中,每个对象都有一个类型,但没有明确说明。在C++中,必须为每个变量指定一个类型。(int 类型表示一个整数)
  • 在 Python 中,语句可以位于函数中,也可以位于进程的顶层。在C++中,所有语句都必须位于函数内部。

C++和Python

Python 是一种出色的语言,适用于跨所有学科的数据处理和编写快速脚本。

  • 对 Python 程序进行更改然后运行它们以查看有什么不同是非常快的。
  • 一般来说,Python 程序比 C++ 程序运行得慢。

C++ 是一种用于编写利用底层硬件的高性能代码的出色语言。

  • 编写 C++ 代码会在更改代码和运行代码之间引入一些延迟。

Assignment0. Welcome to CS106B

第一步:安装 Qt Creator

按照 Qt安装指南中的说明进行操作。

在开始项目之前,按照 Qt Creator 的推荐设置进行修改。

第二步:下载Starter文件

下载Starter Code代码存档并全部解压,双击 NameHash.pro 文件在 Qt Creator 中打开项目并配置为默认使用套件。

第三步:Hash Your Name

编译并运行您刚刚下载的程序。它将要求您输入您的(首选)名字和姓氏。当你这样做时,它会返回一个哈希码,一个与你的名字相关的特殊数字。

第四步:使用 Debugger

打开 Debugger教程并按照步骤进行操作。