Biến x có thể nhận giá trị -5 115 20

Academia.edu no longer supports Internet Explorer.

To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.

Nguồn: “A real-time revolution will up-end the practice of macroeconomics”, The Economist, 23/10/2021.

Biên dịch: Phan Nguyên

Đại dịch đã thúc đẩy sự chuyển hướng sang dữ liệu mới và phân tích nhanh.

Có ai thực sự hiểu những gì đang diễn ra trong nền kinh tế thế giới? Đại dịch đã khiến nhiều nhà quan sát bối rối. Ít ai dự đoán được giá dầu lên mức 80 đô la, chưa nói đến các đội tàu container  đang chờ bên ngoài các cảng của California và Trung Quốc. Khi Covid-19 xuất hiện vào năm 2020, các nhà kinh tế đã dự báo quá cao tỷ lệ thất nghiệp vào cuối năm. Hiện tại, giá cả đang tăng nhanh hơn dự kiến ​​ và không ai dám chắc liệu lạm phát và tiền lương  có tăng cao hay không. Bất chấp tất cả các phương trình và lý thuyết của họ, các nhà kinh tế học thường vẫn dò dẫm trong bóng tối, với quá ít thông tin để họ có thể dựa vào  và chọn ra các chính sách tối đa hóa việc làm và tăng trưởng.

Tuy nhiên, như chúng tôi báo cáo trong tuần này, thời kỳ hoang dã đang bắt đầu nhường chỗ  cho một giai đoạn khai minh lớn hơn. Thế giới đang sắp sửa bước vào một cuộc cách mạng thời gian thực về kinh tế, khi chất lượng và tính kịp thời của thông tin được thay đổi. Các công ty lớn  từ Amazon đến Netflix  đã sử dụng dữ liệu tức thì  để theo dõi việc giao hàng tạp hóa  và số lượng khán giả dán mắt vào phim “Trò chơi con mực”. Đại dịch đã khiến các chính phủ và ngân hàng trung ương phải thử nghiệm, từ việc giám sát việc đặt chỗ nhà hàng  đến theo dõi các khoản thanh toán bằng thẻ. Các kết quả vẫn còn thô sơ, nhưng khi các thiết bị kỹ thuật số, cảm biến và thanh toán nhanh trở nên phổ biến, khả năng quan sát nền kinh tế một cách chính xác và nhanh chóng  sẽ được cải thiện. Điều đó mở ra triển vọng ra quyết định tốt hơn  trong khu vực công, cũng như cám dỗ khiến các chính phủ muốn can thiệp.

Mong muốn có dữ liệu kinh tế tốt hơn là điều không có gì mới. Các ước tính GNP của Mỹ bắt đầu từ năm 1934  và ban đầu có độ trễ thời gian 13 tháng. Hồi những năm 1950, chàng thanh niên Alan Greenspan [sau này là chủ tịch Cục Dự trữ Liên bang] đã theo dõi lưu lượng xe ô tô chở hàng  để đưa ra những ước tính ban đầu về sản lượng thép. Kể từ khi Walmart đi tiên phong  trong quản lý chuỗi cung ứng vào những năm 1980, các ông chủ của khu vực tư nhân đã coi dữ liệu kịp thời  là một lợi thế cạnh tranh. Nhưng khu vực công đã chậm đổi mới cách thức hoạt động. Các số liệu chính thức mà các nhà kinh tế theo dõi, ví dụ như GDP hoặc việc làm, có độ trễ hàng tuần hoặc hàng tháng, và thường được sửa đổi đáng kể. Năng suất cần nhiều năm mới được tính toán chính xác. Cũng không có gì là quá khi nói rằng  các ngân hàng trung ương đang bay mà không thấy đường.

