1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình nhập môn tin học phần II thuật toán

14 204 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim TRNG I HC XY DNG KHOA CễNG NGH THễNG TIN GIO TRèNH MễN HC: NHP MễN TIN HC PHN II THUT TON Ging viờn: O TNG KIM B mụn : TIN HC XY DNG H ni 2011 -B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim PHN GII BI TON TRấN MY TNH THUT TON I CC BC XY DNG CHNG TRèNH V GII BI TON TRấN MY TNH Thu thp d liu thit k chng trỡnh (User Requirement): yờu cu ca bi toỏn v u vo, u ra, giao din, h thng, ngi s dng, ni dung cn tớnh toỏn, x lý Phõn tớch bi toỏn v xõy dng gii thut (Algorithm- Analyze -Code): thit lp cu trỳc d liu, cỏch lu tr, tỡm kim, chn phng phỏp v cỏch gii -> xõy dng s tng th v cỏc thut toỏn chi tit cho bi toỏn hoc vit Code ca chng trỡnh Chn ngụn ng lp trỡnh v vit chng trỡnh (Write Program): gii quyt bi toỏn theo s thut toỏn ó lp Kim tra s ỳng n ca chng trỡnh (Test): th nghim chng trỡnh vi cỏc d liu khỏc cú th xy bi toỏn kim tra tin cy ca chng trỡnh Trong phn ny cú th cú mt s giai on : Kim tra tng mụ un chng trỡnh ; Múc ni cỏc mụ un vi Vn hnh - Bo trỡ ( Maintenance): Chng trỡnh c em x dng thc t v nhn s phn hi ca ngi s dng, khỏch hng Tựy thuc vo cht lng ca chng trỡnh nú cú th c kim tra v ng ký bn quyn hoc phi sa cha II KHI NIM V THUT TON V GII THUT Khỏi nim v thut toỏn Thut toỏn l mt chui cỏc phộp x lý thụng tin, a phng phỏp v trỡnh t gii mt bi toỏn trờn mỏy tớnh Thuật toán hiểu bước, mẹo, luật để thực trình xử lý thông tin Cỏc c trng c bn: - Cỏc qui nh th hin s thut toỏn phi thng nht v theo qui nh chung nờn mi ngi u cú th hiu c s thut toỏn c im : - Thut toỏn ch cú ngha vi ngi lp trỡnh, mỏy tớnh khụng hiu c B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim - Cựng mt cú th cú nhiu phng ỏn lp s thut toỏn khỏc - Thut toỏn cú th mụ t cỏc bc chớnh ca bi toỏn (TT tng quỏt) hoc chi tit tng bc gii ca (thut toỏn chi tit) - Thut toỏn hay, cỏch gii ngn, kt qu chớnh xỏc ph thuc vo phng phỏp gii, trỡnh v kinh nghim ca ngi lp trỡnh - Cỏc cu trỳc c bn ca thut toỏn Cu trỳc tun t Cu trỳc r nhỏnh Cu trỳc lp Cỏch biu din s thut toỏn Thụng thng cú cỏch th hin s thut toỏn : theo s v s tuyn S : l cỏc bc lu tr, cỏc phộp x lý thụng tin c t cỏc Cỏc ni vi bng cỏc ng liờn lc, ng phõn chia, hp, ni tip S tuyn :l tt c cỏc bc lu tr, x lý TT c ghi trờn mt ng liờn tc t trờn xung di Vớ d: Cu trỳc S Cu trỳc S tuyn B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Ký hiu c bn dựng s thut toỏn : Khi bt u, kt thỳc Khi nhp d liu t bn phớm- xut d liu mn hỡnh Khi tớnh toỏn Khi kim tra- So sỏnh Khi ni tip Cỏc ng liờn lc Ký hiu chng trỡnh Cỏc thit b xut kt qu a, giy in Cỏc bc cn chun b trc vit s thut toỏn: T chc d liu cho chng trỡnh : + Xỏc nh nhng s liu no cn nhp vo chng trỡnh (l cỏc d liu u bi cung cp) + Xỏc nh cỏc d liu phỏt sinh trung gian quỏ trỡnh tớnh toỏn, d liu cn xut kt qu (da theo yờu cu ca bi toỏn) + Mi loi d liu cn xỏc nh cỏc thụng tin: - S lng bin - Cu trỳc d liu: Loi bin ( n, mng, bn ghi ) - Kiu d liu: nguyờn, thc, bn ghi, kiu mi t t - Tờn ca d liu: tờn bin, hng, kiu, bn ghi ( ngi dựng t t, nờn t ngn, vit tt ý ngha ca bin ) Xỏc nh cỏc cụng thc tng quỏt cn tớnh (chỳ ý nm ngoi chu trỡnh hoc chu trỡnh) Trỡnh t cỏc bc cn thc hin: vi nhng bi toỏn phc cn th hin loi s : S thut toỏn tng quỏt (cỏc thc hin chớnh); S thut toỏn chi tit: din gii cỏc bc thc hin cho tng chớnh B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim III CC DNG THUT TON C BN Dng thut toỏn n gin cu trỳc tun t Khỏi nim: Thut toỏn n gin l cỏc bc ( nhp d liu, tớnh toỏn, x lý, xut kt qu) c thc hin tun t t trờn xung di theo ng mi tờn Vớ d s 1: Vit s thut toỏn tớnh : Chu vi ỏy, Din tớch ỏy, Din tớch xung quanh, Din tớch ton phn, Th tớch ca mt hỡnh tr cú kớch thc bt k Phõn tớch : + D liu cn nhp vo: Bỏn kớnh, chiu cao ca hỡnh tr; Cu trỳc d liu: bin n; Kiu bin: s thc ; t tờn bin : R,H + Cn tớnh: t tờn bin : CVD,DTD, DTXQ, DTTP, TT Loi d liu: bin n; Kiu bin: s thc ; Cỏc cụng thc: Chu vi ỏy: CVD = 2R Din tớch ỏy: DTD = R2 , Din tớch xung quanh: DTXD= CVD*h, Din tớch ton phn : DTTP= DTXQ + 1* DTD , Th tớch TT= DTD*h ; + Cỏc d liu cn xut kt qu: cỏc d liu va tớnh: CVD,DTD, DTXQ, DTTP, TT Th hin s : Thut toỏn Vớ d Thut toỏn Vớ d 2 Dng thut toỏn phõn nhỏnh Khỏi nim: Thut toỏn phõn nhỏnh l cu trỳc cú ớt nht mt kim tra hay so sỏnh, da vo kt qu kim tra, la chn hng tớnh toỏn Cú th r nhỏnh ụi hoc nhiu nhỏnh, nhng mi ln thc hin, ch i theo mt nhỏnh B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim b) Mt s dng tng quỏt: a) c) d) Gii thớch cỏc i lng : BTK- Biu thc iu kin Kt qu ca biu thc ch nhn mt giỏ tr ỳng hoc sai BTC- Biu thc chn, kt qu cú th l mt hng nguyờn hoc ký t S lng kt qu khụng hn ch Nhúm lnh 1, : l cỏc lnh tỏc dng cn thc hin giỏ tr biu thc ỳng hoc Sai Cỏc dng: Dng a) : Dng phõn nhỏnh ụi khụng y , ch thc hin biu thc iiu kin ỳng Dng b) : Dng phõn nhỏnh ụi y , thc hin vi mi giỏ tr ca BTK (mt nhỏnh cho giỏ tr ỳng, mt nhỏnh cho giỏ tr sai) Dng c) : Dng phõn nhỏnh lng nhau: cú th y hoc khụng y v mc lng tựy ý Dng d) : Dng n nhỏnh Cỏch thc hin nhỏnh ụi: - Tớnh toỏn v kim tra biu thc iu kin (BTK) - Nu BTK cú giỏ tr ỳng thỡ nhúm lnh s c thc hin (b qua nhúm lnh 2), ngc li nhúm lnh c thc hin - Thc hin cỏc tip theo B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Cỏch thc hin dng n nhỏnh: - Da theo giỏ tr ca biu thc chn (BTC) m thc hin mt cỏc nhỏnh tng ng Vớ d giỏ tr BTC = N1 thc hin Nhúm lnh 1,giỏ tr l Nn, thc hin nhúm lnh n - Mi ln ch thc hin nhỏnh, b qua cỏc nhỏnh v kt thỳc lnh Vớ d s 2: Cho s a,b,c Vit thut toỏn tỡm s ln nht s ú Vớ d s 3: Vit thut toỏn gii phng trỡnh bc 2: Ax2 + Bx + C = (trang 19) Vớ d s 4: Vit s thut toỏn tớnh s lng sinh viờn cú tui t 18-20, 21-25, 26-30 v trờn 30 Ký hiu s lng sinh viờn cỏc nhúm l SL1, SL2, SL3, SL4 Thut toỏn vớ d Thut toỏn vớ d Dng thut toỏn chu trỡnh Chu trỡnh lng 3.1 Dng thut toỏn mt chu trỡnh Khỏi nim : Thut toỏn lp l cu trỳc ú mt nhúm lnh (min tỏc ng) c lp i lp li nhiu ln, cú dng tng quỏt khụng thay i, cú th bin i mt s tham s Cú dng lp: lp vi s ln lp ó xỏc nh (dng a) hoc lp vi s ln khụng xỏc nh (dng b ) Mt s dng tng quỏt cu trỳc: B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn Dng a) GVC: o Tng Kim Dng b) Gii thớch: BK - bin iu khin hay bin m ca chu trỡnh; n1,n2,n3 l cỏc giỏ tr u, bc nhy v giỏ tr cui ca bin iu khin Cỏc lnh lp: l cỏc cn thc hin tỏc dng ca chu trỡnh Cỏch thc hin: Dng a) - Bc : Gỏn giỏ tr u cho bin iu khin - Khi - Bc : Thc hin cỏc lnh tỏc ng ca chu trỡnh lp Khi - Bc : Tng giỏ tr ca bin iu khin Khi - Bc : Kim tra BK ó vt qua giỏ tr cui hay cha, nu cha quay li thc hin t bc 2, nu ó vt quỏ, kt thc quỏ trỡnh lp (thc hin cỏc bc tip theo)Khi Cỏch thc hin: Dng b) - Bc : Gỏn giỏ tr u cho bin iu khin - Khi - Bc : Kim tra BK, nu tha iu kin lp, thc hin bc 2, nu khụng tha iu kin, kt thc quỏ trỡnh lp (thc hin cỏc bc tip theo)- Khi - Bc : Thc hin cỏc lnh tỏc ng ca chu trỡnh lp Khi - Bc : Tng giỏ tr ca bin iu khin Khi Chỳ ý : - Vi dng a) chu trỡnh luụn thc hin ớt nht ln, vi dng b) nu biu thc iu kin khụng tha món, cú th dng chu trỡnh ( khụng thc hin ln no) - Thut toỏn chu trỡnh luụn tn ti B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Khụng c thay i cỏc giỏ tr n1,n2,n3 tỏc dng chu trỡnh Cú th kt thc chu trỡnh sm ( trc lp s ln khai bỏo)- nhy t ngoi chu trỡnh - Khụng cnhy t ngoi chu trỡnh vo chu trỡnh Vớ d s 5: Cho mt vộc t A cú n phn t Vit s thut toỏn tớnh tng cỏc phn t vộc t Phõn tớch: - Cỏc bin cn nhp: n (bin n) ; vộc t A (bin mng), nhp tng phn t Ai, bc ny lp n ln - Tớnh toỏn: Tng cỏc phn t: T (bin n) tớnh tng : gi s ban u T=0; sau ú cng tng phn t vo T , cú dng T T+ Ai ( vi i chy t 1-n) : cụng thc ny c lp n ln Thut toỏn Vớ d Thut toỏn Vớ d - B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Vớ d s 6: Cho mt vộc t B cú m phn t Vit s thut toỏn tỡm giỏ tr ln nht ca vộc t Phõn tớch: - Cỏc bin cn nhp: m (bin n) ; vộc t B (bin mng), nhp tng phn t Bi, bc ny lp m ln - Tớnh toỏn: Giỏ tr ln nht ký hiu Max (bin n) tỡm giỏ tr ln nht: gi s ban u Max = B1; sau ú ly tng phn t Bi kim tra vi Max (vi i chy t 1n), nu phn t no ln hn gỏn li Max Bi,: cụng thc ny ch thc hin iu kin KT l ỳng 3.2 Dng Thut toỏn chu trỡnh lng nhau: V nguyờn tc thut toỏn chu trỡnh lng cng ging nh thut toỏn chu trỡnh, mi chu trỡnh cng cú v bc thc hin nh thut toỏn chu trỡnh Chỳ ý : - Mi chu trỡnh cú mt bin iu khin riờng (thng ký hiu i,j,k .) - Cỏc giỏ tr n1,n2,n3 ca bin iu khin mi chu trỡnh cú th ging hoc khỏc - Ton b chu trỡnh l mt phn ca tỏc dng chu trỡnh ngoi (nm 2) - S ln thc hin ca chu trỡnh nhiu hn chu trỡnh ngoi, bin iu khin ca chu trỡnh s tng trc - Dng tng quỏt : Chu trỡnh cú s ln lp ó bit B mụn Tin hc Xõy dng Chu trỡnhcú s ln lp cha bit 10 Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Vớ d s 7: Cho mt lp hc cú m ngi v im thi tng mụn ca n mụn Vit s thut toỏn : - Tỡm im trung bỡnh n mụn ca mi ngi - Tỡm danh sỏch nhng ngi cú im trung bỡnh >8 Phõn tớch: - Cỏc bin cn nhp: s ngi m (bin n); vộc t h tờn HT( mng chiu), nhp tng phn t HTi, lp m ln; Nhpim thi tng mụn D (mng chiu, mi hng l cho mt ngi, mi ct l cho mt mụn), nhp tng phn t Dij, bc ny lp mxn ln - Tớnh toỏn: + im trung bỡnh tng ngi ký hiu TB (mng chiu, m phn t): Tỡm tng im cỏc mụn ca ngi th i: Tbi Tbi+Dij ( mi chu trỡnh i lp n ln chu trỡnh j) Kt thỳc chu trỡnh j, tỡnh trung bỡnh: Tbi = Tbi /n + Tỡm danh sỏch: Cú cỏch: Kim tra im trung bỡnh tng ngi, nu cú Tbi>8 in tờn ca ngi tng ng Hoc lp danh sỏch mi ch cha tờn nhng ngi cú im TB >8 ( s lng cha bit) - Xut kt qu : In mn hỡnh vộc t im trung bỡnh TB (m ngi); Danh sỏch nhng ngi cú DTB ln hn (In trc tip) Thut toỏn Vớ d B mụn Tin hc Xõy dng 11 Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Vớ d s 8: Cho ma trn A vuụng cú m hng, m ct Vit s thut toỏn tỡm tớch ca cỏc phn t nm khong [x , y] cho trc v tng cỏc phn t dng nm phớa trờn ng chộo chớnh Thut toỏn Vớ d Vớ d 9: Cho mt ma trn A cú m hng, m ct Ma trn B cú n hng, n ct Yờu cu : Vit s thut toỏn ghộp hai ma trn trờn thnh ma trn C cú m+n hng, m+n ct cú dng nh hỡnh bờn Trong ú vit chng trỡnh chớnh l chng trỡnh iu khin v chng trỡnh con, mt chng trỡnh nhp d liu, mt chng trỡnh ghộp ma trn v mt chng trỡnh In kt qu mn hỡnh Phõn tớch bi toỏn: - Cỏc chng trỡnh nhp d liu v xut kt qu ta vit cho mt ma trn X bt k, cú kớch thc gi nh n1,n2 Chng trỡnh ghộp ly ỳng tờn cỏc ma trn A,B,C Chng trỡnh xut d liu, v thut toỏn s ging nhp DL B mụn Tin hc Xõy dng 12 Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn - GVC: o Tng Kim Chng trỡnh iu khin s gi ln chng trỡnh Nhp d liu (thay X bng A,B, thay n1,n2 bng m, n) nhp cho A v B; v gi chng trỡnh ghộp ma trn Thut toỏn Vớ d Chng trỡnh Nhp D liu cho mt mng Chng trỡnh Chng trỡnh xut kt qu B mụn Tin hc Xõy dng Ghộp ma trn A,B vo ma trn C Chng trỡnh chớnh 13 Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim Vớ d 10: Cho d liu ca mt phng dõn c gm m h, bit h tờn ch h (HT), s in tiờu th tng thỏng (DTT) 12 thỏng ca nm Vit thut toỏn nhp d liu cho c phng vi cỏc yờu cu sau: - Nhp cỏc d liu vo mỏy - Tớnh tng s in tiờu th (TD) ca mi h c nm - Lp danh sỏch (DS) nhng h tiờu thu in c nm > X s Thut toỏn Vớ d 10 B mụn Tin hc Xõy dng 14 [...]... Chương trình con ghép lấy đúng tên các ma trận A,B,C Chương trình con xuất dữ liệu, về thuật toán sẽ giống nhập DL Bộ môn Tin học Xây dựng 12 Giáo trình Nhập môn Tin học: Phần II - Thuật toán - GVC: Đào Tăng Kiệm Chương trình điều khiển sẽ gọi 2 lần chương trình con Nhập dữ liệu (thay X bằng A,B, thay n1,n2 bằng m, n) để nhập cho A và B; và gọi chương trình con ghép 2 ma trận Thuật toán Ví dụ 9 Chương trình. .. sách những người có DTB lớn hơn 8 (In trực tiếp) Thuật toán Ví dụ 7 Bộ môn Tin học Xây dựng 11 Giáo trình Nhập môn Tin học: Phần II - Thuật toán GVC: Đào Tăng Kiệm  Ví dụ số 8: Cho ma trận A vuông có m hàng, m cột Viết sơ đồ thuật toán tìm tích của các phần tử nằm trong khoảng [x , y] cho trước và tổng các phần tử dương nằm phía trên đường chéo chính Thuật toán Ví dụ 8  Ví dụ 9: Cho một ma trận A có.. .Giáo trình Nhập môn Tin học: Phần II - Thuật toán GVC: Đào Tăng Kiệm  Ví dụ số 7: Cho một lớp học có m người và điểm thi từng môn của n môn Viết sơ đồ thuật toán : - Tìm điểm trung bình n môn của mỗi người - Tìm danh sách những người có điểm trung bình >8 Phân tích: - Các biến cần nhập: số người m (biến đơn); véc tơ họ tên HT( mảng 1 chiều), nhập từng phần tử HTi, lặp m lần; Nhập iểm thi từng môn. .. Chương trình con Nhập Dữ liệu cho một mảng Chương trình con Chương trình con xuất kết quả Bộ môn Tin học Xây dựng Ghép 2 ma trận A,B vào ma trận C Chương trình chính 13 Giáo trình Nhập môn Tin học: Phần II - Thuật toán GVC: Đào Tăng Kiệm Ví dụ 10: Cho dữ liệu của một phường dân cư gồm m hộ, biết họ tên chủ hộ (HT), số điện tiêu thụ từng tháng (DTT) trong 12 tháng của năm Viết thuật toán nhập dữ liệu cho... hàng, n cột Yêu cầu : Viết sơ đồ thuật toán ghép hai ma trận trên thành ma trận C có m+n hàng, m+n cột có dạng như hình bên Trong đó viết 1 chương trình chính là chương trình điều khiển và 3 chương trình con, một chương trình con nhập dữ liệu, một chương trình con ghép 2 ma trận và một chương trình con In kết quả ra màn hình Phân tích bài toán: - Các chương trình con nhập dữ liệu và xuất kết quả ta... Nhập iểm thi từng môn D (mảng 2 chiều, mỗi hàng là cho một người, mỗi cột là cho một môn) , nhập từng phần tử Dij, bước này lặp mxn lần - Tính toán: + Điểm trung bình từng người ký hiệu TB (mảng 1 chiều, m phần tử): Tìm tổng điểm các môn của người thứ i: Tbi ←Tbi+Dij ( mỗi chu trình i lặp n lần chu trình j) Kết thúc chu trình j, tình trung bình: Tbi = Tbi /n + Tìm danh sách: Có 2 cách: Kiểm tra điểm trung... tiêu thụ từng tháng (DTT) trong 12 tháng của năm Viết thuật toán nhập dữ liệu cho cả phường với các yêu cầu sau: - Nhập các dữ liệu vào máy - Tính tổng số điện tiêu thụ (TD) của mỗi hộ trong cả năm - Lập danh sách (DS) những hộ tiêu thu điện cả năm > X số Thuật toán Ví dụ 10 Bộ môn Tin học Xây dựng 14 ... II KHI NIM V THUT TON V GII THUT Khỏi nim v thut toỏn Thut toỏn l mt chui cỏc phộp x lý thụng tin, a phng phỏp v trỡnh t gii mt bi toỏn trờn mỏy tớnh Thuật toán hiểu bước, mẹo, luật để thực trình. .. hin chớnh); S thut toỏn chi tit: din gii cỏc bc thc hin cho tng chớnh B mụn Tin hc Xõy dng Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim III CC DNG THUT TON C BN Dng thut toỏn...Giỏo trỡnh Nhp mụn Tin hc: Phn II - Thut toỏn GVC: o Tng Kim PHN GII BI TON TRấN MY TNH THUT TON I CC BC XY DNG CHNG TRèNH V GII BI TON TRấN MY TNH Thu thp d liu thit

Ngày đăng: 04/12/2015, 04:35

Xem thêm: Giáo trình nhập môn tin học phần II thuật toán

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN