Các loại ngôn ngữ dữ liệu Pascal. Các loại dữ liệu trong Pascal

Các lớp thảo luận về các loại dữ liệu tiêu chuẩn chính trong Pascal, khái niệm về biến và hằng số; Giải thích cách làm việc với các hoạt động số học

Pascal là một ngôn ngữ lập trình được gõ. Điều này có nghĩa là các biến trong đó dữ liệu được lưu trữ có một loại dữ liệu cụ thể. Những, cái đó. Chương trình phải được chỉ định trực tiếp dữ liệu nào có thể được lưu trữ trong một biến cụ thể: dữ liệu văn bản, dữ liệu số, nếu số là số nguyên hoặc phân số, v.v. Điều này chủ yếu là cần thiết cho máy tính "biết", hoạt động nào có thể được thực hiện với các biến này và cách thực hiện chính xác.

Ví dụ: việc bổ sung dữ liệu văn bản hoặc như được gọi chính xác trong lập trình - nối với sự hợp nhất thông thường của các dòng, trong khi việc bổ sung dữ liệu số bị ngắt kết nối, ngoài ra, phần mềm và số nguyên cũng được gấp lại theo các cách khác nhau. Điều tương tự áp dụng cho các hoạt động khác.

Hãy xem xét các loại dữ liệu phổ biến nhất trong Pascal.

Các loại dữ liệu số nguyên trong Pascal

Một loại Phạm vi Bộ nhớ cần thiết (byte)
byte. 0..255 1
shortint. -128..127 1
số nguyên -32768.. 32767 2
từ. 0..65535 2
long lanh. -2147483648..2147483647 4

Cần có trong tâm trí rằng khi viết các chương trình trong Pascal số nguyên(Dịch từ tiếng Anh. Toàn bộ) là phổ biến nhất được sử dụng, vì phạm vi của các giá trị là nhu cầu nhiều nhất. Nếu cần một phạm vi rộng hơn, được sử dụng long lanh.(Số nguyên dài, được dịch từ tiếng Anh. Số nguyên dài). Một loại byte.trong Pascal, nó được sử dụng khi không cần phải làm việc với các giá trị âm, điều tương tự cũng áp dụng cho cả hai từ.(Chỉ có phạm vi giá trị ở đây nhiều hơn).

Ví dụ về cách mô tả (khai báo) các biến trong Pascal:

chương trình A1; Var x, y: số nguyên; (Loại số nguyên) MyName: Chuỗi; (Loại chuỗi) Bắt đầu x: \u003d 1; y: \u003d x + 16; Mylame: \u003d "Peter"; WRITELN ("Tên:", MyName, ", Tuổi:", Y) kết thúc.

Kết quả:
Tên: Peter, Tuổi: 17

Bình luận về Pascal.

Chú ý đến cách nhận xét được sử dụng trong Pascal. Trong ví dụ bình luận, tức là. Văn bản dịch vụ mà "không thấy" cho trình biên dịch được kết thúc trong dấu ngoặc nhọn. Thông thường các ý kiến \u200b\u200bđược thực hiện bởi các lập trình viên để giải thích các đoạn mã.

Nhiệm vụ 3. Dân số Moscow bằng A \u003d 90.000.000 cư dân. Dân số Vasyukov mới bằng B \u003d 1000 cư dân. Viết một chương trình xác định sự khác biệt giữa các cư dân giữa hai thành phố. Sử dụng biến biến

Các loại dữ liệu thực trong Pascal

Các số thực ở Pascal và nói chung trong lập trình là tên của các số phân số.

Một loại Phạm vi Bộ nhớ cần thiết (byte)
thực tế 2.9 * 10E-39 .. 1.7 * 10E38 6
Độc thân 1,5 * 10 E-45 .. 3,4 * 10E38 4
gấp đôi. 5 * 10E-324 .. 1.7 * 10E308 8
Đa thế hệ 1.9 * 10E-4951 .. 1.1 * 10E4932 10

Loại thực trong Pascal là những loại thực tế được sử dụng phổ biến nhất.

Ở trên đã được trình bày các loại dữ liệu đơn giản trong Pascal, bao gồm:

  • Thứ tự
  • Toàn bộ.
  • Brain Teaser.
  • Biểu tượng
  • Liệt kê
  • Khoảng thời gian
  • Thực tế