Dữ liệu kém và trễ có thể dẫn đến lỗi chính sách, gây thiệt hại hàng triệu việc làm và hàng nghìn tỷ đô la sản lượng bị mất. Cuộc khủng hoảng tài chính sẽ ít có hại hơn rất nhiều  nếu Cục Dự trữ Liên bang cắt giảm lãi suất xuống gần bằng 0  vào tháng 12 năm 2007, khi nước Mỹ đã bước vào suy thoái, thay vì vào tháng 12 năm 2008, khi các nhà kinh tế cuối cùng nhìn thấy điều đó trong các số liệu. Dữ liệu chắp vá về một nền kinh tế phi chính thức rộng lớn  và các ngân hàng kém cỏi  đã khiến các nhà hoạch định chính sách Ấn Độ gặp khó khăn hơn  trong việc chấm dứt một thập kỷ mất mát do tăng trưởng thấp của nước này. Ngân hàng Trung ương châu Âu đã tăng lãi suất một cách sai lầm vào năm 2011  trong bối cảnh lạm phát tạm thời bùng nổ, đẩy khu vực đồng euro trở lại suy thoái. Hiện nay, Ngân hàng Trung ương Anh có thể sắp mắc một sai lầm tương tự.

Tuy nhiên, đại dịch đã trở thành chất xúc tác cho thay đổi. Không có thời gian chờ đợi các cuộc khảo sát chính thức  để biết ảnh hưởng của virus hoặc các đợt phong tỏa, các chính phủ và ngân hàng trung ương đã thử nghiệm  bằng cách theo dõi điện thoại di động, thanh toán không tiếp xúc  và việc sử dụng động cơ máy bay theo thời gian thực. Thay vì nhốt mình trong phòng làm việc nhiều năm  để viết cuốn “Lý thuyết chung” tiếp theo, các nhà kinh tế học ngôi sao ngày nay, chẳng hạn như Raj Chetty tại Đại học Harvard, điều hành các phòng thí nghiệm có đội ngũ nhân viên giỏi  để thu thập dữ liệu. Các công ty như JPMorgan Chase  đã mở kho dữ liệu về số dư ngân hàng và hóa đơn thẻ tín dụng, giúp tiết lộ liệu mọi người đang tiêu tiền hay tiết kiệm.

Những xu hướng này sẽ gia tăng khi công nghệ thâm nhập vào nền kinh tế. Một tỷ lệ chi tiêu lớn hơn đang chuyển sang trực tuyến, và các giao dịch đang được xử lý nhanh hơn. Theo McKinsey, một công ty tư vấn, thanh toán theo thời gian thực đã tăng 41% trong năm 2020  [Ấn Độ có tới 25,6 tỷ giao dịch như vậy]. Ngày càng có nhiều máy móc và đồ vật được trang bị cảm biến, bao gồm cả các container vận chuyển riêng lẻ  có thể giúp chúng ta hiểu rõ hơn tình trạng tắc nghẽn chuỗi cung ứng. Govcoins, hay tiền kỹ thuật số của ngân hàng trung ương, đang được Trung Quốc thử nghiệm  và hơn 50 quốc gia khác xem xét, có thể sớm cung cấp một mỏ vàng chi tiết theo thời gian thực  về cách thức hoạt động của nền kinh tế.

Dữ liệu kịp thời sẽ làm giảm nguy cơ mắc lỗi chính sách. Ví dụ, sẽ dễ dàng hơn khi đánh giá việc sụt giảm hoạt động nào đó  có đang trở thành một cơn suy thoái hay không. Và các đòn bẩy mà chính phủ có thể sử dụng  cũng sẽ được cải thiện. Các ngân hàng trung ương cho rằng  phải mất 18 tháng hoặc hơn  để các điều chỉnh lãi suất có hiệu lực đầy đủ. Tuy nhiên, Hồng Kông đang thử nghiệm việc phát tiền mặt cho dân  thông qua ví kỹ thuật số, và số tiền này sẽ không thể sử dụng  nếu để quá hạn do không được chi tiêu nhanh chóng. Tiền kỹ thuật số của ngân hàng trung ương  có thể cho phép lãi suất giảm xuống sâu dưới mức âm. Dữ liệu tốt trong các cuộc khủng hoảng  có thể cho phép các hỗ trợ được nhắm mục tiêu chính xác hơn. Hãy tưởng tượng  các khoản vay chỉ dành cho các công ty có bảng cân đối kế toán mạnh  nhưng có vấn đề thanh khoản tạm thời. Thay vì các khoản thanh toán phúc lợi toàn dân lãng phí  được thực hiện thông qua các cơ quan quản lý an sinh xã hội, người nghèo có thể được hưởng các khoản thu nhập bổ sung  nếu họ bị mất việc làm, được trả vào ví điện tử  mà không cần bất kỳ thủ tục giấy tờ nào.

