📜  计算机编程-数字

📅  最后修改于: 2021-01-18 06:24:46             🧑  作者: Mango


每种编程语言都支持处理不同类型的数字,例如简单的整数和浮点数。 C,Java和Python根据其性质将这些数字分为几类。

让我们回到“数据类型”一章,在该章中,我们列出了与数字有关的核心数据类型-

Type Keyword Value range which can be represented by this data type
Number int -32,768 to 32,767 or -2,147,483,648 to 2,147,483,647
Small Number short -32,768 to 32,767
Long Number long -2,147,483,648 to 2,147,483,647
Decimal Number float 1.2E-38 to 3.4E+38 till 6 decimal places

这些数据类型称为原始数据类型,您可以使用这些数据类型构建更多的数据类型,这些数据类型称为用户定义的数据类型。

在关于运算符的讨论中,我们已经看到了多种关于数字的数学和逻辑运算。因此,我们知道如何加数,减数,除数等。

首先让我们看看如何打印C编程语言中可用的各种类型的数字-

#include 

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),则可以使用内置函数来计算平方根。

Sr.No. Function & Purpose
1

double cos(double);

This function takes an angle (as a double) and returns the cosine.

2

double sin(double);

This function takes an angle (as a double) and returns the sine.

3

double tan(double);

This function takes an angle (as a double) and returns the tangent.

4

double log(double);

This function takes a number and returns the natural log of that number.

5

double pow(double, double);

The first is a number you wish to raise and the second is the power you wish to raise it to.

6

double hypot(double, double);

If you pass this function the length of two sides of a right triangle, it will return the length of the hypotenuse.

7

double sqrt(double);

You pass this function a number and it returns its square root.

8

int abs(int);

This function returns the absolute value of an integer that is passed to it.

9

double fabs(double);

This function returns the absolute value of any decimal number passed to it.

10

double floor(double);

Finds the integer which is less than or equal to the argument passed to it.

以下是一个简单的示例,展示了一些数学运算。要利用这些功能,您需要以包含stdio.h的相同方式在程序中包含数学头文件

#include 
#include 

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有点不同;它将数字分为intlongfloat复数。这是Python中数字的一些示例-

int long float complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 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编程中一样使用它们。