Bài tập thực hành môn công nghệ phần mềm
lượt xem 108
download
Tài liệu tham khảo về các dạng bài tập thực hành môn công nghệ phần mềm. Tài liệu chỉ mang tính chất tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài tập thực hành môn công nghệ phần mềm
- PHÂN LOẠI DẠNG BÀI TẬP MÔN CÔNG NGHỆ PHẦN MỀM (Tài liệu tham khảo) I, DẠNG BÀI TẬP CHUYỂN CẤU TRÚC VỀ DẠNG TUẦN TỰ VÀ WHILE: Bài 1: Chuyển cấu trúc sau về dạng tuần tự và while: if A then V else T; Giải: Chuyển cấu trúc "if A then V else T" về dạng tuần tự và while : B := A ; while A do Begin V; A :=not A; end; while not B do Begin T; B:= not B; end; Bài 2: Chuyển cấu trúc sau về dạng tuần tự và while: a) For i:= k to m do A b) if X then Y Giải: a, Chuyển cấu trúc "for i:=k to m do A" về cấu trúc tuần tự và while i:=k ; while i
- while A do Begin V; A := not A end; b, Chuyển cấu trúc "repeat C until X" : C; while not X do C Bài 4: Chuyển cấu trúc sau về dạng tuần tự và while: a, For i:= m downto k do A ; b, Repeat C until D ; Giải: a, Chuyển cấu trúc "for i:=m downto k do A" về dạng tuần tự và while i:=m; while i >=k do Begin A; i:=i-1 end; b, Chuyển cấu trúc "repeat C until D" C; while not D do C II, DẠNG BÀI TẬP VỀ ĐẶC TẢ MA TRẬN: Bài 1: Cho ma trận vuông X cấp n, n lẻ. Đặc tả hình thức các điều kiện sau: a) Tổng 2 phần tử ở 2 đầu đường chéo chính bằng 3 lần phần tử cuối cùng của hàng 1. b) Phần tử giữa của hàng cuối bằng phần tử giữa của cột cuối. Giải: Đặc tả ma trận vuông cấp n lẻ : X = (xi j)n*n xi j = x[ i, j ] i, j =1..n n = 2k + 1 , k thuôc Ṇ a, Tổng 2 phần tử ở 2 đầu đường chéo chính bằng 3 lần phần tử cuối của hàng 1 x[ 1, 1 ] + x[ n, n ] = 3 * x[ 1, n ] b, Phần tử giữa của hàng cuối bằng phần tử giữa của cột cuối x[ n, (n+1)/2]=x[ (n+1)/2 , n] Bài 2: Cho ma trận vuông cấp n, n lẻ. Đặc tả hình thức các điều kiện sau: a, Phần tử ở góc trên bên trái bằng phần tử ở góc dươi bên phải. b, Phần tử ở tâm bằng trung bình cộng của 2 phần tử đầu đường chéo phụ Giải: Đặc tả ma trận vuông cấp n lẻ : X = (xi j)n*n xi j = x[ i, j ]
- i, j =1..n n = 2k + 1 trong đó k thuôc N ̣ a, Phần tử góc trên bên trái bằng phần tử ở góc dươi bên phải x[ 1, 1 ] = x[n, n] b, Phần tử ở trung tâm bằng trung bình cộng của 2 phần tử đờng chéo phụ x[ (n+1)/2, (n+1)/2 ] = (x[1, n] + x[n, 1])/2 III, DẠNG BÀI TẬP BẮT LỖI TRONG ĐOẠN CHƯƠNG TRÌNH: Bài 1: Cho đoạn chương trình sau: Uses crt; Var u,v,t : real; Function f: real; Begin u:= u/2; f:= u+5*v-1; End; Begin Write ('u=') ; readln(u); Write ('v=') ; readln(v); t:=f; Writeln (u:6:2 ,'/2 + 5*', v:6:2,'-1=',t:6:2); Readln End. - Chương trình cho kết quả đúng hay sai? vì sao? Cho 1 ví dụ cụ thể. Giải: - Chương trình cho kết quả sai vì u là biến toàn cục, nó đợc sử dụng cả trong và ngoài CTC và lệnh u:=u/2 trong hàm f đã làm thay đổi giá trị được nhập vào của u, lúc in ra kết quả sai vì u bị giảm nửa giá trị. - Ví dụ khi nhập u=4 v=3 thì kết quả in ra là 2/2 + 5*3 - 1 = 16 Bài 2: Cho đoạn chương trình sau: Var u,v,t : real; Funtion f : real; Var x : real; Begin x:= u/2; f:= x+5*v-1; End; Begin Write ('u=') ; readln(u); Write ('v=') ; readln(v); t:=f; Writeln (u:6:2 ,'/2 + 5*', v:6:2,'-1=',t:6:2); End. - Chương trình cho kết quả đúng hay sai? - Nếu thay x bằng u thì kết quả sẽ như thế nào? Giải: - Chương trình cho kết quả đúng.
- - Nếu thay x bằng u thì kết quả sẽ sai vì khi gọi hàm f, u sẽ bị biến đổi giảm đi nửa giá trị. Bài 3: Cho đoạn chương trình sau: Uses crt; Var u,v,t : real; Function f: real; Begin u:= u/2; f:= x+5*v-1; End; Begin Write ('u=') ; readln(u); Write ('v=') ; readln(v); t:=f; Writeln (u:6:2 ,'/2 + 5*', v:6:2,'-1=',t:6:2); Until (u=v); Readln End. - Chương trình có dừng khi ta nhập v bằng u không ? giải thích? Giải: - Chương trình sẽ không dừng khi nhập u = v vì sau khi nhập 2 giá trị bằng nhau nàychương trình tính t sẽ gọi đến hàm first và lúc đó u bị giảm đi do đó u khác v và vòng lặp lại tiếp tục. Bài 4: Cho đoạn chương trình sau: Uses crt; Var u,v,t : real; Function f (u,v:real): real; Begin u:= u/2; f:= x+5*v-1; End; Begin Write ('u=') ; readln(u); Write ('v=') ; readln(v); t:=f; Writeln (u:6:2 ,'/2 + 5*', v:6:2,'-1=',t:6:2); Readln End. - Chương trình cho kết quả đúng hay sai? - Nếu thêm var trươc u, v trong hàm f thì kết quả sẽ như thế nào? Giải: - Chương trình cho kết quả đúng vì u, v trong hàm là các biến địa phương được truyền theo trị, tuy trùng tên vơi các biến toàn cục, viết như vậy sẽ khử được hiệu ứng phụ, nếu nhập vào u=4, v=3 kết quả sẽ in ra : 4/2 + 5*3 - 1 = 16 - Nếu thêm var trươc u, v trong hàm f thì kết quả sẽ sai vi sau khi gọi hàm, biến u bị thay đổi giảm đi 1/2 kết quả sẽ là : 2/2 + 5*3 - 1 = 16 ∃ ∧ ∨
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài thực thực hành excel bài thực hành số 1
7 p | 2730 | 884
-
Bài tập thực hành môn cơ sở dữ liệu 2 (Biên tập: Đậu Hải Phong)
15 p | 3740 | 860
-
Bài thực hành Excel số 9
10 p | 1595 | 627
-
Môn học Lập trình C trên Windows Bài tập thực hành
7 p | 832 | 187
-
BÀI TẬP THỰC HÀNH MÔN LẬP TRÌNH WEB A.
8 p | 778 | 180
-
BÀI TẬP THỰC HÀNH MÔN LẬP TRÌNH WEB
8 p | 670 | 145
-
Bài tập thực hành môn thiết kế lập trình C
7 p | 361 | 132
-
Bài tập thực hành Oracle 9i (bài số 1)
5 p | 358 | 116
-
Bài tập Excel - 3
6 p | 433 | 76
-
Bài tập thực hành Cấu trúc dữ liệu và giải thuật (2014)
12 p | 241 | 32
-
BÀI TẬP THỰC HÀNHMÔN LẬP TRÌNH WEB A. Thông tin chungMỗi HSSV có 1 tài khoảng
8 p | 155 | 20
-
Bài tập thực hành Môn Cấu trúc Dữ liệu
8 p | 196 | 10
-
Câu hỏi và bài tập môn cấu trúc dữ liệu và giải thuật - Trường ĐH Công nghệ Thông tin
12 p | 68 | 7
-
Báo cáo bài tập lớp - Môn: Nhập môn về lập trình
11 p | 99 | 5
-
Bài tập Nhập môn công nghệ phần mềm (Introduction to software engineering) - Bài tập tuần 05: Quản lý cấu hình phần mềm & thực hành với công cụ GIT
5 p | 83 | 4
-
Hướng dẫn lập trình cơ bản với Android - Phần 12: Bài tập thực hành
5 p | 54 | 2
-
Bài tập thực hành môn Lập trình hướng đối tượng - Trường Đại học Công gnhệ thông tin
16 p | 74 | 2
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