Bài giảng Ngôn ngữ lập trình Fortran 90 - Phan Văn Tân
lượt xem 2
download
Bài giảng Ngôn ngữ lập trình Fortran 90 gồm có những nội dung chính sau: Chương 1 Những yếu tố cơ bản của ngôn ngữ Fortran, chương 2 các câu lệnh đơn giản, chương 3 các cấu trúc mở rộng, chương 4 chương trình con (SUBPROGRAM), chương 5 mảng và con trỏ, chương 6 biến ký tự, chương 7 file và thiết bị, chương 8 một số kiến thức mở rộng. Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Ngôn ngữ lập trình Fortran 90 - Phan Văn Tân
- Ng «n ng ÷ lËp tr×nh FORTRAN 90 Phan V¨n T©n
- Ch¬ng 1. Nh÷ng yÕu tè c ¬ b¶n c ña ng «n ng ÷ FORTRAN 1.1 S¬lîc vÒ ng«n ng÷lËp tr×nh FOTRAN • TËp hîp c¸c qui t¾c ®Æc biÖt ®Ó m∙ ho ¸ nh÷ng kiÕn thøc cho m¸y tÝnh hiÓu ®îc gäi lµ ng «n ng ÷ lËp tr×nh • Cã nhiÒu ng«n ng÷lËp tr×nh: FORTRAN, BASIC, Pascal, C,... • FORTRAN lµ tªn cÊu t¹o tõ FORmula TRANslation (c«ng thøc dÞch), lµ ng«n ng÷lËp tr×nh bËc cao • ý tëng cña FORTRAN ®îc J ohn Backus ®Ò xuÊt vµo kho¶ng cuèi n¨m 1953, ë New York, vµ ch¬ng tr×nh FORTRAN ®Çu tiªn ®· ®îc ch¹y vµo th¸ng 4 n¨m 1957.
- • N¨m 1966 lÇn ®Çu tiªn phiªn b¶n chuÈn cña ng«n ng÷lËp tr×nh nµy ®îc Ên hµnh: FORTRAN 66 • Phiªn b¶n chuÈn míi, Fortran 77, ®îc Ên hµnh vµo n¨m 1978 • Phiªn b¶n chuÈn FORTRAN 90 (hoÆc Fortran 90), ra ®êi vµo th¸ng 8 n¨m 1991 • Cho ®Õn nay ®· cã c¸c phiªn b¶n míi kh¸c, nh FORTRAN 95, FORTRAN 2000 • FORTRAN cã nhiÒu bé biªn dÞch dßng kh¸c nhau, cã thÓ lµm viÖc trªn c¸c hÖ ®iÒu hµnh kh¸c nhau: DOS, WINDOWS, UNIX, LINUX,...
- 1.2 Ch¹y mét ch¬ng tr×nh Fortran • Yªu cÇu ph¶i cã bé phÇn mÒm biªn dÞch cña FORTRAN phï hîp víi hÖ ®iÒu hµnh m¸y tÝnh vµ ®· cµi ®Æt vµo m¸y tÝnh, cã thÓ vËn hµnh b×nh thêng • Lµm quen dÇn vµ ®i ®Õn sö dông thµnh th¹o bé biªn dÞch: C¸ch vËn hµnh, c¸ch biªn tËp lêi ch ¬ng tr×nh, c¸ch dÞch kiÓm tra lçi, c¸ch ch¹y ch ¬ng tr×nh,... • Tríc hÕt h·y thö lµm viÖc víi nh÷ng ch¬ng tr×nh ®¬n gi¶n, cè g¾ng hiÓu râ ch¬ng tr×nh ho¹t ®éng nh thÕ nµo
- ! Vi du 1. ! Loi Chao mung! CHARACTER NAME*20 PRINT*, 'Ten ban la gi?' READ*, NAME PRINT*, 'Xin chao ban ', NAME END Khi ch¹y ch¬ng tr×nh sÏ nhËn ®îc: Ten ban la gi? THANH Xin chao ban THANH
- 174.6 ( t 1981.2 )3 !VÝ dô 2: TÝnh gi¸ trÞ cña hµm A(t)= ! khi cho vµo gi¸ trÞ cña biÕn t PROGRAM VD2 ! Tinh gia tri ham A(t) INTEGER T ! gia tri bien t REAL A ! gia tri ham A(t) PRINT*,’Cho gia tri cua bien t:’ READ*, T A =174.6 * (T - 1981.2) ** 3 PRINT*,'Gia tri ham A(t) khi t=', T, ' la :', A END Khi ch¹y ch¬ng tr×nh s Ï ®îc: Cho gia tri cua bien t: 2000 Gia tri ham A(t) khi t=2000 la : 1.1601688E+06
- VÝ dô 3: Gi¶ sö b¹n cã $1000 göi tiÕt kiÖm trong ng©n hµng, víi tiÒn l·i 9% mçi n¨m. Hái sau mét n¨m sè tiÒn cña b¹n b»ng bao nhiªu? NÕu lËp tr×nh cho m¸y tÝnh ta h·y tëng tîng c¸c b íc thùc hiÖn cña m¸y nh sau: 1. NhËn sè liÖu (sè tiÒn göi ban ®Çu vµ l·i suÊt) 2. TÝnh tiÒn l·i (9% cña 1000, tøc 90) 3. Céng tiÒn l·i vµo sè tiÒn gèc (90+1000, tøc 1090) 4. In (hiÓn thÞ) sè b¹n sÏ cã.
- • Lêi ch¬ng tr×nh: PROGRAM TinhTien REAL TienGoc, TienLai, LaiSuat TienGoc =1000 LaiSuat =0.09 TienLai =LaiSuat * TienGoc TienGoc =TienGoc +TienLai PRINT*, ‘So tien se cã la : ', TienGoc END Ch¹y ch¬ng tr×nh vµ chó ý r»ng b©y giê kh«ng ®ßi hái ®Çu vµo (input) tõ bµn phÝm (T¹i sao?). KÕt qu¶ sÏ lµ 1.0900000E+03 (1090)
- Tãm t¾t • Chư¬ng tr×nh m¸y tÝnh lµ tËp hîp c¸c kiÕn thøc ®îc m· ho¸ ®Ó gi¶i quyÕt mét vÊn ®Ò riªng biÖt. • LÖnh READ* cña Fortran lµ ®Ó nhËn d÷liÖu ® a vµo cho m¸y tÝnh. • LÖnh PRINT* cña Fortran lµ ®Ó in (hiÓn thÞ) c¸c th«ng b¸o dÉn híng cho ngêi dïng vµ kÕt qu¶ tÝnh to¸n, xö lý.
- 1.3 CÊu tróc chung cña mét ch¬ng tr×nh FORTRAN [PROGRAM Te nChuongTrinh] [Cac cau le nh Khai bao] [Cac cau le nh thuc hie n (than Chuong trinh)] END [PROGRAM [Te nChuongTrinh]] • Cac cau le nh Khai bao: Khai b¸o ®Ó ch¬ng tr×nh cÊp ph¸t bé nhí, ph©n luång xö lý,... • Cac cau le nh thuc hie n: Qui t¾c vµ tr×nh tù thùc hiÖn tÝnh to¸n, xö lý ®Ó ®¹t ®îc kÕt qu¶ • END lµ c©u lÖnh b¾t buéc ph¶i cã.
- C¸ch ®Æt tªn cho biÕn vµ h»ng • Ch¬ng tr×nh FORTRAN sÏ lµm viÖc th«ng qua c¸c biÕn vµ h»ng, ®ã lµ nh÷ng vïng bé nhí ®îc cÊp ph¸t ®Ó lu gi÷c¸c gi¸ trÞ trong qu¸ tr×nh tÝnh to¸n, chóng ®îc g¸n bëi Tª n g äi theo qui íc. • Tªn biÕn, tªn h»ng lµ mét d·y ký tù viÕt liÒn nhau, bao gåm c¸c ch÷c¸i tiÕng Anh vµ ch÷sè hoÆc dÊu g¹ch díi, nhng p h¶i b ¾t ®Çu b »ng m é t c h÷ c ¸i, kh«ng ph©n biÖt ch÷thêng, ch÷hoa (A, B, C,..., a, b, c) • VÝ dô: Tªn hîp lÖ Tªn kh«ng hîp lÖ DienTich Dien tich Tien2003 2003Tien AB A,B DoLa $
- B¶ng m· ASCII
- B¶ng m· ASCII
- 1.4 CÊu tróc c©u lÖnh • Tõ khãa: REAL, PRINT, READ,... • C©u lÖnh g¸n: VÕ Tr¸i = VÕ Ph¶i – VÕ Tr¸i: Tªn biÕn, Tªn h»ng – VÕ Ph¶i: Gi¸ trÞ, BiÓu thøc – VÝ dô: Tie nGoc = 1000 ; Tie nLai = LaiS uat * Tie nGoc • C¸c c©u lÖnh víi tõ khãa: – VÝ dô: R EAD*, T ; PR INT*, ‘S o tie n s e cã la : ', Tie nGoc • Sö dông dÊu c¸ch (SpaceBar) trong c©u lÖnh • Lêi chó thÝch trong ch¬ng tr×nh • Dßng nèi tiÕp
- G¸n nh·n cho c©u lÖnh • Trong mét ch¬ng tr×nh, mçi c©u lÖnh cã thÓ ®îc g¸n bëi mét nh∙n duy nhÊt lµ mét sè ng uyªn d¬ng n»m trong kho¶ng 1..99999 • Nh·n ®îc ghi ë ®Çu vµ trªn cïng dßng lÖnh, c¸ch néi dung c©u lÖnh bëi Ýt nhÊt mét dÊu c¸ch • Nh·n c©u lÖnh dïng ®Ó ®¸nh ®Þa chØ cña c©u lÖnh, nhê ®ã ch¬ng tr×nh cã thÓ chuyÓn ®iÒu khiÓn ®Õn c©u lÖnh khi cÇn thiÕt • VÝ dô: 10 PRINT*,’Cho mät so nguyen duong: ‘ .... PRINT*, ‘Sai so lieu. Hay nhap lai.’ GOTO 10
- Qui íc biªn tËp ch¬ng tr×nh: • §èi víi FORTRAN 77: – Tªn file ch¬ng tr×nh cã phÇn më réng lµ *.FOR, *.F – Mét dßng ch¬ng tr×nh cã tèi ®a 72 ký tù: • Cét 1-5: Dïng ®Ó ®¸nh Nh∙n c©u lÖnh (1-99999). NÕu kh«ng cã nh·n th× ®Ó trè ng • Cét 6: §¸nh dÊu dßng nèi tiÕp cña c©u lÖnh • Cét 7-72: Néi dung c©u lÖnh – Dßng chó thÝch: • BÊt kú dßng lÖnh nµo cã ký tù “C” hoÆc “c” ë cét 1 ®Òu ® îc xem lµ dßng chó thÝch • PhÇn dßng lÖnh n»m phÝa sau dÊu chÊm than ( ! ) còng ® îc hiÓu lµ lêi chó thÝch • Cã thÓ sö dông c¸c cét 73-80 trªn dßng lµm chó thÝch • Khi gÆp phÇn chó thÝch ch¬ng tr×nh dÞch sÏ bá qua.
- • §èi víi FORTRAN 90: – Tªn file ch¬ng tr×nh cã phÇn më réng lµ *.f90, *.F90 – §èi víi MicroSoft FORTRAN, mét dßng ch¬ng tr×nh cã thÓ dµi têi 7200 ký tù, trªn ®ã cã thÓ cã nhiÒu c©u lÖnh, c¸c c©u lÖnh c¸ch nhau bëi dÊu chÊm phÈy (;) • Lêi ch¬ng tr×nh b¾t ®Çu tõ cét 1 • NÕu kh«ng muèn ®Ò dßng lÖnh qu¸ dµi cã thÓ dïng ký tù (&) ë cuèi dßng ®Ó ng¾t dßng lÖnh xuèng dßng díi – Lêi chó thÝch: • BÊt kú mét dßng lÖnh hoÆc mét phÇn dßng lÖnh nµo ®ã n»m ë phÝa sau dÊu chÊm than (!) ®Òu ®îc xem lµ lêi chó thÝch • Khi gÆp phÇn chó thÝch ch¬ng tr×nh dÞch sÏ bá qua.
- Phong c¸ch lËp tr×nh • Phong c¸ch lËp tr×nh thÓ hiÖn tÝnh chÊt nghiªm tóc, t duy l«gic cña ngêi lËp tr×nh • Nh÷ng ®iÒu nªn lµm: – Khi viÕt ch¬ng tr×nh nªn sö dông c¶ ch÷thêng, ch÷ hoa ®Ó dÔ theo dâi – Dïng lêi chó thÝch ®Ó ghi chó, gi¶i thÝch néi dung c¸c ®o¹n m· ch¬ng tr×nh – Nªn ph©n cÊp c¸c c©u lÖnh ®Ó bè trÝ s¾p xÕp thôt, thß cho hîp lý, dÔ kiÓm so¸t – §Æt tªn c¸c biÕn sao cho mang tÝnh gîi nhí, kh«ng qu¸ dµi, còng kh«ng qu¸ ng¾n – Sö dông dÊu c¸ch mét c¸ch thÝch hîp ®Ó nh×n ch ¬ng tr×nh s¸ng sña, ®Ñp ®Ï h¬n
- 1.5 C¸c KiÓu d÷ liÖu • Mét c¸ch t¬ng ®èi FORTRAN ®Þnh nghÜa hai kiÓu d÷liÖu c¬b¶n lµ KiÓu S è vµ KiÓu Kh«ng p h¶i s è : – KiÓu S è : REAL (sè thùc), INTEGER (sè nguyªn), COMPLEX (sè phøc) – KiÓu Kh«ng p h¶i s è : CHARACTER (ký tù), LOGICAL (l«gic) • Tïy theo tõng kiÓu d÷liÖu mµ c¸c biÕn/h»ng sÏ chiÕm dung lîng bé nhí t¬ng øng • Dung lîng bé nhí mµ c¸c biÕn chiÕm gi÷x¸c ®Þnh bëi sè b y te ®îc cÊp ph¸t • 1 b y te = 8 b it
- KiÓu D÷liÖu Sè byte chiÕm gi÷ MiÒn gi¸ trÞ hîp lÖ INTEGER 4 –2,147,483,648 .. 2,147,483,647 INTEGER *1 1 –128 .. 127 INTEGER *2 2 –32,768 .. 32,767 INTEGER *4 4 –2,147,483,648 .. 2,147,483,647 REAL 4 –3.4028235E+38 .. –1.1754944E–38 (6) REAL *4 4 +1.1754944E–38 to +3.4028235E+38 (6) REAL *8 8 –1.797693134862316D+308 .. –2.225073858507201D–308 +2.225073858507201D–308 .. +1.797693134862316D+308 DOUBLE PRECISION 8 COMPLEX 8 (mét cÆp hai sè thùc 4 byte) COMPLEX *4 8 COMPLEX *8 16 (mét cÆp hai sè thùc 8 byte) DOUBLE COMPLEX 16
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Ngôn ngữ lập trình Java căn bản
115 p | 349 | 104
-
Bài giảng Ngôn ngữ lập trình C++: Chương 1 - Trần Minh Châu
17 p | 249 | 54
-
Bài giảng Ngôn ngữ lập trình C# - Nguyễn Hồng Phương
409 p | 213 | 40
-
Bài giảng Ngôn ngữ lập trình ứng dụng: Phần 1 – ĐH CNTT&TT
45 p | 112 | 13
-
Bài giảng Ngôn ngữ lập trình C và C++ (Phần 1: Ngôn ngữ lập trình C) - Chương 1: Ôn tập một số nội dung chính của NNLT C
31 p | 157 | 13
-
Bài giảng Ngôn ngữ lập trình bậc cao - Th.S Đoàn Thị Thu Huyền
44 p | 150 | 10
-
Bài giảng Ngôn ngữ lập trình C: Chương 1 - TS. Nguyễn Thị Hiền
12 p | 62 | 9
-
Bài giảng Ngôn ngữ lập trình - Nguyễn Văn Linh
109 p | 118 | 8
-
Bài giảng Ngôn ngữ lập trình C - Chương 1: Giới thiệu ngôn ngữ C
4 p | 104 | 8
-
Bài giảng Ngôn ngữ lập trình C và C++: Bài 1 - TS. Đỗ Đăng Khoa
53 p | 111 | 7
-
Bài giảng Ngôn ngữ lập trình C và C++ (Phần 2: Ngôn ngữ lập trình C++) - Chương 5: Các lớp nhập/xuất trong C++
19 p | 132 | 7
-
Bài giảng Ngôn ngữ lập trình C và C++ (Phần 2: Ngôn ngữ C++) - Chương 2: Giới thiệu về ngôn ngữ lập trình C++
49 p | 137 | 7
-
Bài giảng Ngôn ngữ lập trình C: Chương 1 - PhD. Nguyễn Thị Huyền
12 p | 53 | 7
-
Bài giảng Ngôn ngữ lập trình C và C++ (Phần 2: Ngôn ngữ lập trình C++) - Chương 3: Lớp và đối tượng
52 p | 112 | 5
-
Bài giảng Ngôn ngữ lập trình C và C++: Bài 4 - TS. Đỗ Đăng Khoa
40 p | 94 | 5
-
Bài giảng Ngôn ngữ lập trình C/C++ (Bài giảng tuần 1) – Nguyễn Hải Châu
7 p | 141 | 5
-
Bài giảng Ngôn ngữ lập trình C và C++ (Phần 2: Ngôn ngữ lập trình C++) - Chương 6: Mẫu (template)
27 p | 85 | 4
-
Bài giảng Ngôn ngữ lập trình: Bài 1 - Lý Anh Tuấn
30 p | 81 | 4
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn