Lập trình máy tính - Số

Mọi ngôn ngữ lập trình đều cung cấp hỗ trợ để thao tác với các loại số khác nhau như số nguyên nguyên đơn giản và số dấu phẩy động. C, Java và Python phân loại những con số này thành một số danh mục dựa trên bản chất của chúng.

Hãy quay lại và kiểm tra chương kiểu dữ liệu, nơi chúng tôi đã liệt kê các kiểu dữ liệu cốt lõi liên quan đến số -

Kiểu Từ khóa Phạm vi giá trị có thể được biểu thị bằng kiểu dữ liệu này
Con số int -32,768 đến 32,767 hoặc -2,147,483,648 đến 2,147,483,647
Số nhỏ ngắn -32,768 đến 32,767
Số dài Dài -2.147.483.648 đến 2.147.483.647
Số thập phân Phao nổi 1,2E-38 đến 3,4E + 38 cho đến 6 chữ số thập phân

Những kiểu dữ liệu này được gọi là kiểu dữ liệu nguyên thủy và bạn có thể sử dụng những kiểu dữ liệu này để xây dựng nhiều kiểu dữ liệu hơn, được gọi là kiểu dữ liệu do người dùng xác định.

Chúng tôi đã thấy các phép toán toán học và logic khác nhau trên các con số trong một cuộc thảo luận về các toán tử. Như vậy chúng ta đã biết cộng số, trừ số, chia số, v.v.

Đầu tiên chúng ta hãy xem cách in các loại số khác nhau có sẵn trong ngôn ngữ lập trình 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);
}

Phần còn lại của mã hóa là rất rõ ràng, nhưng chúng tôi đã sử dụng %.3fđể in float và double, cho biết số chữ số sau số thập phân được in. Khi chương trình trên được thực thi, nó tạo ra kết quả sau:

s: 10
i: 1000
l: 1000000
f: 230.470
d: 30949.374

Các phép toán trên các con số

Bảng sau liệt kê các phép toán tích hợp hữu ích khác nhau functions có sẵn trong ngôn ngữ lập trình C có thể được sử dụng cho các phép tính toán học quan trọng khác nhau.

Ví dụ bạn muốn tính căn bậc hai của một số chẳng hạn là 2304, thì bạn có sẵn một hàm tích hợp sẵn để tính căn bậc hai.

Sr.No. Chức năng & Mục đích
1

double cos(double);

Hàm này nhận một góc (dưới dạng nhân đôi) và trả về cosin.

2

double sin(double);

Hàm này nhận một góc (là một góc đôi) và trả về sin.

3

tan đôi (double);

Hàm này nhận một góc (là một góc đôi) và trả về tiếp tuyến.

4

double log(double);

Hàm này nhận một số và trả về nhật ký tự nhiên của số đó.

5

double pow(double, double);

Đầu tiên là một con số bạn muốn nâng cao và thứ hai là sức mạnh bạn muốn nâng nó lên.

6

double hypot(double, double);

Nếu bạn truyền cho hàm này độ dài hai cạnh của một tam giác vuông, nó sẽ trả về độ dài cạnh huyền.

7

double sqrt(double);

Bạn chuyển hàm này một số và nó trả về căn bậc hai của nó.

số 8

int abs(int);

Hàm này trả về giá trị tuyệt đối của một số nguyên được chuyển cho nó.

9

double fabs(double);

Hàm này trả về giá trị tuyệt đối của bất kỳ số thập phân nào được chuyển đến nó.

10

double floor(double);

Tìm số nguyên nhỏ hơn hoặc bằng đối số được truyền cho nó.

Sau đây là một ví dụ đơn giản để hiển thị một vài phép toán. Để sử dụng các chức năng này, bạn cần bao gồm tệp tiêu đề toán học<math.h> trong chương trình của bạn giống như cách bạn đã bao gồm 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));
}

Khi chương trình trên được thực thi, nó tạo ra kết quả sau:

sin(s): -0.544021
abs(i): -0.544021
floor(f): 230.000000
sqrt(l): 1000.000000
pow(d, 2): 5.635876

Ngoài cách sử dụng trên, bạn sẽ sử dụng số trong đếm vòng lặp, biểu diễn cờ, giá trị đúng hoặc sai trong lập trình C.

Số trong Java

Sau đây là chương trình tương đương được viết bằng Java. Java cung cấp hầu hết các kiểu dữ liệu số có sẵn trong lập trình C.

Bạn có thể thử thực hiện chương trình sau để xem kết quả giống với kết quả được tạo bởi ví dụ C ở trên.

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);
   }
}

Khi chương trình trên được thực thi, nó tạo ra kết quả sau:

s: 10
i: 1000
l: 1000000
f: 230.470001
d: 30949.374000

Java cũng cung cấp đầy đủ các hàm tích hợp để tính toán toán học và bạn có thể sử dụng chúng theo cách giống như cách bạn đã làm trong lập trình C.

Số trong Python

Python hơi khác một chút so với C và Java; nó phân loại các số trongint, long, floatcomplex. Dưới đây là một số ví dụ về số trong Python:

int Dài Phao nổi phức tạp
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

Sau đây là chương trình tương đương được viết bằng 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

Khi chương trình trên được thực thi, nó tạo ra kết quả sau:

s:  10
i:  1000
l:  1000000
f:  230.47
d:  30949.374

Python cũng cung cấp đầy đủ các hàm tích hợp sẵn cho các phép tính toán học và bạn có thể sử dụng chúng giống như cách bạn đã sử dụng chúng trong lập trình C.