跳转到内容

编程基础:算术运算

来自 Wikibooks,开放世界中的开放书籍

试卷 1 - ⇑ 编程基础 ⇑

← 迭代 算术运算 布尔运算 →


算术运算 - 是一个函数,可以执行以下任务之一:加、减、乘、除
运算符 - 一个编程设备,对一个或多个输入执行一个函数,例如算术运算符 (+,-,/,*)


编程语言提供了一组基本的运算符来计算简单的算术。

+   Addition
-   Subtraction
*   Multiplication
/   Division
\   Integer division
Mod Remainder Division
^   Exponentiation
&   String concatenation
7 + 2     produces 9
7 – 2     produces 5
7 * 2     produces 14
7 / 2     produces 3.5
7 \ 2     produces 3
7 Mod 2   produces 1
7 ^ 2     produces 49
"7" & "7" produces "77"

让我们在深入了解运算符本身之前,先看一个算术运算的简短示例。

在这个例子中,我们还会使用一些基本的变量。在 VB.NET 中,Dim 运算符创建变量,而在 Python 中,你可以简单地将值赋给变量。

VB.NET Python
 Dim Commission As Single
 Dim Sales As Single
 Sales = 3142.51
 Commission = 0.3 * Sales  ' Calculate 30% commission.
 Sales = 3142.51
 Commission = 0.3 * Sales  # Calculate 30% commission.


首先,我们将总 Sales 设置为 3142.51。

* 运算符计算乘法,所以第 4 行等价于将 0.3 和 Sales 相乘。Sales 是 3142.51,所以我们的结果应该是 0.3 和 3142.51 的乘积,并存储在 Commission 中。

为什么是这些奇怪的符号?

[编辑 | 编辑源代码]

除了加法和减法,使用的符号与现实生活中使用的符号不同。这是因为其他符号在标准键盘上不可用(尝试在你的键盘上找到 ÷ ≠ m²!),或者符号在字母表中,可以用于命名变量(x)。

将两个数字加在一起,用 "+" 符号表示。如果涉及字符串,它也可能执行字符串连接,这意味着将两个字符串粘在一起。示例

VB.NET Python
 x = 7 + 2     ' Results in 9.
 x = 25 + -4   ' Results in 21.
 Dim StringA As String
 StringA = "A string" + "Another string" ' Results in "A stringAnother string"
 x = 7 + 2     # Results in 9.
 x = 25 + -4   # Results in 21.
 
 StringA = "A string" + "Another string" # Results in "A stringAnother string"

还有一个加法运算符 "+="。它将 += 左侧的变量增加右侧指示的量。示例

VB.NET Python
 Dim x As Integer = 54
 x += 89       ' result is 143
 x += 7       ' result is 150
 x = 54
 x += 89       # result is 143
 x += 7       # result is 150

它也可以作为连接运算符与字符串一起使用。示例

VB.NET Python
 Dim x As String = "A fox"
 x += " jumped"          ' result is "A fox jumped"
 x += " over the fence"  ' result is "A fox jumped over the fence"
 x = "A fox"
 x += " jumped"          # result is "A fox jumped"
 x += " over the fence"  # result is "A fox jumped over the fence"

将两个数字相减,用 "-" 符号表示。示例

VB.NET Python
 Dim x As Integer
 x = 7 - 2    ' Results in 5.
 x = 25 - -4  ' Results in 29.
 
 x = 7 - 2    # Results in 5.
 x = 25 - -4  # Results in 29.

将两个数字相乘,用 "*" 符号表示。示例

VB.NET Python
 Dim x As Integer
 x = 7 * 2    ' Results in 14.
 x = 25 * -4  ' Results in -100.
 
 x = 7 * 2    # Results in 14.
 x = 25 * -4  # Results in -100.

除法比用 "/" 符号表示的除法类型更多。还有整除和取余运算。

普通除法

[编辑 | 编辑源代码]

这是最常用的除法形式,用 "/" 运算符表示。示例

VB.NET Python
  Dim x As Single
 ' (note that we must use the Single class to have decimals)
 x = 7 / 2  ' Results in 3.5.
 x = 25 / 4 ' Results in 6.25
 
 
 x = 7 / 2  # Results in 3.5.
 x = 25 / 4 # Results in 6.25

将两个数字相除,如果商是小数,则给出不带余数的结果。示例

VB.NET Python
  Dim x As Integer
 x = 7 \ 2    ' Results in 3.
 x = 25 \ 4   ' Results in 6.
 x = 7 \ 2    # Results in 3.
 x = 25 \ 4   # Results in 6.

取余运算

[编辑 | 编辑源代码]

将两个数字相除,如果商是小数,则给出结果的余数。这在 VB.NET 中用 "Mod" 运算符表示,在 Python 中用 "mod" 表示。示例

VB.NET Python
 Dim x As Integer
 x = 7 Mod 2  ' Results in 1.
 x = 25 Mod 4 ' Results in 1.
 
 x = 7 mod 2  # Results in 1.
 x = 25 mod 4 # Results in 1.

指数运算

[编辑 | 编辑源代码]

这是将一个数字提升到一个幂,例如 是 49。例如,

VB.NET Python
 Dim x As Integer
 x = 7 ^ 2   ' Results in 49.
 
 x = 7 ^ 2   # Results in 49.

这将导致数字 49 被分配给变量 x。它也可以用来计算一个数字的平方根。一个数字的平方根是这个数字提高到 0.5 次方。

VB.NET Python
 Dim x As Integer
 x = 7 ^ 0.5   ' Results in 2.645.
 
 x = 7 ^ 0.5   # Results in 2.465.

注意:必须确保变量声明正确才能获得期望的结果。以下示例有效,但会产生错误的结果。这是因为 Integer 类不允许小数点(就像数学中的整数一样。)

VB.NET Python
 Dim x As Integer
 x = 9 ^ 0.5   ' Results in 3.
 
 x = 9 ^ 0.5   # Results in 3.

由于 x 被声明为 Integer 类型,所以平方根的值,一个实数,被错误地存储了。

任何数字的 n 次方根可以通过将数字提高到 次方来计算。

VB.NET Python
 Dim x As Single
 Dim n As Single
 n = 7
 x = 2 ^ (1 / n)
 n = 7
 x = 2 ^ (1 / n)

这是因为 .

你可能已经学习过数学中的运算顺序。BODMAS 也适用于计算机计算。这意味着在计算总和时,程序将计算

  1. 括号
  2. 顺序(幂 n^2 等)
  3. 除法
  4. 乘法
  5. 加法
  6. 减法
示例:VB 中的 BODMAS

例如

console.writeline( (3+4)/7 )
console.writeline( 3+4/7 )
console.writeline( 3+4/7-1 )
   代码输出
1
3.57142857
2.57142857


如有疑问,请使用括号!

华夏公益教科书