Để hiển thị các giá trị biến của loại thực, đầu ra được định dạng thường được sử dụng:

  • Định dạng sử dụng một số duy nhất có nghĩa là số lượng vị trí được gán cho số này ở dạng hàm mũ;
  • p: \u003d 1234.6789; Writeln (P: 6: 2); (1234.68)

    Cùng với các loại đơn giản trong ngôn ngữ vẫn được sử dụng các loại dữ liệu cấu trúc và con trỏsẽ được dành cho các bài học tiếp theo trên Pascal.

    Hằng số ở Pascal.

    Trước đây, nó thường ở trước rằng biến sẽ có một số giá trị cụ thể và không thay đổi nó trong toàn bộ chương trình. Trong trường hợp này, cần phải sử dụng hằng số.

    Việc khai báo hằng số trong Pascal xảy ra trước khi khai báo các biến (vào từ dịch vụ var) và trông như thế này:

    Một ví dụ về mô tả về hằng số trong Pascal:

    1 2 3 4 5 6 const x \u003d 17; Var mylame: chuỗi; Bắt đầu myname: \u003d "Peter"; WRITELN ("Tên:", MyName, ", Tuổi:", X) kết thúc.

    const x \u003d 17; Var mylame: chuỗi; Bắt đầu myname: \u003d "Peter"; WRITELN ("Tên:", MyName, ", Tuổi:", x) kết thúc.

    "Đẹp" rút toàn bộ và số thực

    Để sau khi hiển thị các giá trị của các biến, centent vẫn duy trì để các giá trị không được hợp nhất với nhau, tùy thuộc vào việc chỉ định số ký tự nào của ký tự nên được cung cấp cho giá trị đầu ra:


    Các hoạt động số học trong Pascal

    THỦ TỤC HIỆU QUẢ THỰC HIỆN

    1. tính toán các biểu thức trong ngoặc;
    2. nhân, chia, div, modu từ trái sang phải;
    3. bổ sung và phép trừ từ trái sang phải.

    Quy trình số học tiêu chuẩn và chức năng Pascal

    Nó đáng để ở chi tiết hơn về một số hoạt động số học.

    • Hoạt động của Inc trong Pascal, thốt ra là một sự gia tăng, là thủ tục Pascal tiêu chuẩn, có nghĩa là sự gia tăng của một.
    • Ví dụ Inc Hoạt động:

      x: \u003d 1; Inc (x); (Tăng x đến 1, I.E. x \u003d 2) WRITELN (X)

      Sử dụng phức tạp hơn thủ tục Inc:
      Inc (x, n) trong đó x là một loại trình tự, n là một loại số nguyên; Thủ tục INC tăng x trên N.

    • Tương tự, quy trình DEC đang chạy trong Pascal: Dec (X) - Giảm x đến 1 (Giảm) hoặc DEC (X, N) - Giảm x trên n.
    • Toán tử ABS là mô-đun số. Hoạt động như sau:
    • A: \u003d - 9; B: \u003d ABS (a); (B \u003d 9)

      a: \u003d - 9; B: \u003d ABS (a); (B \u003d 9)

    • Nhà điều hành div trong Pascal thường được sử dụng, vì một số nhiệm vụ được liên kết với hành động của sự phân chia trọng tâm.
    • Số dư của toán tử phân chia hoặc mod trong Pascal cũng không thể thiếu khi giải quyết một số nhiệm vụ.
    • Hoạt động chú ý là một hàm lẻ tiêu chuẩn của Pascal, xác định liệu một số nguyên là số lẻ. Đó là, trả về TRUE (sự thật) cho các số lẻ, false (false) cho các số chẵn.
    • Một ví dụ về việc sử dụng hàm lẻ:

      var x: số nguyên; Bắt đầu x: \u003d 3; Writeln (sqr (x)); (Trả lời 9) Kết thúc.

    • Hoạt động xua tan trong Pascal thiếu như vậy. Nhưng để xây dựng một số đến mức độ, bạn có thể sử dụng chức năng EXP.
    • Công thức này là: exp (ln (a) * n), trong đó A là số, N là mức độ (a\u003e 0).

      Tuy nhiên, trong trình biên dịch Pascal ABC, triển lãm sẽ dễ dàng đến mức nào:

      var x: số nguyên; bắt đầu x: \u003d 9; WRITELN (SQRT (X)); (Trả lời 3) Kết thúc.

    Nhiệm vụ 4. Kích thước của hộp diêm được biết: Chiều cao - 12,41 cm., Chiều rộng - 8 cm., Độ dày - 5 cm. Tính diện tích cơ sở của hộp và khối lượng của nó
    (S \u003d chiều rộng * độ dày, v \u003d diện tích * chiều cao)

    Nhiệm vụ 5. Trong sở thú, ba con voi và khá nhiều thỏ, và số lượng thỏ thường thay đổi. Voi nên là một trăm cà rốt mỗi ngày, và thỏ là hai. Mỗi buổi sáng, Bộ trưởng của Sở thú thông báo cho số lượng thỏ. Máy tính để đáp ứng điều này sẽ thông báo dịch vụ của tổng số cà rốt, ngày nay cần cho thỏ và voi.

    Nhiệm vụ 6. Nó được biết rằng x. Kẹo Kg có giá a. rúp. Xác định chi phí bao nhiêu y. kg của những viên kẹo này, cũng như bao nhiêu kg có thể được mua trên k. rúp. Tất cả các giá trị vào người dùng.

    Khái niệm về dữ liệu là một trong những khóa trong lập trình, và nói chung trong khoa học máy tính. Nói đại khái, dữ liệu trong khoa học máy tính là thông tin trong trạng thái lưu trữ, xử lý hoặc truyền tải, trong một số phân khúc thời gian. Trong các máy Turing, thông tin là loại và lần lượt phụ thuộc vào loại thông tin.

    Các loại dữ liệu trong Pascal, các giá trị có thể có của các biến, hằng số, biểu thức và hàm được xác định. Chúng được nhúng và người dùng. Các loại tích hợp ban đầu có mặt trong ngôn ngữ lập trình và tùy chỉnh được tạo bởi một lập trình viên.

    Theo phương pháp trình bày và xử lý các loại dữ liệu là:

    • Đơn giản
    • cấu trúc.
    • con trỏ.
    • các đối tượng
    • thủ tục

    Bài viết này sẽ chỉ xem xét các loại dữ liệu đơn giản nhất, vì tại các giai đoạn đào tạo ban đầu, chương trình của bạn sẽ dễ dàng thực hiện, nếu không có tệp và bản ghi so với không có số nguyên hoặc chuỗi biến.

    Loại nguyên loại.

    Điều này bao gồm một số loại số nguyên, khác nhau trong phạm vi giá trị, số byte được phân bổ để lưu trữ và từ mà loại được khai báo.

    Một loại Phạm vi Kích thước bằng byte.
    shortint. -128…127 1
    số nguyên -32 768…32 767 2
    long lanh. -2 147 483 648…2 147 483 647 4
    byte. 0…255 1
    từ. 0…65 535 2

    Một biến số nguyên có thể được công bố trong phần var, ví dụ:

    Trên các biến của danh mục này, tất cả các hoạt động số học và logic có thể được thực hiện ngoại trừ phân chia (/), cần thiết cho nó. Một số chức năng và thủ tục tiêu chuẩn cũng có thể được áp dụng.

    Loại thực

    Các loại dữ liệu thực sau đây là trong Pascal:

    Một loại Phạm vi Bộ nhớ, byte. Số chữ số.
    Thực tế 2.9e-39 ... 1.7e38 6 11-12
    Độc thân 1,5e-45 ... 3.4E38 4 7-8
    Gấp đôi. 5.0E-324 ... 1.7e308 8 15-16
    Đa thế hệ 3.4E-4932 ... 1.1E493 10 19-20
    Comp. -9.2e63 ... (9,2E63) -1 8 19-20

    Một hoạt động và chức năng nhiều hơn có thể được thực hiện trên chúng so với hơn. Ví dụ: các chức năng này trả về việc thực hiện:

    sin (x) - xoang;

    cos (x) - cosine;

    arctan (x) - arctangent;

    ln (x) - logarit tự nhiên;

    sqrt (x) - căn bậc hai;

    exp (x) - nhà triển lãm;

    Loại logic

    Một biến có loại dữ liệu logic có thể chỉ có hai giá trị: đúng (sự thật) và sai. Ở đây sự thật tương ứng với giá trị 1 và những lời nói dối là không giống nhau. Bạn có thể khai báo một biến Boolean như thế này:

    Trên dữ liệu của loại này, các hoạt động so sánh và hoạt động logic có thể được thực hiện: không, và hoặc, XOR.

    Kiểu biểu tượng

    Kiểu dữ liệu biểu tượng là một tập hợp các ký tự được sử dụng trong một máy tính cụ thể. Biến của loại này lấy giá trị của một trong các ký tự này, mất 1 byte trong bộ nhớ của máy tính. Từ ngữ Char. Xác định giá trị của loại này. Có một số cách để ghi một biến tượng trưng (hoặc hằng số):

    1. là một biểu tượng duy nhất, được đặt trong dấu nháy đơn: 'w', 'v', 'p';
    2. khi chỉ định mã ký hiệu, giá trị phải nằm trong phạm vi từ 0 đến 255.
    3. sử dụng thiết kế ^ k, nơi K là mã của biểu tượng điều khiển. Giá trị K phải là 64 mã khác của biểu tượng điều khiển tương ứng.

    Hoạt động của các mối quan hệ và các chức năng sau được áp dụng cho các giá trị của loại dữ liệu tượng trưng:

    Thành công (x) - Trả về biểu tượng sau;

    PRED (X) - Trả về biểu tượng trước đó;

    Ord (x) - Trả về giá trị mã ký hiệu;

    Chr (x) - Trả về giá trị biểu tượng bằng mã của nó;

    Upcase (x) - Dịch litera khỏi khoảng 'A' .. Z Khoảng thời gian vào thanh ghi trên cùng.

    Đối với công việc hiệu quả với loại tượng trưng mà tôi khuyên bạn nên sử dụng.

    Chuỗi loại

    Chuỗi trong Pascal là một chuỗi các nhân vật của các tù nhân trong dấu nháy đơn và được chỉ định bởi từ này Chuỗi. Số lượng ký tự (độ dài chuỗi) không được vượt quá 255. Nếu độ dài của chuỗi không chỉ định, thì nó tự động kết xuất trong 255 ký tự. Quan điểm chung về thông báo về biến chuỗi trông như thế này:

    Var.<имя_переменной>: Chuỗi [<длина строки>];

    Mỗi ký tự trong chuỗi có chỉ số riêng (số). Chỉ số của byte đầu tiên là 0, nhưng nó được lưu trữ không phải là ký tự đầu tiên, nhưng độ dài của toàn bộ dòng, từ đó nó tuân theo biến của loại này sẽ chiếm 1 byte nhiều hơn số lượng biến trong đó. Số lượng biểu tượng đầu tiên là 1, ví dụ, nếu chúng ta có một chuỗi s \u003d 'stroka', thì s \u003d s ;. Trong một trong những bài học sau, loại dữ liệu chuỗi sẽ được xem xét nhiều hơn nữa.

    Kiểu dữ liệu được liệt kê

    Kiểu dữ liệu được liệt kê là một số số định danh hạn chế. Các định danh này bao gồm dấu ngoặc đơn và tách biệt với nhau dấu phẩy.

    Loại Ngày \u003d (Thứ Hai, Thứ Ba, Thứ Tư, Thứ Năm, Thứ Sáu, Thứ Bảy, Chủ Nhật);

    Một biến A có thể chỉ có các giá trị được xác định trong phần Loại. Bạn cũng có thể khai báo một biến của loại được liệt kê trong phần var:

    Var a: (Thứ Hai, Thứ Ba);

    Các hoạt động mối quan hệ áp dụng cho loại này, trong khi trước, nó chắc chắn là thứ hai

    Loại dữ liệu khoảng thời gian

    Khi bạn cần đặt một số loại giá trị, thì trong các tình huống như vậy, loại dữ liệu khoảng thời gian được áp dụng. Đối với quảng cáo được sử dụng thiết kế m..n.Ở đâu m. - Ý nghĩa tối thiểu (ban đầu) và n. - Tối đa (hữu hạn); Ở đây M và N là hằng số có thể là một loại toàn bộ, tượng trưng, \u200b\u200bđược liệt kê hoặc logic. Các giá trị khoảng cả các giá trị có thể được mô tả cả trong phần Loại và trong phần Mô tả Biến.

    Hình thức chung:

    Kiểu<имя_типа> = <мин. значение>..<макс. значение>;

    Các loại ngôn ngữ dữ liệu Pascal

    Bất kỳ dữ liệu (hằng số, biến, giá trị của hàm hoặc biểu thức) trong turbo pascal được đặc trưng bởi các loại của chúng. Loại xác định tập hợp các giá trị cho phép mà một hoặc một đối tượng khác có thể có, cũng như nhiều thao tác được phép áp dụng cho nó. Loại này cũng xác định định dạng của biểu diễn nội bộ của dữ liệu trong bộ nhớ của máy tính.

    Có các loại dữ liệu sau trong Turbo-Paskla.

    1) Các loại đơn giản:

    - thực tế;

    - tượng trưng;

    - Boolean (logic);

    - liệt kê;

    - Phạm vi bị giới hạn).

    2) Các loại composite (có cấu trúc):

    - Thường xuyên (mảng);

    - Kết hợp (mục);

    - tập tin;

    - nhiều;

    - chuỗi;

    - Các đối tượng.

    3) Các loại tham chiếu (các dấu hiệu gõ và inepited).

    4) Các loại thủ tục.

    Trong Turbo Pascal, một cơ chế để tạo các loại dữ liệu mới được cung cấp, do tổng số loại được sử dụng trong chương trình có thể rất lớn.

    Toàn bộ loại. Các giá trị của toàn bộ là các phần tử của một tập hợp con của số nguyên. Có năm loại trong Turbo-Pascal. Tên của chúng, phạm vi giá trị, độ dài của bản trình bày trong byte được đưa ra trong bảng. 6.

    Bảng 6.

    Toàn bộ các loại dữ liệu

    Các biến cụ thể được mô tả bằng các từ dành riêng trên:

    i, J, K: toàn bộ;

    Dữ liệu số nguyên được lưu trữ trong bộ nhớ cho chắc chắn. Ví dụ: các biến loại số nguyên nằm trong bộ nhớ 2 byte (16 bit), được phân phối như sau: 1 bit được xả để lưu số số (0, nếu số dương, và 1, nếu số đó là tiêu cực) và 15 bit để lưu trữ số trong ghi chú hệ thống nhị phân. Số thập phân tối đa có thể được viết dưới dạng Binary 15 bit là 32767.

    Khi sử dụng các thủ tục và chức năng với các tham số số nguyên, "sự lồng nhau" của các loại nên được hướng dẫn, tức là. Bất cứ nơi nào sử dụng từ, nó được phép sử dụng byte (nhưng không phải ngược lại), trong LONGINT "nhập số nguyên", lần lượt, lần lượt, bao gồm shortint.

    Đối với một loại nguyên, năm thao tác chính được xác định, kết quả của đó cũng là một số nguyên: +, -, *, div, mod (cộng, phép trừ, nhân, phân chia số nguyên và dư lượng từ phân chia số nguyên). Trong các biểu hiện số học của các hoạt động *, DIV, MOD có mức độ ưu tiên cao hơn so với các hoạt động +, -. Ví dụ về biểu thức:

    Danh sách các thủ tục và chức năng áp dụng cho các loại số nguyên được đưa ra trong bảng. 7. Chữ B, S, W, I, L được biểu thị bằng các biểu thức, tương ứng, kiểu byte, shortint, từ, số nguyên và longint; X là một biểu thức của bất kỳ loại nào trong số này; Mã định danh VB, VS, VW, VI, VX, VX cho biết các biến của các loại tương ứng. Trong ngoặc vuông, tham số tùy chọn được chỉ định.

    Bảng 7.

    Quy trình và chức năng tiêu chuẩn áp dụng cho các loại

    Kháng cáo Loại kết quả Hành động
    ABS (X) X. Trả về mô-đun X
    Chr (b) Char. Trả về một biểu tượng trong mã của nó
    Tháng 12 (VX [, I]) - Giảm giá trị của VX với I, và trong trường hợp không có I - 1
    INC (VX [, I]) - Tăng giá trị của VX cho I, và trong trường hợp không có I - trên 1
    Xin chào (tôi) Byte. Trả về byte cũ hơn của đối số
    Xin chào (tôi) Byte. Cũng thế
    Lo (i) Byte. Trả về đối số byte trẻ hơn
    Thấp) Byte. Cũng thế
    Lẻ (l) Byte. Trả về TRUE nếu đối số là một số lẻ
    Ngẫu nhiên (W) Giống như tham số Trả về số giả ngẫu nhiên, được phân phối đồng đều trong phạm vi 0 ... (W-1)
    Sqr (x) X. Trả về hình vuông của đối số
    Trao đổi (i) Số nguyên
    Trao đổi (w) Từ. Thay đổi trong các byte trong từ
    Thành công (x) Giống như tham số Trả về giá trị nguyên sau, tức là. X + 1.
    PRED (X) Giống như tham số Trả về toàn bộ giá trị trước đó, tức là. X-1.

    Dưới các hành động với các số nguyên, loại kết quả sẽ tương ứng với loại toán hạng và nếu toán hạng đề cập đến nhiều loại khác nhau - loại toán hạng, có phạm vi giá trị tối đa. Có thể tràn của kết quả không được kiểm soát, có thể dẫn đến lỗi trong chương trình.

    Loại thực. Các giá trị của các loại thực xác định một số tùy ý với một số độ chính xác hữu hạn tùy thuộc vào định dạng bên trong của số thực. Trong Turbo-Pascal có năm loại thực (Bảng 8).

    Bảng 8.

    Các loại dữ liệu thực sự

    Các biến thực được mô tả bằng các từ dành riêng trên:

    Số thực trong bộ nhớ của máy tính bao gồm 3 phần:

    Một số số;

    Phần theo cấp số nhân;

    Số mantissa.

    Mantissa có chiều dài 23 (đơn) đến 63 (mở rộng) xả nhị phân, cung cấp độ chính xác 7-8 cho đơn và 19-20 cho các chữ số thập phân mở rộng. Điểm thập phân (dấu phẩy) có nghĩa là trước khi xả bên trái (cao cấp) của Mantissa, nhưng dưới các hành động với số lượng, vị trí của nó được chuyển sang bên trái hoặc bên phải theo thứ tự nhị phân của số được lưu trữ trong phần số mũ , Vì vậy, hành động trên số thực được gọi là số học dấu phẩy động (dấu phẩy).

    Truy cập vào các loại đơn, gấp đôi và mở rộng được thực hiện chỉ với các chế độ biên dịch đặc biệt. Để bật dữ liệu chế độ, chọn mục menu. Tùy chọn., Trình biên dịch ... và kích hoạt tùy chọn 8087/80287 trong một nhóm Xử lý số..

    Một vị trí đặc biệt trong turbo Pascal chiếm một loại comp, được hiểu là một số thực mà không có các bộ phận theo cấp số nhân và phân số. Trên thực tế, Comp là một số nguyên lớn với một dấu hiệu giữ lại 19 ... 20 số thập phân đáng kể. Đồng thời, Comp Biểu thức hoàn toàn tương thích với bất kỳ loại thực nào khác: tất cả các thao tác thực đều được xác định trên nó, nó có thể được sử dụng như một đối số của các hoạt động toán học, v.v.



    Số thực được đặt trong một hệ thống số thập phân trong một trong hai hình thức.

    TRONG hình thành với một điểm cố định Mục này bao gồm toàn bộ các bộ phận và phân số được tách ra khỏi nhau bởi một điểm, ví dụ:

    0.087 4.0 23.5 0.6

    TRONG hình dạng dấu phẩy động Mục nhập chứa chữ E, có nghĩa là "Nhân từ mười đến mức độ" và bằng cấp là một số nguyên, ví dụ:

    7E3 6,9E-8 0.98E-02 45E + 04

    Các thao tác sau được xác định trên các đối tượng của loại thực: +, -, *, /.

    Các hoạt động "*" và "/" có mức độ ưu tiên cao hơn so với các hoạt động "+" và "-".

    Nếu ít nhất một toán hạng là có thật, thì các hoạt động +, -, * hoặc dẫn đến kết quả thực sự. Hoạt động của phân chia / dẫn đến một kết quả thực sự và trong trường hợp hai toán hạng nguyên, ví dụ: 9/3 \u003d 3.0.

    Các chức năng toán học tiêu chuẩn được trình bày trong bảng có thể được sử dụng để làm việc với dữ liệu thực. 9. Kết quả của hoạt động của các chức năng này cũng là có thật.

    Bảng 9.

    Các chức năng toán học làm việc với dữ liệu thực

    Các biến và hằng thực thực sự bị cấm sử dụng:

    - Trong các chức năng của PRED (X), thành công (x), ord (x);

    - Là mảng;

    - Là nhãn trong các nhà khai thác kiểm soát;

    - Là biến đối chứng (tham số chu kỳ).

    Để chuyển số thực thành toàn bộ, bạn có thể sử dụng các chức năng:

    trunc (x) là toàn bộ phần X (X - Real);

    vòng (x) - làm tròn đến toàn bộ gần nhất (X-Real).

    Loại biểu tượng. Các biến tượng trưng được mô tả bằng cách sử dụng một từ được đặt trước:

    Các giá trị của loại này được chọn từ một tập hợp các ký tự được sắp xếp (từ một tập hợp ASCII), bao gồm 256 ký tự. Mỗi ký tự được quy cho một số nguyên từ phạm vi 0.255. Ví dụ: các chữ cái đăng ký của bảng chữ cái Latinh A..Z có mã 65..90 và chữ cái viết thường - mã 97.122.

    Giá trị của biến loại ký tự là một ký hiệu được đặt trong dấu nháy đơn, ví dụ:

    'F' '8' '*'

    Các biến tượng trưng có thể được so sánh với nhau và các mã ký hiệu được so sánh.

    Có các chức năng thiết lập sự tuân thủ giữa ký hiệu và mã của nó:

    ord (c) - vấn đề số lượng biểu tượng S;

    chr (i) - cung cấp một ký tự với số I.

    Những chức năng này đã trở lại với nhau.

    Loại logic. Các biến logic được mô tả bằng cách sử dụng một từ được đặt trước boolean:

    p1, P2: Boolean;

    Các biến loại logic có hai giá trị: thật. (thật), sai (Sai).

    Các giá trị này được sắp xếp như sau: Sai< true. false имеет порядковый номер 0, true имеет порядковый номер 1.

    Một biến loại logic có thể gán một giá trị trực tiếp hoặc sử dụng biểu thức logic. Ví dụ,

    a, D, G, B: Boolean;

    Các mối quan hệ (<, <=, >, >=, =, <>), áp dụng cho các biến toàn bộ, thực tế và biểu tượng, đưa ra một kết quả logic.

    Các hoạt động logic trên các toán hạng của một loại logic cũng cung cấp kết quả logic (hoạt động được đưa ra theo thứ tự ưu tiên giảm dần) (để biết chi tiết, xem Bảng 3 và 5):

    không - từ chối (hoạt động là không);

    và - nhân hóa logic (hoạt động và);

    hoặc - bổ sung logic (hoạt động hoặc);

    xOR - không bao gồm hoặc.

    Biểu thức (không phải a) là ngược lại với giá trị a.

    Biểu thức (A và B) cho đúng, trừ khi cả hai và B đều đúng, trong các trường hợp khác, giá trị của biểu thức này là sai.

    Biểu thức (A hoặc B) cho giá trị sai, trừ khi và A và B là sai, trong tất cả các trường hợp khác, kết quả là đúng.

    LOẠI LOẠI. Loại được liệt kê không chuẩn được đặt dưới dạng danh sách các giá trị có thể lấy một biến. Mỗi giá trị được gọi là một định danh nhất định và nằm trong danh sách được đóng khung bằng dấu ngoặc tròn. Chế độ xem chung của mô tả loại được liệt kê:

    x \u003d (W1, W2, ..., WN);

    trong đó X là loại tên, W1, W2, ..., WN - các giá trị có thể lấy một loại biến x.

    Các giá trị này được sắp xếp theo W1

    Các tính năng tiêu chuẩn sau đây được áp dụng cho đối số W:

    thành công (W), dự đoán (W), ord (w).

    màu \u003d (Đỏ, Đen, Vàng, Xanh lục)

    ww \u003d (trái, lên, phải, xuống);

    f: mảng của ww;

    thành công (d) \u003d màu vàng;

    Các biến A và B là loại w. Họ có thể lấy một trong ba giá trị, và trên

    Hoạt động của mối quan hệ được áp dụng cho các giá trị của loại loại: \u003d,<>, <=, >=, <, >.

    Nó được phép cho biết các hằng số của loại được liệt kê trực tiếp trong phần var. Mà không sử dụng phần kiểu, ví dụ

    c, D: (đỏ, đen, vàng, xanh lá cây);

    Kiểu Rangean (giới hạn). Khi xác định loại giới hạn, bạn chỉ định các giá trị ban đầu và cuối cùng có thể nhận được loại phạm vi biến. Giá trị được phân tách bằng hai điểm.

    Mô tả về một loại giới hạn có chế độ xem

    Ở đây - tên loại, Min, Max - hằng số.

    Khi chỉ định một loại giới hạn, phải tuân theo các quy tắc sau:

    - Cả hai hằng số biên giới tối thiểu và tối đa phải cùng loại;

    - Một loại giới hạn được tạo từ dữ liệu loại cơ bản, có thể được chọn là toàn bộ, ký tự hoặc loại được liệt kê. Ví dụ:

    col \u003d đỏ .. vàng;

    chữ cái \u003d 'a' .. 'f';

    - Các biến của loại giới hạn có thể được mô tả trong phần var mà không cần tham khảo phần Loại:

    - Một loại giới hạn kế thừa tất cả các thuộc tính của loại cơ bản, từ đó nó được tạo;

    - Đường viền tối thiểu phải luôn nhỏ hơn đường viền tối đa.

    Mảng. Một mảng là một loại phức tạp, là một cấu trúc bao gồm một số lượng cố định của các thành phần cùng loại. Loại thành phần được gọi là loại cơ sở. Tất cả các thành phần của mảng có thể dễ dàng sắp xếp hợp lý và cung cấp quyền truy cập vào bất kỳ trong số chúng chỉ bằng cách chỉ số thứ tự của nó. Mô tả về mảng trong phần var. Nó có hình thức:

    a: mảng. của. T2;

    nơi A là tên của mảng, mảng., của. - Từ dịch vụ (có nghĩa là "mảng" "), T1 - loại chỉ mục; T2 - Loại thành phần (loại cơ bản).

    Số lượng chỉ mục xác định kích thước của mảng. Các chỉ số có thể là một toàn bộ (ngoại trừ longint), biểu tượng, logic, được liệt kê và phạm vi. Các chỉ số được phân tách bằng dấu phẩy và kết thúc bằng dấu ngoặc vuông. Các thành phần của mảng có thể có bất kỳ loại nào khác ngoài tệp.

    Ví dụ 1. Hãy xem xét một mảng một chiều của các giá trị là năm số thực:

    4.6 6.23 12 -4.8 0.7

    Mô tả về mảng này có vẻ như thế này:

    c: Mảng thực;

    Đối với một giá trị chỉ mục cụ thể, bạn có thể chọn một thành phần cụ thể của mảng (ví dụ: C có nghĩa là phần tử thứ ba của mảng C, I.E.. Số 12).

    Ví dụ 2. Xem xét một mảng hai chiều trong (Ma trận B), giá trị của đó là bảng từ số nguyên:

    Mô tả của mảng này như sau:

    b của số nguyên;

    TẠI ĐÂY B - Tên của mảng, chỉ mục đầu tiên là số dòng và lấy các giá trị từ 1 đến 2, số thứ hai của số cột và lấy các giá trị từ 1 đến 4. Theo các giá trị chỉ mục cụ thể, bạn Có thể chọn một thành phần cụ thể của mảng (ví dụ: B có nghĩa là phần tử bảng trong dòng đầu tiên và cột thứ ba, I.E. Số -4).

    Các chỉ số có thể là các biểu thức tùy ý tương ứng với loại chỉ mục từ mô tả của mảng:

    a: Mảng thực sự;

    a [(i + 1) * 2]: \u003d 24;

    Tập hợp các hoạt động trên các phần tử của mảng được xác định đầy đủ theo loại các yếu tố này.

    Chuỗi loại. Loại chuỗi - một số lượng lớn chuỗi tượng trưng của độ dài tùy ý (từ 0 đến một số được chỉ định). Các biến chuỗi được mô tả bằng cách sử dụng một từ dịch vụ. chuỗi:

    b: chuỗi ;

    Đặc trưng:

    - Giá trị của biến chuỗi có thể được nhập bằng bàn phím, được gán cho câu lệnh gán, đọc từ tệp. Trong trường hợp này, độ dài của chuỗi đã nhập có thể là bất kỳ (ít hơn kích thước được chỉ định, bằng với kích thước hoặc nhiều hơn, trong trường hợp sau, các ký tự không cần thiết sẽ bị loại bỏ); A: \u003d 'Kết quả';

    - Được phép sử dụng thao tác phía sau trong câu lệnh gán, vì các hàng có thể tự động thay đổi độ dài của chúng: A: \u003d A + 'Tính toán';

    - Độ dài tối đa của biến chuỗi 255 ký tự, việc quay số này có thể được bỏ qua:

    a: chuỗi;

    a1: chuỗi ;

    Các biến A và A1 là giống nhau (mô tả tương đương).

    - Bộ nhớ trong các biến loại chuỗi được cung cấp cho mức tối đa, nhưng chỉ một phần của bộ nhớ được sử dụng, thực sự được tham gia vào các ký hiệu chuỗi tại thời điểm này. Để mô tả độ dài biến chuỗi n, n + 1 byte bộ nhớ được sử dụng: n byte - để lưu trữ các ký hiệu chuỗi, n + 1-byte - để lưu trữ độ dài hiện tại.

    - Trên các giá trị của các loại chuỗi Các hoạt động so sánh được xác định:< <= > >= = <>. Một chuỗi ngắn luôn ít dài hơn. Nếu các dòng có cùng chiều dài, mã ký hiệu được so sánh.

    - Có thể truy cập vào các yếu tố riêng lẻ của chuỗi tương tự như quyền truy cập vào các phần tử của mảng: a, a. Trong ngoặc vuông cho biết số lượng phần tử hàng.

    Thủ tục và chức năng định hướng chức năng.

    concat (S1, S2, ...) - Chức năng Fusion của hàng, s1, S2,... - hàng, số lượng hàng có thể tùy ý. Kết quả của chức năng là một chuỗi. Nếu chuỗi mặc định dài hơn 255 ký tự, thì chuỗi được cắt ngắn thành 255 ký tự.

    sao chép (s, chỉ mục, đếm) - Chức năng tô sáng dòng từ dòng nguồn s. Lena. Đếm các ký tự bắt đầu bằng một biểu tượng dưới số mục lục.

    xóa (s, chỉ mục, đếm) - Quy trình loại bỏ từ độ dài kết hợp chuỗi s Đếm các ký tự bắt đầu bằng một ký tự với một số mục lục.

    chèn (S1, S2, Index) - Thủ tục chèn chuỗi s1. Trong một chuỗi s2.bắt đầu với một nhân vật với một số mục lục.

    chiều dài (s) - Chức năng xác định độ dài hiện tại của chuỗi trả về số bằng với độ dài hiện tại của chuỗi.

    pOS (S1, S2) - Chức năng tìm kiếm dòng s2. Supptroke. s1.. Hiển thị số vị trí của chuỗi con biểu tượng đầu tiên s1. trong dòng. s2. (hoặc 0, nếu không có dòng).

    val (st, x, mã) - Quy trình chuyển đổi chuỗi S thành một biến toàn bộ hoặc vật liệu x.. Tham số mã. chứa 0 nếu chuyển đổi đã chuyển thành công (và trong x. Kết quả của việc chuyển đổi được đặt) hoặc số vị trí dòng, trong đó phát hiện ký hiệu sai (trong trường hợp này, giá trị x. không thay đổi).

    Khả năng tương thích và các loại chuyển đổi. Turbo Pascal là một ngôn ngữ đánh máy. Nó dựa trên tuân thủ nghiêm ngặt khái niệm các loại, theo tất cả các hoạt động áp dụng chỉ được xác định trên các toán hạng của các loại tương thích.

    Hai loại được coi là tương thích nếu:

    - Cả hai đều cùng loại;

    - Cả hai thực;

    - Cả hai số nguyên;

    - Một loại là loại loại của loại thứ hai;

    - Cả hai đều là các loại dải thuộc cùng loại cơ bản;

    - Cả hai đều được đặt bao gồm các yếu tố của cùng một loại cơ bản;

    - Cả hai đều là các dòng đóng gói (được xác định với từ trước được đóng gói) cùng chiều dài tối đa;

    - một là loại loại, và phần còn lại là dòng hoặc biểu tượng;

    - một loại là bất kỳ con trỏ nào, và cái còn lại là một con trỏ đến đối tượng liên quan đến nó;

    - Cả hai đều là loại thủ tục có cùng loại kết quả (đối với chức năng loại), số lượng tham số và loại tham số có liên quan lẫn nhau.

    Khả năng tương thích loại có tầm quan trọng đặc biệt trong các toán tử gán. Đặt T1 là loại biến và T2 - loại biểu thức, nghĩa là gán T1: \u003d T2 được thực hiện. Nhiệm vụ này là có thể trong các trường hợp sau:

    - T1 và T2 Có cùng loại và loại này không áp dụng cho các tệp, mảng tệp, mục chứa tệp trường hoặc mảng của các mục đó;

    - T1 và T2 là các loại trình tự tương thích và giá trị T2 nằm trong phạm vi của các giá trị có thể có T1;

    - T1 và T2 là loại thực và giá trị của T2 nằm trong phạm vi các giá trị có thể có T1;

    - T1 - loại thật và loại T2 - toàn bộ;

    - T1 - chuỗi và biểu tượng T2;

    - T1 - chuỗi và hàng T2 được đóng gói;

    - Các dòng đóng gói tương thích T1 và T2;

    - Các bộ tương thích T1 và T2 và tất cả các thành viên T2 thuộc về tập hợp các giá trị có thể có của T1;

    - Con trỏ tương thích T1 và T2;

    - Các loại thủ tục tương thích T1 và T2;

    - T1 - đối tượng và T2 - Hậu duệ của nó.

    Trong chương trình, dữ liệu của cùng loại có thể được chuyển đổi thành dữ liệu loại khác. Một chuyển đổi như vậy có thể rõ ràng hoặc ngầm.

    Khi các loại chuyển đổi rõ ràng, các hàm chuyển đổi đặc biệt được gọi, các đối số thuộc về một loại và các giá trị là khác nhau. Ví dụ - Đã được coi là ord, trunc, round, chr.

    Một chuyển đổi ngầm có thể chỉ có trong hai trường hợp:

    - Trong các biểu thức bao gồm các biến thực và số nguyên, sau này được tự động chuyển đổi thành một loại thực và toàn bộ biểu thức nói chung có được loại thực;

    - cùng một khu vực bộ nhớ xen kẽ được hiểu là chứa dữ liệu của một, sau đó một loại khác (căn chỉnh trong bộ nhớ của dữ liệu loại khác nhau).

    3.2. Các loại cơ sở dữ liệu đơn giản Turbo Pascal 7

    Một loại đơn giản xác định một tập hợp các giá trị tham số được sắp xếp. Turbo Pascal có các loại nhóm đơn giản sau đây:

    • toàn bộ các loại;
    • loại logic;
    • loại biểu tượng;
    • loại được liệt kê;
    • loại loại;
    • loại thật.

    Tất cả các loại đơn giản, ngoại trừ thực, được gọi là các loại trình tự. Đối với số lượng các loại trình tự, quy trình và chức năng tiêu chuẩn được xác định: DEC, INC, ORD, PUCK (xem Phần 13.1).

    3.2.1. Toàn thể loại

    Không giống như ngôn ngữ của Pascal, trong đó toàn bộ số nguyên duy nhất được xác định, có năm loại số nguyên tiêu chuẩn: shortint, số nguyên, longint, byte, từ trong turbo pascal. Các đặc điểm của các loại này được hiển thị trong bảng. 2.

    Bảng 2. Toàn bộ các loại dữ liệu

    Một loại Phạm vi định dạng Kích thước bằng byte.
    Shortint. -128 .. 127 Ký tên 1
    Số nguyên -32768 .. 32767 Ký tên 2
    Long lanh. -2147483648 .. 2147483647 Ký tên 4
    Byte. 0 .. 255 Không suy nghĩ 1
    Từ. 0 .. 65535 Không suy nghĩ 2

    3.2.2. Loại logic

    Boolean loại logic tiêu chuẩn (kích thước - 1 byte) là loại dữ liệu, bất kỳ yếu tố nào có thể chỉ có hai giá trị: đúng và sai. Đồng thời, các điều kiện sau là đúng:
    FALSE ORD (FALSE) \u003d 0
    Ord (TRUE) \u003d 1
    Thành công (sai) \u003d đúng
    PRED (TRUE) \u003d FALSE

    Turbo Pascal 7.0 đã thêm ba loại logic hơn ByteBool (kích thước - 1 byte), WordBool (kích thước - 2 byte) và Longbool (kích thước - 4 byte). Chúng được nhập để thống nhất với các ngôn ngữ lập trình khác và với môi trường Windows. Sự khác biệt của chúng từ loại Boolean tiêu chuẩn là giá trị thực của tham số của loại này, tương ứng với giá trị true. Đối với cột mốc của các loại logic, giá trị của false tương ứng với số 0 được ghi trong số byte thích hợp. Giá trị của loại TRUE đối với Boolean tương ứng với số 1 được ghi trong byte của nó và đối với các loại khác, giá trị true tương ứng với bất kỳ số nào khác ngoài 0 (mặc dù chức năng ord trong trường hợp này có giá trị 1).

    3.2.3. Kiểu biểu tượng

    Loại biểu tượng tiêu chuẩn Xác định một tập hợp các ký tự ASCII hoàn chỉnh. Chức năng ORD từ kích thước của loại char cung cấp mã của ký hiệu tương ứng. Các giá trị của loại ký tự theo mã của chúng được so sánh.

    3.2.4. LOẠI LOẠI

    Loại loại không phải là tiêu chuẩn và được xác định bởi tập hợp các định danh mà các giá trị tham số có thể khớp. Danh sách các định danh được chỉ định trong ngoặc đơn, định danh được phân tách bằng dấu phẩy:

    Kiểu
    = ();)

    Điều quan trọng là trong danh sách thứ tự nào được liệt kê khi xác định loại, vì mã định danh đầu tiên được gán số thứ tự số 0, số thứ hai - 1, v.v ... cùng định danh có thể được sử dụng trong định nghĩa chỉ có một loại được liệt kê. Chức năng ORD từ giá trị của loại được liệt kê đưa ra số thứ tự của giá trị của nó.

    Thí dụ. Loại được liệt kê.

    loại Operat \u003d (Plus, Minus, Mult, Divide);

    Loại logic là một trường hợp đặc biệt của loại được liệt kê:

    loại boolean \u003d (sai, đúng);

    3.2.5. Loại phạm vi

    Trong bất kỳ loại thứ tự nào, bạn có thể chọn một tập hợp con của các giá trị được xác định bởi giá trị tối thiểu và tối đa trong đó tất cả các giá trị của loại nguồn nằm trong các ranh giới này, bao gồm cả bản biên giới. Một tập hợp con như vậy xác định phạm vi loại. Phạm vi loại được đặt thành chỉ ra các giá trị tối thiểu và tối đa được phân tách bằng hai điểm:

    loại \u003d. . Được;

    Giá trị tối thiểu khi xác định loại này không được lớn hơn mức tối đa.

    Thí dụ. Xác định phạm vi loại.

    kiểu
    Dozen \u003d 1..12; (Số từ 1 đến 12)
    Addsub \u003d plus..minus; (Hoạt động cộng và trừ)

    3.2.6. Các loại loại thực

    Không giống như tiêu chuẩn của Pascal, trong đó chỉ có một loại thực tế được xác định, Turbo Pascal có năm kiểu thực tiêu chuẩn: Real, Single, Double, Extended, SMR. Đối với các đặc điểm của các loại này, xem bảng. 3. Bảng 3. Các loại dữ liệu thực

    Một loại Phạm vi Số chữ số có nghĩa là Kích thước bằng byte.
    Thực tế 2.9*10-39..1.7*1038 11-12 6
    Độc thân 1.5*10-45..3.4*1038 7-8 4
    Gấp đôi. 5.0*10-324.-1.7*10308 15-16 8
    Đa thế hệ 3.4*10-4932..1.1*104932 19-20 10
    Comp. -263+1..263-1 19-20 8

    Loại comp thực sự là loại số nguyên của phạm vi tăng, nhưng thứ tự không được xem xét.

    Các loại đơn, gấp đôi, mở rộng và comp chỉ có thể được sử dụng trong các chương trình với sự có mặt của bộ đồng xử lý số học hoặc với trình giả lập đồng bộ hóa trên (xem trang 17.5.8 và 17.7.1).

    Phổ biến nhất trong toán học các loại số. - đây là toàn bộ. các số đại diện cho vô hạn nhiều giá trị rời rạc và có hiệu lực Số đại diện cho các giá trị liên tục không giới hạn.

    Mô tả các loại dữ liệu số (INTEGER) Pascal

    Trong cùng một ngôn ngữ, các tập hợp con khác nhau của nhiều số nguyên có thể được thực hiện. Phạm vi của các giá trị có thể của các loại số nguyên phụ thuộc vào biểu diễn nội bộ của chúng, có thể chiếm một, hai hoặc bốn byte. Vì vậy, trong Pascal 7.0, các loại dữ liệu số nguyên sau được sử dụng:

    Với số nguyên các loại dữ liệu số Pascal bạn có thể thực hiện các thao tác sau:

    • Môn số học:
      cộng (+);
      trừ (-);
      phép nhân(*);
      số dư của phân chia (mod);
      tập thể dục;
      Unary plus (+);
      Trừ unary (-).
    • Hoạt động mối quan hệ:
      bình đẳng quan hệ (\u003d);
      Tỷ lệ bất bình đẳng (<>);
      Tỷ lệ ít hơn (<);
      tỷ lệ nhiều hơn (\u003e);
      Tỷ lệ không ít hơn (\u003e \u003d);
      Không có thêm thái độ (<=).

    Dưới tác động của S. toàn bộ các loại dữ liệu số Kết quả của kết quả sẽ tương ứng với loại toán hạng và nếu các toán hạng liên quan đến các loại khác nhau, - loại toán hạng, có công suất tối đa (phạm vi giá trị tối đa). Có thể tràn kết quả không được kiểm soát (nó quan trọng!) Những gì có thể dẫn đến lỗi.

    Cần chú ý đặc biệt đến hoạt động phân chia các loại dữ liệu số nguyên. Trong Pascal, hai hoạt động phân chia được cho phép, tương ứng được chỉ định "/" div.. Bạn cần biết rằng kết quả phân chia "/" không phải là toàn bộ, mà là tổng số (Điều này là đúng, ngay cả khi bạn chia 8 đến 2, I.E. 8/2 \u003d 4.0). Division Div là. phân khu Integer.. Loại kết quả là một tổng thể.

    Mô tả các loại dữ liệu số (hợp lệ) Pascal

    Một số lượng dữ liệu đáng kể bao gồm một tập hợp con của các số thực, có thể được biểu diễn trong cái gọi là điểm nổi và số lượng số cố định. Điểm nổi Mỗi loại dữ liệu số được biểu diễn dưới dạng hai nhóm số. Nhóm số đầu tiên được gọi là Mantissa, thứ hai. Nói chung, một loại dữ liệu số trong biểu mẫu dấu phẩy động có thể được gửi như sau: X \u003d (+ - -) MP (+ | -) r, trong đó M là số Mantissa; R là thứ tự của số (r là một số nguyên); P là cơ sở của hệ thống số. Ví dụ: đối với một cơ sở thập phân, bản trình bày 2E-1 (tại đây e là nền tảng của hệ số thập phân) sẽ được xem: 2 * 10 -1 \u003d 0,2 và biểu diễn 1.234e5 sẽ tương ứng với: 1.234 * 10 5 \u003d 123400.0.

    Các loại số thực sau được sử dụng trong Pascal, xác định một số tùy ý chỉ với một số độ chính xác hữu hạn tùy thuộc vào định dạng bên trong của số thực:

    Khi mô tả loại biến thực có thực trong bộ nhớ của máy tính, một biến là một kích thước thay đổi là 4 byte. Đồng thời, 3 byte sẽ được đưa ra dưới Mantissa, và một - theo thứ tự.

    Các thao tác sau có thể được thực hiện trên các loại dữ liệu số hợp lệ:

    • Môn số học:
      cộng (+);
      trừ (-);
      phép nhân(*);
      phân chia (/);
      tập thể dục;
      Unary plus (+);
      Trừ unary (-).
    • Hoạt động mối quan hệ:
      Tỷ lệ bất bình đẳng (<>);
      Tỷ lệ ít hơn (<);
      tỷ lệ nhiều hơn (\u003e);
      Tỷ lệ không ít hơn (\u003e \u003d);
      Không có thêm thái độ (<=).

    Như bạn có thể thấy, Pascal được đặc trưng bởi một phạm vi thực sự của các loại thực, nhưng truy cập vào các loại dữ liệu số Độc thân, gấp đôi.Đa thế hệ Nó chỉ có thể với các chế độ biên dịch đặc biệt. Các loại dữ liệu số này được tính trên hỗ trợ phần cứng cho số học dấu phẩy động và để sử dụng hiệu quả của chúng trong PC nên bao gồm bộ đồng xử lý toán học.

    Vị trí đặc biệt trong Pascal có một loại dữ liệu số comp.được hiểu là một số thực mà không có các bộ phận theo cấp số nhân và phân số. Thực ra, comp. - Đây là một số nguyên "lớn" với một dấu hiệu giữ lại 19..20 số thập phân có ý nghĩa. Đồng thời, một loại dữ liệu số comp. Biểu thức hoàn toàn tương thích với các loại thực khác: Tất cả các thao tác thực đều được xác định trên nó, nó có thể được sử dụng như một đối số của các hàm toán học, v.v.

    Trên chuyển đổi các loại dữ liệu số của Pascal

    Trong Pascal, Implicit (Tự động) chuyển đổi của các loại dữ liệu số gần như không thể. Ngoại lệ chỉ được thực hiện cho loại số nguyênđược phép sử dụng trong các biểu thức của loại thực tế. Ví dụ: nếu các biến được mô tả như sau:

    Var x: số nguyên; Y: THẬT;

    Sau đó, nhà điều hành.

    nó sẽ được xác định về mặt cú pháp, mặc dù nó là một biểu thức số nguyên ở bên phải của dấu hiệu gán và bên trái là một biến thực, trình biên dịch sẽ tự động chuyển đổi các loại dữ liệu số. Chuyển đổi ngược tự động loại thực tế Trong loại. số nguyên Trong Pascal, nó là không thể. Nhớ lại Có bao nhiêu byte được phân bổ để nhập các biến số nguyênthực tế: Đối với kiểu dữ liệu số nguyên số nguyên Có 2 byte bộ nhớ, và dưới thực tế - 6 byte. Để chuyển đổi. thực tế trong số nguyên Có hai tính năng tích hợp: tròn(x) Làm tròn X Real X đến toàn bộ gần nhất, trunc.(x) cắt ngắn một số thực bằng cách loại bỏ phần phân số.