Chào mừng quý vị đến với website của ...
Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tài liệu của Thư viện về máy tính của mình.
Nếu chưa đăng ký, hãy nhấn vào chữ ĐK thành viên ở phía bên trái, hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay phía bên trái.
Nếu chưa đăng ký, hãy nhấn vào chữ ĐK thành viên ở phía bên trái, hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay phía bên trái.
Bài tập và thực hành 3
(Tài liệu chưa được thẩm định)
Nguồn: http://soanbai.violet.vn
Người gửi: Thư viện tham khảo (trang riêng)
Ngày gửi: 17h:17' 17-07-2015
Dung lượng: 585.0 KB
Số lượt tải: 2
Nguồn: http://soanbai.violet.vn
Người gửi: Thư viện tham khảo (trang riêng)
Ngày gửi: 17h:17' 17-07-2015
Dung lượng: 585.0 KB
Số lượt tải: 2
Số lượt thích:
0 người
Công ty Cổ phần Mạng giáo dục Bạch Kim - 27 Huỳnh Thúc Kháng, Đống Đa, Hà Nội
Trang bìa
Trang bìa:
TIẾT 20: BÀI TẬP Kiểm tra bài cũ
Câu hỏi 1:
* Câu hỏi 1 Phát biểu nào sau đây về mảng là không chính xác? Trả lời
A. Chỉ số của mảng không nhất thiết bắt đầu từ 1
B. Có thể xây dựng mảng nhiều chiều
C. Xâu kí tự cũng có thể xem như là một loại mảng
D. Độ dài tối đa của mảng là 255
Câu hỏi 2:
* Câu hỏi 2 Thế nào là khai báo biến mảng gián tiếp? Trả lời
A. Khai báo mảng của các bản ghi
B. Khai báo mảng xâu kí tự
C. Khai báo mảng hai chiều
D. Khai báo thông qua kiểu mảng đã có
Bài tập
Bài 1:
1. Bài tập 1 Viết CT tạo mảng A gồm N latex((N<=100)) số nguyên. Tính tổng các phần tử của mảng là bội của một số nguyên dương k cho trước. Giải Var S, n, k, i : integer; A: array[1..100] of integer; Begin Write(‘Nhap n = ’); readln(n); {tao mang} For i:=1 To n Do begin write(‘phan tu thu ’,i,’ =’); readln(A[i]); end; write(‘Nhap k = ’); readln(k); S := 0; {khoi tao S ban dau} {tinh tong} For i:=1 To n Do If A[i] mod k = 0 Then S := S A[i]; Writeln(‘Tong can tinh la ’, S); End. Bài 2:
2. Bài tập 2 Tìm phần tử lớn nhất của dãy số nguyên (với latex(n<=250) và A[i]<=500) nếu dãy có nhiều phần tử cùng giá trị thì đưa ra chỉ số của phần tử lớn nhất đầu tiên. Giải Thuật toán 1. Nhập n và dãy latex(a_1,...,a_n;) 2. Max latex(larr a_1; i larr 1;) 3. Nếu i>N đưa ra MAX và chỉ số i latex(=>) Kết thúc; 4. Nếu a[i]>max thì max latex(larr)a[i], i latex(larr) i 1 latex(=>) quay lại bước 3. Write(‘ Nhap vao so luong phan tu:’); Readln(n); For i:=1 to n do begin write(‘ Phan tu thu ’ ,i, ’ = ’); readln(a[i]) end; Max:=a[1]; csmax:=1; For i :=2 to n do IF a[i]>max then begin max:=a[i]; csmax:=i; end; Bài 3:
3. Bài tập 3 Nhập vào một dãy A tăng gồm N (N latex(<=) 250) số nguyên dương khác nhau và một số k. Cho biết vị trí của số hạng có giá trị bằng k trong dãy (nếu có)? Giải Lần lượt từ số hạng thứ nhất, so sánh giá trị số hạng đang xét với k cho đến khi gặp được số hạng bằng k, hoặc dãy đã được xét hết và không có số hạng nào có giá trị bằng k. Tim_thay := false; For i := 1 to n do IF A[i] = k then Begin Tim_thay:=true; cs:=i; break; end; IF tim_thay then writeln(‘Chi so tim duoc: ’,i) else writeln(‘Khong tim thay’); Củng cố
Bài 1:
* Bài 1 Phương án nào dưới đây là khai báo mảng hợp lệ? Trả lời
A. Mang : ARRAY[0..10] OF INTEGER
B. Mang : ARRAY[0..10] : INTEGER
C. Mang : INTEGER OF ARRAY[0..10]
D. Mang : ARRAY(0..10) : INTEGER
Bài 2:
* Bài 2 Cho khai báo sau: a : array[0..16] of integer; Câu lệnh nào dưới đây sẽ in ra tất cả các phần tử của mảng trên? Trả lời
A. for k := 1 to 16 do write(a[k]);
B. for k := 16 downto 0 do write(a[k]);
C. for k:= 0 to 15 do write(a[k]);
D. for k := 16 down to 0 write(a[k]);
Dặn dò và kết thúc
Dặn dò:
DẶN DÒ - Đọc kỹ lại bài đã học. - Về nhà thực hành các bài đã giải vào máy tính. - Chuẩn bị trước bài mới. Kết thúc:
Trang bìa
Trang bìa:
TIẾT 20: BÀI TẬP Kiểm tra bài cũ
Câu hỏi 1:
* Câu hỏi 1 Phát biểu nào sau đây về mảng là không chính xác? Trả lời
A. Chỉ số của mảng không nhất thiết bắt đầu từ 1
B. Có thể xây dựng mảng nhiều chiều
C. Xâu kí tự cũng có thể xem như là một loại mảng
D. Độ dài tối đa của mảng là 255
Câu hỏi 2:
* Câu hỏi 2 Thế nào là khai báo biến mảng gián tiếp? Trả lời
A. Khai báo mảng của các bản ghi
B. Khai báo mảng xâu kí tự
C. Khai báo mảng hai chiều
D. Khai báo thông qua kiểu mảng đã có
Bài tập
Bài 1:
1. Bài tập 1 Viết CT tạo mảng A gồm N latex((N<=100)) số nguyên. Tính tổng các phần tử của mảng là bội của một số nguyên dương k cho trước. Giải Var S, n, k, i : integer; A: array[1..100] of integer; Begin Write(‘Nhap n = ’); readln(n); {tao mang} For i:=1 To n Do begin write(‘phan tu thu ’,i,’ =’); readln(A[i]); end; write(‘Nhap k = ’); readln(k); S := 0; {khoi tao S ban dau} {tinh tong} For i:=1 To n Do If A[i] mod k = 0 Then S := S A[i]; Writeln(‘Tong can tinh la ’, S); End. Bài 2:
2. Bài tập 2 Tìm phần tử lớn nhất của dãy số nguyên (với latex(n<=250) và A[i]<=500) nếu dãy có nhiều phần tử cùng giá trị thì đưa ra chỉ số của phần tử lớn nhất đầu tiên. Giải Thuật toán 1. Nhập n và dãy latex(a_1,...,a_n;) 2. Max latex(larr a_1; i larr 1;) 3. Nếu i>N đưa ra MAX và chỉ số i latex(=>) Kết thúc; 4. Nếu a[i]>max thì max latex(larr)a[i], i latex(larr) i 1 latex(=>) quay lại bước 3. Write(‘ Nhap vao so luong phan tu:’); Readln(n); For i:=1 to n do begin write(‘ Phan tu thu ’ ,i, ’ = ’); readln(a[i]) end; Max:=a[1]; csmax:=1; For i :=2 to n do IF a[i]>max then begin max:=a[i]; csmax:=i; end; Bài 3:
3. Bài tập 3 Nhập vào một dãy A tăng gồm N (N latex(<=) 250) số nguyên dương khác nhau và một số k. Cho biết vị trí của số hạng có giá trị bằng k trong dãy (nếu có)? Giải Lần lượt từ số hạng thứ nhất, so sánh giá trị số hạng đang xét với k cho đến khi gặp được số hạng bằng k, hoặc dãy đã được xét hết và không có số hạng nào có giá trị bằng k. Tim_thay := false; For i := 1 to n do IF A[i] = k then Begin Tim_thay:=true; cs:=i; break; end; IF tim_thay then writeln(‘Chi so tim duoc: ’,i) else writeln(‘Khong tim thay’); Củng cố
Bài 1:
* Bài 1 Phương án nào dưới đây là khai báo mảng hợp lệ? Trả lời
A. Mang : ARRAY[0..10] OF INTEGER
B. Mang : ARRAY[0..10] : INTEGER
C. Mang : INTEGER OF ARRAY[0..10]
D. Mang : ARRAY(0..10) : INTEGER
Bài 2:
* Bài 2 Cho khai báo sau: a : array[0..16] of integer; Câu lệnh nào dưới đây sẽ in ra tất cả các phần tử của mảng trên? Trả lời
A. for k := 1 to 16 do write(a[k]);
B. for k := 16 downto 0 do write(a[k]);
C. for k:= 0 to 15 do write(a[k]);
D. for k := 16 down to 0 write(a[k]);
Dặn dò và kết thúc
Dặn dò:
DẶN DÒ - Đọc kỹ lại bài đã học. - Về nhà thực hành các bài đã giải vào máy tính. - Chuẩn bị trước bài mới. Kết thúc:
 
↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT ↓
Các ý kiến mới nhất