Cuộc cách mạng thời gian thực  hứa hẹn sẽ giúp các quyết định kinh tế được đưa ra chính xác, minh bạch  và dựa trên quy tắc hơn. Nhưng nó cũng mang đến những rủi ro. Các chỉ số mới có thể bị hiểu sai: Liệu suy thoái kinh tế toàn cầu đang bắt đầu diễn ra  hay chỉ là việc Uber bị mất thị phần? Chúng không mang tính đại diện hơn  hoặc hoàn toàn không gây nhận định thiên lệch  như các cuộc điều tra công phu của các cơ quan thống kê. Các công ty lớn có thể tích trữ dữ liệu, mang lại cho họ một lợi thế không công bằng. Các công ty tư nhân như Facebook, vốn đã ra mắt một ví kỹ thuật số trong tuần này, một ngày nào đó có thể có cái nhìn sâu sắc hơn  về chi tiêu của người tiêu dùng  so với Cục Dự trữ liên bang.

Mối nguy hiểm lớn nhất là sự kiêu ngạo. Với khả năng nhìn thấy bức tranh toàn cảnh về nền kinh tế, các chính trị gia và quan chức  sẽ bị cám dỗ trong việc tưởng tượng rằng  họ có thể nhìn xa về tương lai, hoặc muốn nhào nặn xã hội theo ý muốn của họ  nhằm tạo lợi thế cho các nhóm cụ thể. Đây là giấc mơ của Đảng Cộng sản Trung Quốc, đảng đang tìm cách tiến hành một hình thức kế hoạch hóa tập trung kỹ thuật số.

Trên thực tế, không có lượng dữ liệu nào đủ lớn  để có thể dự đoán tương lai một cách đáng tin cậy. Các nền kinh tế năng động và phức tạp  không chỉ phụ thuộc vào các doanh nghiệp lớn  mà còn dựa vào hành vi tự phát  của hàng triệu công ty và người tiêu dùng độc lập. Kinh tế học tức thời  không phải chỉ là về khả năng thấu thị hay toàn trí. Thay vào đó, lợi ích tiềm tàng của nó là một điều thân thuộc  nhưng có tính cách mạng: khả năng ra quyết định tốt hơn, kịp thời hơn  và hợp lý hơn.

