Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 105 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
105
Dung lượng
703,87 KB
Nội dung
đạI họctháinguyên
trờng đạIhọc s phạm
Khoa Hoáhọc
TS Mai Xuân Trờng
D : 0912.739.257 CQ : 0280.3856.853 NR 0280.3759.402
Bài giảng
Tin họcứngdụng trong hoá học
(2 tín chỉ)
(TI LIU LU HNH NI B)
Thái nguyên, 2011
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
1
Mở đầu
Tin họctronghóahọc (chemometric) hay hoátin (computational
chemistry) là danh từ dùng để chỉ một lĩnh vực khoa học kết hợp toán
học - mà chủ yếu là phơng pháp tính - với máy tính để giải các bài toán hoá học.
Hoá tin bao giờ cũng đợc cấu thành bởi ba yếu tố: thuật toán (algorithm), đoạn
chơng trình máy tính (computer code) và nội dunghoá học.
Tin họcứngdụngtronghóahọc có thể hiểu là các phơng pháp tính toán trên
máy tính để giải các bài toán hoáhọc và không có tính đặc thù đầy đủ. Tức là có thể
có những phơng pháp chỉ dùng để giải các bài toán hoá học, thờng là những phơng
pháp tổ hợp cấu thành bài toán lớn nh hoá lợng tử (quantum chemistry), mô phỏng
động lực phân tử lợng tử (quantum molecular dynamics simulation), và có những
phơng pháp không chỉ đợcdùngtronghoáhọc mà còn dùngtrong các lĩnh vực
khác. Các phơng pháp này, đặc biệt là trong việc khai thác dữ liệu (datamining),
thờng là những phơng pháp đơn, không quá phức tạp và xuất phát từ những bài toán
cơ bản trong toán học về phơng pháp tính nh: phơng pháp hồi quy phi tuyến, giải
hệ phơng trình vi phân, lọc Kalman (Kalman filter), mạng nơron,
Những năm gần đây, sự phát triển các ngôn ngữ lập trình, thuật toán, các
bài toán hoá học, các phần mềm tính toán ứngdụngtronghoáhọc và số lợng
ngời sử dụng ngày càng nhiều. Để phục vụ công tác giảng dạy và học tập tinhọc
ứng dụng trong hóa học, chúng tôi đã biên soạn bàigiảng "Tin họcứngdụngtrong
hoá học". Hiện nay có rất nhiều thuật toán, phần mềm cũng nh các bài toán hoá
tin ứngdụng đã đợc tải lên mạng INTERNET, bạn có thể tìm thấy trên mạng các
thuật toán dới dạng mã nguồn mở cho hầu hết các bài toán ứngdụngtronghoá
học thì việc thay đổi cách học thực là rất cấp thiết. Tuy nhiên để có thể hiểu đ
ợc
các chơng trình đó ta cần phải hiểu các khái niệm cơ bản của tinhọcdùngtrong
hoá học nh các học thuật toán, những lệnh rất cơ bản của ngôn ngữ lập trình đó.
Vì vậy giáo trình này chủ yếu cung cấp những khái niệm cơ bản nhất của
các ngôn ngữ lập trình để ngời học có thể lập trình những chơng trình đơn giản
hay có thể sử dụng các chơng trình nguồn mở đã có.
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
2
Chơng 1 : mở đầu
1.1. các khái niệm cơ bản
1.1.1. Thông tin
Mọi yếu tố có thể mang lại sự hiểu biết đều đợc gọi là thông tin. Thông
tin đợc thể hiện dới nhiều dạng thức khác nhau. Thông tin về một đối tợng
chính là các dữ kiện về đối tợng đó, càng nhiều thông tin thì độ bất định của đối
tợng càng giảm xuống.
1.1.2. Đơn vị đo thông tin
Đơn vị đo thông tintrong máy tính đợc gọi là bít. 1 bít mang lợng thông
tin tơng ứng với 1 trong 2 khả năng có thể xảy ra: 1 (tơng ứng với có điện hay
bóng đèn sáng) hoặc 0 (tơng ứng với không có điện (bóng điện tắt) ).
1 byte = 8 bít 1KB = 1024 byte 1MB = 1024KB
1GB = 1024MB
1.1.3. Xử lý thông tin bằng máy tính điện tử
Máy tính sẽ không làm gì nếu không có tác động của con ngời. Ngời sử
dụng phải nhập số liệu, bấm các phím thực hiện phép toán cũng nh yêu cầu
hiển thị kết quả hoặc lu trữ kết quả.
1.2. Cấu trúc hệ xử lý thông tin tự động
T
hông tin vào Quá trình xử lý Kết quả
Quy tắc theo đó quá trình xử lý đợc thực hiện (do con ngời đặt ra)
Thiết bị vào
Bàn phím
Chuột
ổ đĩa
Máy Scan
CPU
Bộ nhớ RAM
Bộ nhớ ROM
Bộ xử lý trung tâm
Bộ số học logic
Bộ điều khiển
Thiết bị ra
Màn hình
Máy in
ổ đĩa
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
3
Các thiết vào và các thiết ra gọi là các thiết bị ngoại vi, tùy theo yêu cầu
mà ta có thể thêm, bớt các thiết bị ngoại vi cho phù hợp.
Máy tính hoạt động dựa trên nguyên lý cơ bản Von Neumann. Các lệnh và
dữ liệu cùng đợc lu trữ trong bộ nhớ đợc tạo bởi các từ địa chỉ dựa trên 2 yếu
tố then chốt :
+ Điều khiển bằng chơng trình: Máy tính hoạt động theo sự chỉ dẫn, điều
khiển của chơng trình đợc lu trữ trong bộ nhớ của nó. Các bớc tác động
đợc tiến hành theo các câu lệnh của chơng trình. Chơng trình chỉ dẫn cho
máy tính biết phải làm gì và phải làm nh thế nào.
+ Truy xuất theo địa chỉ: Dữ liệu theo nghĩa rộng (dữ liệu vào, kết quả
trung gian, kết quả cuối cùng, chơng trình, dữ liệu ra, . . ) đợc lu trữ trong
RAM tại một vùng nhớ đợc định vị bằng các số thứ tự đợc gọi là địa chỉ. Dữ
liệu đợc chỉ định và đợc truy cập (đọc hay ghi) theo địa chỉ ô nhớ chứa chúng.
1.3. phần mềm
Trong tin học, thuật ngữ phần mềm đợcdùng để nói về các chơng trình
dùng để điều khiển hoạt động của máy tính, xử lý dữ liệu phục vụ cho một ứng
dụng cụ thể trong hoạt động kinh tế, sản xuất, kinh doanh, . . . Ví dụ: các chơng
trình nạp sẵn trong ROM, các chơng trình phần mềm do ngời lập trình viết.
Nếu ta đa ra khỏi máy tình toàn bộ các chơng trình nạp sẵn trong nó, kể
cả các chơng trình ghi sẵn trong ROM thì những gì còn lại đợc gọi là phần
cứng của máy tính. Nh vậy, thuật ngữ phần cứng đợcdùng để chỉ linh kiện,
chi tiết, thiết bị lắp ráp thành máy tính.
Các chuyên gia phần cứng tập trung vào việc thu nhỏ kích thớc, khối
lợng các linh kiện điện tử, cơ khí, bộ nhớ nhằm làm giảm năng lợng tiêu hao
cho máy tính, tăng khả năng lu trữ và vận tốc tính toán.
Các chuyên gia phần mềm tập trung vào việc xây dựng hoạt động chính
xác, khoa học và tiện lợi trên cơ sở phần khai thác tối đa khả năng của máy tính
phục vụ cho lợi ích của con ngời. Sự phối hợp chặt chẽ giữa hai lĩnh vực phần
cứng và phần mềm là động lực thúc đẩy sự phát triển của tinhọc
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
4
Chơng 2 : một số ngôn ngữ lập trình
2.1. Mở đầu
Các ngôn ngữ lập trình là phơng tiện giao tiếp giữa ngời và máy tính.
Nh ta đã biết, muốn yêu cầu máy tính giải một bài toán nào đó, ví dụ tính giá trị
của biểu thức a = (b + c).(d + e) hoặc a = b + c.d + e chúng ta phải viết một
chơng trình quy định thật rõ trật tự thực hiện các thao tác để đợc kết quả mong
muốn. Nh vậy chơng trình máy tính chính là một thuật giải đợc viết dới
dạng một quy định bằng một ngôn ngữ. Ngôn ngữ dùng để viết chơng trình
máy tính đợc gọi là ngôn ngữ lập trình.
Ví dụ: Để tính biểu thức a = (b + c).(d + e) thì quá trình thực hiện việc tính
toán bằng chơng trình máy tính nh sau:
Bớc 1. Đọc giá trị b ở bảng 1.
Bớc 2: Đọc giá trị c ở bảng 2, cộng b với c.
Bớc 3: Ghi giá trị tổng (b + c) vào bảng 5.
Bớc 4: Đọc giá trị d ở bảng 3.
Bớc 5: Đọc giá trị e ở bảng 4, cộng d với e.
Bớc 6: Ghi giá trị tổng (d + e) ra bảng 6.
Bớc 7: lấy giá trị ở bảng 5 nhân với giá trị ở bảng 6.
Bớc 8: ghi giá trị tích (b + c).(d + e) ra bảng 7 và gán cho giá trị a.
Bớc 9: Viết giá trị a ở bảng 7.
Bớc 10. Dừng chơng trình.
Các bảng 3, 4, 6, 7 có thể dùng lại bảng 1, 2 bằng cách xóa đi (ghi đè lên)
sau khi đã dùng xong.
Thuật giải (các bớc) ở trên chỉ để con ngời thực hiện, muốn cho máy
tính có thể hiểu và thực hiện đợcđúng ý đồ của chúng ta cần phải diễn đạt
thuật giải đã cho dới một dạng quy định nào đó. Một trong số các dạng quy
định đó là hợp ngữ. Hợp ngữ bao gồm tên các câu lệnh và các quy tắc viết các
câu lệnh để máy tính hiểu đợc. Tên các cấu lệnh thờng đợc viết dới dạng
tiếng anh nh: READ, WRITE, INPUT, ADD, PRINT, . . .
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
5
Ngoài ra nh ta đã biết, khi nạp chơng trình vào bộ nhớ chúng ta phải
dành chỗ lu trữ các giá trị của số liệu. Ví dụ trên là các giá trị: a, b, c, d, e.
INPUT b (nhập giá trị b từ bàn phím, ghi vào ô nhớ 1)
INPUT c (nhập giá trị c từ bàn phím, ghi vào ô nhớ 2)
INPUT d (nhập giá trị d từ bàn phím, ghi vào ô nhớ 3)
INPUT e (nhập giá trị e từ bàn phím, ghi vào ô nhớ 4)
LOAD b (đọc b ở vào ô nhớ 1)
ADD c (cộng c ở ô nhớ 2 vào ô nhớ 1, kết quả giữ ở ô nhớ 1)
MOVE a (ghi kết quả ô nhớ 1vào ô nhớ 5)
LOAD d (đọc d ở ô nhớ 3)
ADD e (cộng e ở ô nhớ 4 vào ô nhớ 3, kết quả giữ ở ô nhớ 3)
MULT a (nhân kết quả ô nhớ 3 với ô nhớ 5, kết quả giữ ở ô nhớ 3)
MOVE a (ghi kết quả từ ô nhớ 3 vào ô nhớ 5)
PRINT a (In ô nhớ 5 ra màn hình hoặc máy in)
HALT (Dừng chơng trình)
Chơng trình này phải sử dụng các ô nhớ (bảng) để lu giữ số liệu, cụ thể
là:
1 (ô nhớ dành cho a)
2 (ô nhớ dành cho b)
3 (ô nhớ dành cho c)
4 (ô nhớ dành cho d)
5 (ô nhớ dành cho e)
Chơng trình hợp ngữ trên nhận các giá trị b, c, d, e do ngời sử dụng
nhập từ bàn phím của máy tính rồi tính và hiển thị giá trị của biểu thức ra màn
hình.
Ngôn ngữ máy: Sau khi nạp chơng trình hợp ngữ trên vào máy tính,
trong máy sẽ diễn ra hai quá trình sau đây:
+ Dịch chơng trình hợp ngữ sang một chơng trình viết bằng ngôn ngữ
máy.
+ Thực hiện chơng trình đã dịch.
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
6
Tại sao lại phải dịch: Vì máy tính đợc thiết kế và làm việc trên cơ sở
của hệ nhị phân. Chơng trình viết bằng ngôn ngữ máy chỉ chứa các ký hiệu 0
(đèn tắt) và 1 (đèn sáng). Việc dịch từ chơng trình hợp ngữ sang ngôn ngữ máy
cũng đợc các nhà thiết kế máy tính chuẩn bị trớc và nạp sẵn trong máy. Khi
dịch, mỗi câu lệnh của hợp ngữ sẽ đợc chuyển sang dạng đặc biệt gọi là mã
máy hay mã nhị phân. Ví dụ câu lệnh LOAD (đọc) sẽ đợc chuyển thành 0000,
câu lệnh ADD (cộng) sẽ đợc chuyển thành 0001. Các ô nhớ dành cho các biến
a, b, c, d, e sẽ đợc gán địa chỉ của từ ứng với chúng. Ví dụ biến a sẽ chiếm vùng
nhớ bắt đầu bằng địa chỉ 00100000, biến b chiếm địa chỉ 00100010,
Khi đó dòng câu lệnh hợp ngữ: LOAD a sẽ đợc dịch thành:
0000 00100000.
Các ngôn ngữ lập trình bậc cao
Có thể viết trực tiếp chơng trình bằng ngôn ngữ máy đợc không? Có
thể. Tuy nhiên, nh ta đã thấy việc làm này rất vất vả và dễ sinh lỗi. Các nhà lập
trình dựa trên nguyên lý máy tính đợc điều khiển bằng chơng trình để sáng tạo
ra các ngôn ngữ lập trình gần với ngôn ngữ tự nghiên, phù hợp với tâm lý và t
duy của ngời lập trình để diễn đạt các thuật toán đợctrong sáng và tự nhiên.
Việc đặt ra hợp ngữ là một cố gắng bớc đầu giúp cho những ngời lập
chơng trình đợc thuận tiện hơn. Các câu lệnh của hợp ngữ đợc gán tên khá
gần với ngôn ngữ tự nhiên, việc dành vùng nhớ cho các biến đợc thực hiện
thông qua tên biến.
Vận dụng t tởng dịch từ ngôn ngữ này sang ngôn ngữ khác, các nhà tin
học đã sáng tạo ra những ngôn ngữ lập khác nhau thuận tiện hơn nữa với các
u
điểm sau:
+ Các câu lệnh của ngôn ngữ lập trình gần với ngôn ngữ tự nghiên.
+ Tùy theo lĩnh vực ứngdụng mà các ngôn ngữ lập trình mới này cung cấp
các phơng tiện trợ giúp để giải các bài toán khoa học, kỹ thuật hoặc quản lý.
Ngời ta gọi các ngôn ngữ nói trên là các ngôn ngữ lập trình bậc cao để
phân biệt với các ngôn ngữ lập trình bậc thấp là hợp ngữ và ngôn ngữ máy.
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
7
Quá trình giải các bài toán nhờ sự giúp đỡ của máy tính bao gồm các giai
đoạn sau:
Giai đọan 1: Tìm hiểu bài toán bao gồm việc xác định giả thiết, các yêu
cầu cần phải thực hiện, mục đích cần phải đạt.
Giai đoạn 2: Xác định thuật giải để giải bài toán đã cho.
Giai đoạn 3: Lập trình: sử dụng một ngôn ngữ bậc cao để diễn đạt thuật
giải.
Giai đoạn 4: Sử dụng một hệ trợ giúp, thông qua việc bấm các phím thích
hợp trên bàn phím để nhập chơng trình vào máy tính.
Giai đoạn 5: Yêu cầu máy dịch chơng trình đã nạp sang ngôn ngữ bậc
thấp (ngôn ngữ máy).
Giai đoạn 6: Yêu cầu máy thực hiện chơng trình đã dịch.
Nếu tại một giai đoạn nào đó ta phát hiện ra sai sót thì cần quay lại giai
đoạn trớc đó để sửa lỗi rồi thực hiện lại một số giai đoạn cần thiết cho tới khi
thu đợc kết quả mong muốn.
Chơng trình dịch
Trong các ngôn ngữ bậc thấp thì ngôn ngữ máy có bậc thấp nhất. Cần nhớ
là máy tính chỉ làm việc với ngôn ngữ máy.
Việc dịch một chơng trình viết bằng ngôn ngữ bậc cao sang ngôn ngữ
máy do một chơng trình đặc biệt đảm nhận gọi là chơng trình dịch. Chơng
trình dịch thực hiện chức năng sau đây:
+ Duyệt chơng trình nguồn để phát hiện và thông báo các lối cú pháp tức
là những lỗi do ngời lập trình viết sai.
+ Trongtrờng hợp chơng trình dịch không phát hiện thấy lỗi trong
chơng trình nguồn nó sẽ dịch chơng trình nguồn thành chơng trình viết trên
ngôn ngữ máy gọi là chơng trình đích.
2.2. Ngôn ngữ BAssic
Ngôn ngữ BASIC (Beginers All purpose Symbolic Instruction đoạn
chơng trình - thông dịch) do Kemeny và Kuzt sáng lập ra vào năm 1965. Đợc
dùng nh là một ngôn ngữ khởi đầu cho việc lập trình. Hiện đợc cài đặt và phổ
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
8
biến nhất trên máy tính IBM và tơng thích. Xu hớng hiện nay là cấu trúc hóa
ngôn ngữ này và tiếp cận dần với PASCAL. Một tiêu chuẩn mới đã đợc tác giả
soạn ra với tên TRUE BASIC.
2.3. Ngôn ngữ PASCAL
Do tính tờng minh về cấu trúc nên PASCAL rất thích hợp cho việc giảng
dạy cơ sở lập trình, đặc biệt đối với những ngời không chuyên tin. Bạn đọc có
thể đọc rất nhiều giáo trình khác nhau về PASCAL cơ bản (ví dụ Quách Tuấn
Ngọc Ngôn ngữ lập trình PASCAL).
T liệu Đọc thêm
Ngôn ngữ PASCAL là ngôn ngữ lập trình bậc cao do giáo s Niklaus Wirth (trờng
đại học kỹ thuật Zurich - Thụy Sĩ) sáng lập và công bố vào đầu những năm 1970, tên PASCAL
để kỷ niệm nhà toán học ngời Pháp Blaisse PASCAL ở thế ký 17. Lúc đầu, PASCAL đợc
sáng tác với mục đích làm ngôn ngữ cho máy tính để dạy học cho sinh viên ở các trờngđại
học: nó giúp cho sinh viên cũng nh ngời mới học lập trình có đợc thói quen viết một
chơng trình có cấu trúc sáng sủa, rõ ràng, dễ hiểu và dễ đọc cho cả mọi ngời khác. Trớc
khi có PASCAL, các sinh viên đều đợchọc ngôn ngữ lập trình FORTRAN, một ngôn ngữ lâu
đời nhất và là ngôn ngữ không có cấu trúc. Giáo s Wirth thấy rằng có thể tránh đợc rất
nhiều lỗi khi lập trình với một ngôn ngữ cấu trúc khối và có sự kiểm tra kỹ lỡng sự tơng
thích giữa các dữ liệu.
PASCAL là một ngôn ngữ có định kiểu mạnh mẽ, có nghĩa là mọi biến và hằng của
một kiểu dữ liệu không thể tự do đem trộn lẫn với các biến và hằng của một kiểu dữ liệu khác.
Ví dụ cả hai vế phép gán phải là cùng một kiểu, ngoại trừ trờng hợp vế trái là một biến số
thực (real) còn vế phải có thể là số nguyên (integer). Việc định kiểu một cách chặt chẽ nh
vậy bắt buộc ngời lập trình luôn luôn phải có các biểu thức tơng thích nhau về kiểu dữ liệu.
PASCAL là một ngôn ngữ có cấu trúc. Một ngôn ngữ có cấu trúc khối là ngôn ngữ
mà ta có thể tách các thông tin dữ liệu (biến, hằng, . . .) và các lệnh cần dùng cho một nhiệm
vụ xác định thành những khối riêng, tách ra khỏi phần còn lại của chơng trình để ngời lập
trình có thể giải quyết dần từng phần một, từng khối một thậm trí có thể cho nhiều ngời cùng
tham gia lập trình, mỗi ngời phụ trách một vài khối. Thông thờng các khối ứng với các
nhiệm vụ cụ thể và xác định, đợc thực hiện bằng các chơng trình con với các biến địa
phơng là các biến tạm thời của chơng trình con đó. Bằng cách này ta có thể viết các chơng
trình con sao cho các sự kiện xảy ra trong đó không làm ảnh hởng tới các phần khác của
chơng trình nằm ngoài chơng trình con. Có thể nói tính cấu trúc của chơng trình PASCAL
đợc thể hiện trên 3 mặt.
+ Cấu trúc về mặt dữ liệu: từ các dữ liệu đã có (kiểu đơn giản hoặc dữ liệu cấu trúc) ta
có thể xây dựng các cấu trúc dữ liệu phức tạp hơn.
+ Cấu trúc về mặt lệnh: Từ các lệnh đã có (lệnh đơn giản hoặc lệnh có cấu trúc) ta có
thể nhóm chúng lại với nhau và đặt giữa hai từ khóa BEGIN và END thành câu lệnh phức tạp
hơn, gọi là lệnh hợp thành hay lệnh ghép.
TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên
9
+ Cấu trúc về mặt chơng trình: Một chơng trình có thể chia thành các modun
chơng trình độc lập (chơng trình con).
Bộ chữ viết của PASCAL
Ngôn ngữ PASCAl đợc xây dựng với bộ chữ viết sau:
Bộ 26 chữ cái la tinh: 26 chữ cái in hoa A, B, C, . . . ,Z
26 chữ cái thờng a, b, c, . . . , z
Ký tự gạch nối _.
Các chữ số thập phân: 0, 1, 2, . . ., 9
Các ký hiệu toán học thông thờng +, -, *, /, =, <, >, (),
Các ký hiệu đặc biệt nh các dấu chấm câu và các dấu khác: .,; :[]?%\!&#$
Dấu cách (Space) đợcdùng để ngăn cách các từ. Vì khi viết nó không hiện ra chữ gì
nên để tiện nhận biết trong một số trờng hợp nh cần đếm số dấu cách, trong tài liệu thờng
dùng dấu .
Từ vựng của PASCAL gồm một số từ riêng PASCAL đợc gọi là từ khóa (key word).
Các từ khóa này ngời sử dụng phải dùngđúng với cú pháp, không đợcdùng nó vào việc
khác hoặc đặt tên mới trùng với các từ khóa. Đó là các từ:
Từ khóa chung: PROGRAM, BEGIN, END, PROCEDURE, FUNCTION
Từ khóa để khai báo: CONST, VAR, LABEL, TYPE, ARRAY, STRING, RECORD,
SET, FILE, OF
Từ khóa của lệnh thử và rẽ nhánh: IF . . . THEN . . . ELSE. . ., CASE . . . OF. . .
Từ khóa của lệnh lặp: FOR . . . TO . . DO . . . , FOR. . . DOWNTO . . . DO. . . ,
WHILE. . . DO. . . , REPEAT. . . UNTIL. . .
Từ khóa điều khiển: WITH, GO TO.
Từ khóa toán tử: AND, OR, NOT, IN, DIV, MOD
Từ khóa NUL: NUL
Các từ khóa này có thể viết in hay viết thờng, giá trị và ý nghĩa của các từ khóa không
thay đổi.
Tên hay định danh (identifier)
Tên hoặc định danh là một dãy ký tự (không có dấu cách) đợcdùng để chỉ tên hằng
số, tên hằng ký tự, tên biến, tên kiểu, tên chơng trình, . . . Tên đợc tạo thành từ các chữ cái
và chữ số song bắt buộc chữ đầu phải là chữ cái. Tất nhiên ta phải đặt tên sao cho có ý nghĩa,
dễ nhớ. Để làm sáng sủa tên, PASCAL cho phép dùng dấu gạch dới "_" khi viết tên.
Một số tên nh tên của chơng trình con (SIN , COS, . . . ) đã đợc PASCAL định
nghĩa sẵn đợc gọi là tên chuẩn hay tên đã đợc định nghĩa. Sự khác nhau giữa tên chuẩn và từ
khóa là ngời sử dụng có thể định nghĩa lại tên chuẩn, dùng tên chuẩn vào việc khác nếu
muốn còn từ khóa thì bị nghiêm cấm dùng vào việc khác trái quy định.
Một số tên chuẩn của PASCAL: BOOLEAN, CHAR, INTEGER, REAL, BYTE,
TEXT, FALSE, TRUE, MAXINT, ABS, ARCTAN, CHR, COS, SIN, EOF, EOLN, EXP, LN,
ODD, ORD, ROUND, TRUNC, SQR, PRED, SUCC,DISPOSE, NEW, GET, PUT, READ,
READLN, WRITE, WRITELN, RESET, REWRITE.
Dấu chấm phẩy ; dùng để ngăn cách các câu lệnh của PASCAL và không thể thiếu
đ
ợc. Không nên hiểu dấu ; là kết thúc cấu lệnh.
[...]... cho bài toán Chỉ thị (Statement) là các câu lệnh đợc thực hiện và sẽ đợc chơng trình dịch biến thành dãy lệnh máy trong chơng trình đích Chỉ thị có thể thực hiện là: - Vào/ ra dữ liệu - Trao đổi thông tin giữa các phần của chơng trình, giữa bộ nhớ trong và bộ nhớ ngoài, - Tính toán số học, logic - Kiểm tra và quyết định lựa chọn - Điều khiển 19 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcThái Nguyên. .. ví dụ đoạn chơng trình sử dụng toán tử IF THEN Ví dụ 1: Giải phơng trình bậc hai: If (delta>=0) then Begin x1:= (- b + sqrt(delta))/2/a; x2:= (- b - sqrt(delta))/2/a; End Else 16 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Begin AA: = -b/2/a; { phần thực của nghiệm phức } BB:= sqrt(-delta)/2/a; { phần ảo của nghiệm phức } End; Ví dụ2: Tính tổng n số nguyên đầu tiên i:=1; sum:=0;... nhãn liệt kê tất cả các nhãn sử dụngtrong chơng trình và dùng để định vị các toán tử khi cần điều khiển chơng trình hoạt động ngoài quy tắc thông thờng (từ trên xuống dới) Cách mô tả : LABEL số nguyên; Ví dụ: LABEL 10, 20, 123; mô tả 3 nhãn dùngtrong khối 10 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Xác định hằng Các hằng có giá trị không đổi trong suốt quá trình thực hiện chơng... y là thực, ch là kí tự, j là logic và h là kiểu city (đã đợc định nghĩa trong TYPE) 11 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Mảng Để có thể truy nhập thông tin và sử dụng các phần tử trong dãy số PASCAL đa vào khái niệm mảng Mảng là một kiểu biến (hoặc hằng) có chỉ số dùng để chỉ thứ tự của phần tử đó trong dãy số Cách mô tả mảng 1 chiều: tên biến 1, tên biến 2, : ARRAY [1... chia Dấu trống , Dấu phảy ( Dấu mở ) Dấu đóng = Dấu gán b Dấu trống ngoặc ngoặc Dấu dùng với 4 nghĩa: - Là dấu thập phân thay cho dấu phảy 29 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên- Là dấu phân ly trong mã đặc trng F6.2 - Là dấu ở phép logic GT là lớn hơn hay EQ là bằng - Là dấu chấm câu Dấu = dùng theo nghĩa gán, muốn diễn tả sự bẳng nhau dùng phép so sánh quan hệ ED Tránh... các ngành khoa học kỹ thuật, Trong giáo dục chơng trình FORTRAN không đợc phổ biến nh PASCAL Những u điểm của FORTRAN: + Dễ học, dễ viết, dễ hiệu chỉnh + Có hiệu quả khi dịch do cấu trúc ngôn ngữ đơn giản + Vốn t liệu phong phú: Có nhiều kho chơng truình mẫu, chơng trình phục vụ + Khả năng vào ra đơn giản và dồi dào, tiện dụng 18 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Hiện nay,... con + Các thông báo Hằng Mọi đại lợng xuất hiện trong chơng trình dới dạng trờng và không đổi khi chạy chơng trình (chỉ lấy 1 giá trị) gọi là hằng (constant) Những đại lợng xuất hiện trong chơng trình dới dạng ẩn (tên gọi) và có thể thay đổi giá trị khi chạy chơng trình (đợc gán giá trị khác) gọi là biến (variable) 30 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Muốn chạy đợc chơng... viết liền nhau (không có dấu cách) 31 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Biến phải đợc mô tả ví dụ: INTEGER CCAO hay REAL TONG, mỗi biến không thể có mặt ở 2 thông báo mô tả loại Trong FORTRAN có các loại biến sau: + Biến nguyên và thực Nếu tên biến đợc bắt đầu bằng một trong các chữ cai I, J, K, L, M, N thì đó là biến nguyên, ngoài ra là biến thực + Biến chính xác kép (DOUBLE... bị cắt Mã H thì in ra các thông báo, tiêu đề, thuyết minh Mã X dùng để bỏ trắng n vị trí ở dòng in ra 33 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Chơng 3 : các thuật toán cơ bản dùng trong hóahọc 3.1 tính lặp 3.1.1 Vòng lặp có số bớc xác định FOR TO Một trong những thuật toán quan trọng nhất của máy tính là vòng lặp dùng để lặp đi lặp lại một phép tính hoặc một nhóm các phép... bố trí theo kiểu mặc định số cột dành cho mỗi biến hoặc hằng và các biến thực sẽ đợc viết dới dạng dấu phảy di động 14 TS Mai Xuân Trờng-TrờngĐạihọc S phạm -ĐạihọcTháiNguyên Ví dụ: Write(a,b,c); sẽ cho ra màn hình 1.2345678+01 3.00000000+02 -7 .000111 1-0 3 Trongtrờng hợp định khuôn chúng ta dùng các số sau dấu : để mô tả số cột trên màn hình dành cho việc viết biến hoặc hằng trớc đó Riêng với . Thái nguyên, 2011 TS Mai Xuân Trờng - Trờng Đại học S phạm - Đại học Thái Nguyên 1 Mở đầu Tin học trong hóa học (chemometric) hay hoá tin (computational chemistry). toán, các bài toán hoá học, các phần mềm tính toán ứng dụng trong hoá học và số lợng ngời sử dụng ngày càng nhiều. Để phục vụ công tác giảng dạy và học tập tin học ứng dụng trong hóa học, chúng. đạI học thái nguyên trờng đạI học s phạm Khoa Hoá học TS Mai Xuân Trờng D : 0912.739.257 CQ : 0280.3856.853 NR 0280.3759.402 Bài giảng Tin học ứng dụng trong hoá học (2