计算机编程 - 数字
每种编程语言都支持操作不同类型的数字,例如简单的整数和浮点数。C、Java 和 Python 根据这些数字的性质将其分为几个类别。
让我们回顾一下数据类型章节,其中我们列出了与数字相关的核心数据类型 -
类型 | 关键词 | 该数据类型可以表示的取值范围 |
---|---|---|
数字 | 整数 | -32,768 至 32,767 或 -2,147,483,648 至 2,147,483,647 |
少数 | 短的 | -32,768 至 32,767 |
长数 | 长的 | -2,147,483,648 至 2,147,483,647 |
十进制数 | 漂浮 | 1.2E-38 至 3.4E+38 直至小数点后 6 位 |
这些数据类型称为原始数据类型,您可以使用这些数据类型构建更多数据类型,这些数据类型称为用户定义的数据类型。
在讨论运算符时,我们已经看到了数字的各种数学和逻辑运算。所以我们知道如何加法、减法、除法等。
首先让我们看看如何打印 C 编程语言中可用的各种类型的数字 -
#include <stdio.h> int main() { short s; int i; long l; float f; double d; s = 10; i = 1000; l = 1000000; f = 230.47; d = 30949.374; printf( "s: %d\n", s); printf( "i: %d\n", i); printf( "l: %ld\n", l); printf( "f: %.3f\n", f); printf( "d: %.3f\n", d); }
其余的编码非常明显,但是我们使用%.3f来打印 float 和 double,它表示要打印的小数点后的位数。执行上述程序时,会产生以下结果 -
s: 10 i: 1000 l: 1000000 f: 230.470 d: 30949.374
数字的数学运算
下表列出了 C 编程语言中可用的各种有用的内置数学函数,可用于各种重要的数学计算。
例如,如果您想计算一个数字(例如 2304)的平方根,那么您可以使用一个内置函数来计算平方根。
先生。 | 功能与目的 |
---|---|
1 | 双余弦(双); 该函数接受一个角度(作为双精度值)并返回余弦值。 |
2 | 双罪(双); 该函数接受一个角度(作为双精度值)并返回正弦值。 |
3 | 双棕褐色(双); 该函数接受一个角度(作为双精度值)并返回正切值。 |
4 | 双对数(双); 该函数接受一个数字并返回该数字的自然对数。 |
5 | 双战俘(双,双); 第一个是您希望提高的数字,第二个是您希望提高的功率。 |
6 | 双hypot(双,双); 如果将此函数传递给直角三角形两条边的长度,它将返回斜边的长度。 |
7 | 双开方(双); 您向该函数传递一个数字,它会返回其平方根。 |
8 | int 绝对值(int); 此函数返回传递给它的整数的绝对值。 |
9 | 双晶圆厂(双); 此函数返回传递给它的任何十进制数的绝对值。 |
10 | 双层(双人); 查找小于或等于传递给它的参数的整数。 |
下面是一个简单的例子来展示一些数学运算。要使用这些函数,您需要在程序中包含数学头文件<math.h>,就像包含stdio.h一样-
#include <stdio.h> #include <math.h> int main() { short s; int i; long l; float f; double d; printf( "sin(s): %f\n", sin(10)); printf( "abs(i): %f\n", abs(1000)); printf( "floor(f): %f\n", floor(230.47)); printf( "sqrt(l): %f\n", sqrt(1000000)); printf( "pow(d, 2): %f\n", pow(2.374, 2)); }
执行上述程序时,会产生以下结果 -
sin(s): -0.544021 abs(i): -0.544021 floor(f): 230.000000 sqrt(l): 1000.000000 pow(d, 2): 5.635876
除了上述用法之外,您还将在 C 编程中使用循环计数、标志表示、真值或假值中的数字。
Java 中的数字
以下是用 Java 编写的等效程序。Java 提供了 C 编程中几乎所有可用的数值数据类型。
您可以尝试执行以下程序来查看输出,该输出与上面的 C 示例生成的结果相同。
public class DemoJava { public static void main(String []args) { short s; int i; long l; float f; double d; s = 10; i = 1000; l = 1000000L; f = 230.47f; d = 30949.374; System.out.format( "s: %d\n", s); System.out.format( "i: %d\n", i); System.out.format( "l: %d\n", l); System.out.format( "f: %f\n", f); System.out.format( "d: %f\n", d); } }
执行上述程序时,会产生以下结果 -
s: 10 i: 1000 l: 1000000 f: 230.470001 d: 30949.374000
Java还提供了一整套用于数学计算的内置函数,您可以像在C编程中一样使用它们。
Python 中的数字
Python 与 C 和 Java 略有不同;它将数字分类为int、long、float和complex。以下是 Python 中数字的一些示例 -
整数 | 长的 | 漂浮 | 复杂的 |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCCECBDAECBFBAEl | 32.3+e18 | .876j |
-0490 | 535633629843L | -90。 | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
以下是用 Python 编写的等效程序 -
s = 10 i = 1000 l = 1000000 f = 230.47 d = 30949.374 print "s: ", s print "i: ", i print "l: ", l print "f: ", f print "d: ", d
执行上述程序时,会产生以下结果 -
s: 10 i: 1000 l: 1000000 f: 230.47 d: 30949.374
Python 还提供了一整套用于数学计算的内置函数,您可以像在 C 编程中使用它们一样使用它们。