121314Integer];ChDir[St: String];151617Chr [I: Integer];Circle [X, Y: Integer;Radius: Word].ClearDevice;ClearViewPort;Close ?[Var F: File];18CloseGraph;19ClrEol;20ClrScr;21Concat[St1, St2,…,StN]:String;22Copy[St: String; I, N:Integer]: String ;2324Có[R: Real]: Real;Cseg: Word;25Dec[Var X: Scalar; N:LongInt];26Delay[Ms: Word];27Delete[St: String; I, N:Integer];158System ChDir thay đổi thư mục hiện hành sangthư mục có đường dẫn S.System Chr trả về kí tự ASCII tương ứng với I.Graph Circle vẽ đường tròn có tâm ở tọa độ [X,Y], bán kính là Radius.Graph BClearDevice xóa màn hình đồ họa.Graph ClearViewPort xóa ViewPort hiện hành.System Close đẩy vùng đệm cho tập tin F ra đĩa,sau đó đóng tập tin.Graph CloseGraph khôi phục kiểu màn hìnhtrước khi khởi tạo đồ họa. Thủ tục nàycùng giải tỏa vùng nhớ do hệ thống đồhọa sử dụng.crtClrEol xóa toàn bộ các kí tự kể từ vj trí contrỏ tới cuối dòng trong màn hình văn bản.Mọi vị trí của kí tự đã bị xóa được để trốngvới thuộc tính văn bản hiện hành.CrtClrScr xóa toàn bộ màn hình và và đua contrỏ về vị trí [1, 1] trên màn hình.System Concat nối các chuỗi chỉ định trongtham biến và trả về chuỗi kết quả. Nếuchiều dài của chuỗi kết quả lớn hơn 225,Turbo Pascal sẽ báo lỗi RunTime.System Copy trả về một chuỗi con trich từ chuỗiSt, bắt đầu ở kí tự thứ I và có độ dài N kítự.System Có trả về Cosine của góc R.System Cseg trả về địa chỉ đoạn cảu đoạn mãchương trình.System CDec giảm biến X đi N. Nếu không có X,N sẽ bị giảm đi 1. Điều đó có nghĩa làDec [X] tương đương với X:= X-1, Dec[X, N] tương đương với X:=X-nCrtDelay tạm treo chương trình trong Msmili giây.System Delete xóa N kí tự bắt đầu từ vị trí I rakhỏi chuỗi St.Võ Văn Dũng - Ngôn ngữ lập trình Pascal. 28DelLine ;29DetectGraph[Var Gd,Gm:Integer];30DiskFree[Drive: Word]:LongInt;Dos31DiskSize[Drive: Word]:LongInt;Dos32Dispos[P: Pointer];33DosExitCode: Word;Dos34DosVersion: Word;Dos35DrawPoly[NumPoints:Word; Var PolyPoints];Graph36Dseg: Word;System37Ellipse[X, Y: Integer;StAngle, EndAngle:Word; XRadius, Radius:Word];graph38EnvCount: Integer;Dos39EnvStr[I: Integer]:Integer;Eof[F: File]: Bolean;Dos40CrtGraphSystemSystemDeLine xóa dòng màn hình đang chứacon trỏ. Các dòng phía dưới sẽ cuộn lênmột dòng.DetectGraph phát hiện và trả về trình điềukhiển đồ họa [GD] và kiểu đồ họa [GM]của bộ tương hợp đồ họa đang dùng.DiskFree trả về số bytes còn trống trên ổđĩa chỉ định trong tham biển Drive [Drivebằng 1 cho ổ A, 2 cho ổ B, 0 cho ổ mặcđịnh].DiskSize trả về dung lượng ổ đĩa bằngbytes. Drive xác định ổ đĩa [bằng 1 cho ổA, 2 cho ổ B, 0 cho ổ mặc định].Dispos giải tỏa vùng Heap cấp phát chobiến trỏ. Dispose dung kèm với New.DosExitCode trả về mã lỗi của tiến trìnhcon, [0: chấm dứt bình thường, 1: chấm dứtdo Ctrl-C, 2: Chấm dứt do lỗi thiết bị, 3:chấm dứt do thủ tục Keep].DosVersion trả về số liệu Version của hệđiều hành Dó. Phần chính nằm ở byte cao,phần phụ nằm ở byte thấp.DrawPoly vẽ đa giác có NumPoints điểm.Mảng PolyPoints chứa tọa đọ các điểm củađa giác.Dseg trả địa chỉ đoạn của đoạn dữ liệuchương trình.Ellipse vẽ một hình elip có tâm điểm là[X, Y]. XRadius và YRadius là hai bánkính trục đứng và trục ngang. StAngle làgóc ban đầu, còn EndAngle là góc kếtthúc.EnvCount trả về số lượng chuỗi đượcđịnh nghĩa trong môi trường Dos.EnvStr trả về số lượng chuỗi trong môitrường thứ I.Eof trả về True khi con trỏ tập tin của FVõ Văn Dũng - Ngôn ngữ lập trình Pascal.159 41EoLn[F: Fie]: Bolean;System42Erase[F: File];System43Exec[Path, CmdLine:String];44ExitSystem4546Exp[R: Real]: Real;FExpand[Path: PathStr]:PathStr;SystemDos4748FilePos[F: File]: Integer; SystemFileSize[F: File]: Integer; System49FillElipse[X, Y: Intager;XRadius, YRadius:Word];Graph50FillPoly[NumPoints:Graph160Dosđang ở điểm cuối tập tin.EoLn trả về True khi con trỏ tập tin củaF đang ở cuối dòng hoặc ở cuối tập tin.Erase xóa tập tin F khỏi dĩa và thong tinvề tập tin đo trong thư mục.Exec thực hiện tập tin có tên nằm trongPath với các tham biến dòng lệnh địnhnghĩa trong CmdLine.Exit làm chương trình tránh đi ra khỏikhối lệnh đang thực hiện.Exp trả về e mũ R.FExpand nhận tên tập tin P ở dạng ngắngọn và mở rộng thành tên tệp ở dạng đầyđủ [có luôn tên ổ đĩa trong đường dẫnđó].Giả sử bạn có một chương trình ứngdụng. Nếu bạn muốn biết người dùngđang cài chương trình của mình ở thưmục nào, bạn hãy dùng FExpand để tìmđường dẫn của tập tin chính trongchương trình của bạn [giả sử tập tinchính có tên là Vidu.exe]:FExpand[‘Vidu.exe’];Nếu kết quả cho ra‘C:\Program\Vidu.exe’, thì có nghĩa làchương trình của bạn đang ở trong thưmục ‘C:\Program’.Trả lại vị trí hiện hành của con trỏ tệp F.FileSize trả về kích thước của F tính theobytes. Nếu F là tệp rỗng, FileSize[F] trảvề giá trị 0.Vẽ elip có tâm ở tọa độ [X, Y], với bákính dọc là XRadius, và bán kính nganglà YRadius. Elip được tô màu theo mẫuvà mẫu tô hiện hành, còn màu củađường viền là màu đang thể hiện.FillPoly vẽ đa giác có NumPoints điểm.Võ Văn Dũng - Ngôn ngữ lập trình Pascal. Word; Vả PolyPoints];51FindFirst[Path: PChar;Attr:Word; Var S:SearchRec];dos52FindNext[Var S:SearchRec];Dos53FloodFill[X, Y: Integer;Border: Word];Mảng PolyPoints chứa tọa độ các điểmcủa đa giác.FindFirst trả về thông tin về tập tin tìmđược đầu tiên trong thư mục Path cóthuộc tính giống Attr. Các giá trị chuẩncủa Attr là:ReadOnly = $01Hidden= $02SysFile= $03VolumID = $04Directory = $05Archive= $06AnyFile= $07Kết quả của việc tìm kiếm được trả lạitrong bản ghi S:SearchRec = RecordFill :Array[1…21] OfBytes;Attr :Byte;Time :LongInt;Size :LongInt;Name:String[12];End;Nếu tìm thấy, giá trị của DosError sẽ là0.FindNext trả về thông tin của tập tin tìmđược kế tiếp trong thư mục Path [đãđinh nghĩa trong FindFirst] có thuộctính giống thuộc tính chỉ định trongFindFirst. Nếu tìm thấy, DosError có giátrị bằng 0.Graph FloodFill tô vùng khép kín trên mànhình đồ họa với màu và mẫu tô hiệnhành, miễn là vùng khép kín đó chứa tọaVõ Văn Dũng - Ngôn ngữ lập trình Pascal.161 545556575859606162độ của điểm [X, Y]. Border xác địnhmàu của đường biên và có giá trị từ ođến 15.Flush[Var F: Text];System Flush đẩy ra đĩa tất cả các kết quả đangnằm trong vùng đệm cho tập tin F.Frac[R: Real];System Frac trả về phần lẻ thập phân của R.FreeMem[Var P: Pointer; System FreeMem giải phóng một biến động P^Size: Word];có kích thước Size được chỉ ra.FRearch[Path:Dos FRearch tìm trong danh sách các thưPathStr;DirList:String]:mục nằm trong DirList, tệp tin giốngpathStr;Path. Nếu tìm thấy hàm sẽ trả về chuỗi.ngược lại, hàm sẽ trả vể chuỗi rỗng.FSplit[PathStr; VarDos FSplit hân chia xâu kí tự Path chưa tênDir:DirString;tệp thành 3 xâu kí tự thành phần. Dir làxâu kí tự chứa tên ổ đĩa và đường dẫnđến thư mục chứa tệp. Name là xâu kí tựchứa tên tệp, còn Ext là xâu kí tự chứaphần tên mở rộng của tệp với cả dấuchấm đứng trước. Một trong các tham sốxâu kí tự thành phần có thể rỗng nếuPath không chứa thành phần tương ứngvới nó.GetArcCoords[Vargraph GetArcCoords trả về các tọa độ đã đượcArcCoords:lệnh Arc hay Ellipse trước đó sử dụng. CấuArcCoordsType];trúc của ArcCoordsType như sau:TypeArcCoordsType = RecordX, Y: Integer;XStart, YStart: Integer;XEnd, YEnd: Integer;End;GetAspectRatio[VarGraph GetAspectRatio trả về trong Xasp và YaspXasp, Yasp: Word];độ phân giải của màn hình đồ họa.GetBkColor: Word;Graph GetBkColor trả về chỉ số trong bảng màucủa màu nền hiện hành.GetCBreak: Word;Dos GetCBreak trả về trạng thái hiện hành162Võ Văn Dũng - Ngôn ngữ lập trình Pascal. 63GetColor: Word;64GetDate[Var Year,Month, DayOfWeek:Word];GetDefaultPalette[VarPal: PaletteType];65666768697071của Ctrl-Break kiểm tra trong Dos. KhiBreak là False, Dos kiểm tra Ctrl-Breaktrong qua trình điều chỉnh xuất/nhập,máy in hoặc các thiết bị liên lạc. khiBreak là True, kiểm tra được thiết lwpjtrong toàn hệ thống.Graph GetColor trả về màu vẽ hiện hành trongkiểu đồ họa.Dos GetDay trả về ngày tháng hiện hành củahệ thống.Graph GetDefaultPalette trả về trong Pal bảngmàu mặc định cho trình điều khiển đồhọa hiện hành.GetDir[D: Byte; Vả St:System GetDir lấy thư mục cho ổ đĩa được chỉString];định trong D. Thư mục được trả vềtrong S. Nếu D là 0, GetDir sẽ tìm trongổ đĩa mặc định.GetDriverName: String;Graph GetDriverName trả về tên của chương trìnhđồ họa hiện hành.GetEnv[EnvVar: String]:Dos GetEnv trả về chuỗi môi trường cho biếnString;môi trường được chỉ chỉ định trongGetEnv.GetFAttr[Var F:File; VarDos GetFAttr trả về thuộc tính của tập tin F.Attr: Word;Tước khi gọi thủ tục này, F phải được gánnhưng không mở.GetFillPattern[VarGraph GetFillPattern trả về trong FillPattern địnhFillPattern: FillPatternnghĩa của mẫu tô hiện hành. Cấu trúc củaType];FillPattern như sau:TypeFillPatternType = Array[ 1…8]Of Byte;GetFillSettings[VarGraph GetFillSettings trả về trong FillSettingsFillSettings:FillSettingsTmàu và mẫu tô hiện hành. Cấu trúc củaype]FillSettingsType:TypeVõ Văn Dũng - Ngôn ngữ lập trình Pascal.163 72GetFTime[Var F: File;Var Time: LongInt];73GetGraphMode: Integer;74GetImage[x1, y2, x2, y2:Integer; Var Bitmap];75GetIntVec[IntNo: Byte;Var Vector: Poiner];76GetLineSettings[VarLineInfo:LineSettingsType];77GetMaxClolor: Word;78GetMaxMode: Word;79GetMaxX: Integer;80GetMaxY: Integer;81GetMem[Var P: Pointer;164FillSettingsType = Record;Pattern: Word;Color: Word;End;Dos GetFTime trả về trong Time thời gian vàngày tháng của tệp được ghi vào lần cuốivừa qua của biến tệp F. Biến Time là giá trịdồn và phải được kéo giản bằng thủ tụcUnPackTime.Graph GetGraphMode trả về kiểu đồ họa hiệnhành.Graph GetImage cất giữ phần chữ nhật trên mànhình đồ họa được xác định bởi [x1, y1] và[x2, y2] trong biến không định kiểuBitmap.Dos GetIntVec trả về trong Vector nội dunghiện hành của Vector ngắt có số hiệuIntNo.Graph GetLineSettings trả về trong LineInfo giátrị hiện hành của dạng đường, mẫu, bề dày.Cấu trúc của LineSettingsType như sau:TypeLineSettingsType = RecordLineStryle: Word;Patern: Word;Thickness: Word;End;Graph GetMaxClolor trả về giá trị cao nhất đạidiện cho màu trong bảng màu hiện hành.Graph GetMaxMode trả về con số cho biết kiểuđồ họa có độ phân giải cao nhất bộ phốihợp màn hình đang dùng.Graph GetMaxX trả về tọa độ ngang vao nhất củakiểu đồ họa hiện hành.Graph GetMaxY trả về tọa độ dọc cao nhất củakiểu đồ họa hiện hành.System GetMem để dành 1 bytes và cất dữ địaVõ Văn Dũng - Ngôn ngữ lập trình Pascal. 8283I: Integer];GetModeName[ModeNumber: Word]:String;GetModeRange[GD:Integer, Var LoMode,HiMode: Integer];GraphGraph84GetPalette[Var P:PaletteType];Graph85GetPaletteSize: Word;Graph86GetPixel[X, Y:Integer]:Word;GetTextSettings[VarTextSettingsType];graph8788GetTime[Var Hour,Minute, Second, Sec100:Word];graphDoschỉ bắt đầu trong biến P.GetModeName trả về chuỗi mô tả kiểu đồhọa tương ứng với ModeNumber.GetModeRange trả về kiểu phân giải thấpnhất [LoMode] và cao nhất [HiMode] củachương trình điều khiển đồ họa ứng vớiGD.GetPalette trả về trong trong P bảng màuhiện hành. Cấu trúc của PaletteType nhưsau:ConstMaxColor = 15;TypePaletteType = Record;Size: Byte;Color:Array[0...MaxColor] OfShortInt;End;GetPaletteSize trả lại kích thước của màutô trong bảng.GetPixel trả về màu của điểm ảnh ở tọa độ[X, Y]GetTextSettings trả về trong TextSettingscác thiết lập của văn bản hiện hành. Cấutrúc của TextSettingsType là:TypeTextSettingsType = RecordFont : Word;Direction: Word;Charsize: Word;Horiz: Word;Vert: Word;End;GetTime trả về giờ hệ thống.Võ Văn Dũng - Ngôn ngữ lập trình Pascal.165 89GetVerify[ VarVerify:Boolean];Dos90GetViewSettings[VarViewPort:ViewPortType];Graph91GetX: Integer;Graph92GetY: Integer;Graph93GotoXY[X, Y: Integer];94GrphDefault;Graph95Graph96GraphErrorMsg[Code:Integer]: String;GraphResult: Integer;979899Halt;Hi[I: Integer]:Byte;HighVideo;SystemSystemCrtCrtGraph100 ImageSize[x1, y1, x2, y2: GraphInteger];101 Inc[Var X;N: LongInt];System102 InitGraph[Var GD:GraphInteger; Var GM: Integer;DriverPath: String];166GetVerify trả về trạng thái ghi đĩa của Dos.Khi Verify là True, Dos kiểm tra tất cacrcác thao tác ghi trên đĩa.GetViewSettings trr về trong ViewPortcách bố trí của ViewPort hiện hành. Cấutrúc của ViewPort- Type là:TypeViewPortType = Record;X1, y1, x2, y2: Integer;Clip: Boolean;End;GetX trả về tọa độ ngang của vị trí hiệnhành.GetY trả về tọa độ ngang của vị trí hiệnhành.GotoXY đua con trỏ màn hình tới tọa độ[X, Y]GrphDefault tái lập giá trị mặc định chocác thiếc lập đồ họa.GraphErrorMsg trả về thông báo lỗi ứngvới điều kiện lỗi trong Code.GraphResult trả về mã lỗi của thủ tục đồhọa sau cũng.Halt kết thúc chương trình.Hi trả về byte cao trong số nguyên I.HighVideo cho phép hiển thị với độ chóicao.ImageSize trả về số bytes cần thiết để cấtdữ Bitmap cho phần màn hình được xácđịnh bởi[x1, y1] và[x2, y2].Inc tăng giá trị X lên N. Nếu bạn khôngchỉ định giá trị cho N, N sẽ tự động nhậngiá trị là 1, khi đó Inc[X] sẽ tawmg giátrị của Xleen 1 đơn vị.InitGraph khởi tạo môi trường đồ họa theotrình điều khiển GD và GM. Nếu GD bằng0, thủ tục tự động phát hiện bộ phối hợpVõ Văn Dũng - Ngôn ngữ lập trình Pascal. 103104105106107108109110111112113114115màn hình và lập kiểu có độ phân giải caonhất. Thủ tục sẽ tìm các tập tin BGI trongđường dẫn DriverPath.Insert[Source: String; Var System Insert chèn chuỗi Source vào chuỗiTarget: String; Index:Target ở vị crttrí Index.Integer];InsLine;CrtChèn dòng trống vào vị trí hiện hành củacon trỏ trên màn hình.InstallUserDriver[name: Graph InstallUserDriver cài đặt trình điều khiểnString; AutoDetectPtr:đồ họa không phải của Borland. Name làpointer]: Integer;tên tập tin chứa trình điềukhiển.AutoDetectPtr là con trỏ tới hàm tựđộng phát hiện [tùy chọn]. Trình điều khiểnphải có dạng BGI.InstallUserFont[FontFile Graph InstallUserFont cho phép người dung càiName: String]: Integer;đặt fot không phải của Borland. Tên tập tinchứa font được chỉ định bằngFontFileName.Int[R: Real]: Integer;System Int trả về phần nguyên của số thực R.Intr[Fune: Byte; VarDos Intr gọi ngắt số hiệu Fune của Bios vớiRegs: Register];các thanh ghi được định nghĩa qua Regs.IOResult: Word;System IOResult trả về mã lỗi khi thực hiện cácthao tác vào ra. Nếu IOResult khác 0, đãxãy ra lỗi.Keep[ExitCode: Word];Dos Keep kết thúc chương trình nhưng vẫngiữ nó thường trú. Thủ tục truyềnExitCode làm mã lỗi chuẩn của Dos.KeyPressed: Boolean;CrtKeyPressed trả về True khi có một phímdược nhắn.Length[St: String]:System Length trả về chiều dài của chuỗi St.Integer;Line[x1, y1, x2, y2:Graph Line vẽ đường thẳng từ [x1, y1] đến [x2,Integer];y2].LineRel[Dx, Dy: Integer]; Graph LineRel vẽ đường thẳng từ con trỏ đồhọa hiện thời tới thời điểm mới có tọa độ[x + Dx, y + Dy]LineTo[X, Y: Integer];Graph LineTo vẽ đường thẳng từ con trỏ đồVõ Văn Dũng - Ngôn ngữ lập trình Pascal.167 116 Ln[Var R: Real]: Real;117 Lo[I: Integer]: Byte;118 LowVideo;SystemSystemSystem119 Mark[P: Pointer];System120 MaxAvail: LongInt;System121 MemAvail: LongInt;System122 MkDir[St: String];System123 Move[Var Source, Dét; I: SystemWord];124 MoveRel[Dx, Dy:GraphInteger];125 MoveTo[X, Y: Integer];126 MsDos[Var Regs:Register];127 New[Var P: Pointer];128 NormVideo;graphDosSystemCrt129 NoSound;Crt130 Odd[I: Integer]: Boolean; System

131 Ofs[hoặc Runction>]: Integer;132 Ord[S: Scalar]: Integer;System168họa hiện thời tới thời điểm mới có tọa độ[X, Y].Ln trả về logarit tự nhiên của R.Lo trả về byte thấp nhất của số nguyên.LowVideo thiết lập độ chói thấp cho mànhình.Mark đánh dấu địa chỉ đính Heap trongcon trỏ P.MaxAvail trả về kích thước khối lớn nhấtcủa vùng nhớ chưa cấp phát của Heap.MemAvail trả về tổng số vùng nhớ chưacấp phát của Heap.MkDir tạo thư mục mới chỉ định trongSt.Move chép I byte kề nhau và liên tục từnơi nguồ đến nơi đích.MoveRel di chuyển con trỏ đồ họa từ vịtrí hiện tại đến điểm mới có tọa độ [x+Dx, y + Dy].MoveTo di chuyển con trỏ đồ họa từ vịtrí hiện tại đến điểm mới có tọa độ [X,Y].MsDos gọi phục vụ Dos với tập trị củacác thanh ghi trong Regs.New cấp phát vùng Heap cho con trỏ P.Sau khi cấp phát, biến đó được thamchiếu bằng P.NormVideo khôi phục thuộc tính màn hìnhmặc định theo các thuộc tính đã hiện hữu ởvị trí của con trỏ khi thực hiện chươngtrình.NoSound tắ loa phát âm thanh.Odd trả về True khi I là số lẻ và Falsekhi I là chẵn.Ofs trả về offset địa chỉ bộ nhớ của biến,thủ tục hay hàm.Ord trả về giá trị nguyên của biến vôhướng.Võ Văn Dũng - Ngôn ngữ lập trình Pascal.

Video liên quan

Chủ Đề