Giáo án Tin học 8 Tuần 30 Tiết 58 Bài tập

1. MỤC TIÊU:

1.1.Kiến thức :

- Học sinh củng cố khái niệm mảng một chiều:

1.2.Kĩ năng:

-Khai báo mảng, nhập, in, truy cập các phần tử của mảng;

- Rèn kỹ năng xây dựng thuật toán tìm số lớn nhất, nhỏ nhất của một dãy số.

1.3. Thái độ:

- Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.

2. TRỌNG TÂM:

Các bài tập biến mảng

3. CHUẨN Bị:

Giáo viên: - Tài liệu, GA điện tử.-

Học sinh:- Đọc trước bài

4. TIẾN TRÌNH

4.1. Ổn định tổ chức và kiểm diện:

8A3.

4.2.Kiểm tra miệng: Ghép vào bài mới

4.3. Bài mới:

 

doc4 trang | Chia sẻ: oanh_nt | Lượt xem: 1961 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Giáo án Tin học 8 Tuần 30 Tiết 58 Bài tập, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Tiết 58 Tuần 30 BÀI TẬP 1. MỤC TIÊU: 1.1.Kiến thức : - Học sinh củng cố khái niệm mảng một chiều: 1.2.Kĩ năng: -Khai báo mảng, nhập, in, truy cập các phần tử của mảng; - Rèn kỹ năng xây dựng thuật toán tìm số lớn nhất, nhỏ nhất của một dãy số. 1.3. Thái độ: - Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành. 2. TRỌNG TÂM: Các bài tập biến mảng 3. CHUẨN Bị: Giáo viên: - Tài liệu, GA điện tử.- Học sinh:- Đọc trước bài 4. TIẾN TRÌNH 4.1. Ổn định tổ chức và kiểm diện: 8A3............................ 4.2.Kiểm tra miệng: Ghép vào bài mới 4.3. Bài mới: HOẠT ĐỘNG CỦA GV VÀ HS KIẾN THỨC CẦN ĐẠT “Có thể xem biến mảng là một biến được tạo từ nhiều biến có cùng kiểu, nhưng chỉ dưới một tên duy nhất.” Phát biểu đó đúng hay sai? Hãy nêu các lợi ích của việc sử dụng biến mảng trong chương trình? Các khai báo biến mảng sau đây trong Pascal đúng hay sai: varX:Array[10,13] Of Integer; var X: Array[5..10.5] Of Real; varX:Array[3.4..4.8]Of Integer; var X: Array[10..1] Of Integer; var X: Array[4..10] Of Real; Câu lệnh khai báo mảng sau đây có được máy tính thực hiện không? var N: integer; A: array[1..N] of real; Viết chương trình Pascal sử dụng mảng để nhập từ bàn phím các phần tử của một dãy số. Độ dài của dãy cũng được nhập từ bàn phím. Đoạn chương trình sau dùng để sắp xếp lại dãy số được ghi trong mảng A[i], i = 1,2,..., N, theo thứ tự tăng dần: For i:=1 to N do For j:=i to N do If A[i] > A[j] then Begin Tg:=A[i]; A[i]:=A[j]; A[j]:=Tg; End; Hãy kiểm tra tính đúng đắn của đoạn chương trình trên. Hãy viết chương trình nhập 5 số ngyên từ bàn phím và ghi ra màn hình số lớn nhất trong 5 số đó theo hai cách: không sử dụng biến mảng và sử dụng biến mảng. Viết chương trình sử dụng biến mảng để tính giá trị trung bình của tổng N số nguyên được nhập vào từ bàn phím. Viết chương trình sử dụng biến mảng để tính giá trị trung bình của tổng N số nguyên được nhập vào từ bàn phím. Chương trình nhập n số nguyên từ bàn phím và tính tổng các số dương: 1. Đúng. 2. Lợi ích chính của việc sử dụng biến mảng là rút gọn việc viết chương trình, có thể sử dụng câu lệnh lặp để thay nhiều câu lệnh. Ngoài ra chúng ta còn có thể lưu trữ và xử lí nhiều dữ liệu có nội dung liên quan đến nhau một cách hiệu quả. 3. Đáp án a) Sai. Phải thay dấu phẩy bằng hai dấu chấm; b) và c) Sai, vì giá trị nhỏ nhất và lớn nhất của chỉ số mảng phải là số nguyên; d) Sai, vì giá trị đầu của chỉ số mảng phải nhỏ hơn hoặc bằng chỉ số cuối; e) Đúng. 4. Không. Giá trị nhỏ nhất và lớn nhất của chỉ số mảng phải được xác định trong phần khai báo chương trình. 5. Chương trình có thể như sau: uses crt; var N, i: integer; A: array[1..100] of real; begin clrscr; write(’Nhap so phan tu cua mang, n= ’); readln(n); for i:=1 to n do begin write(’Nhap gia tri ’,i,’cua mang, a[’,i,’]= ’); read(a[i]) end; end. 6. Đúng. 7. a) Nếu không sử dụng biến mảng, chương trình có thể dài như sau: uses crt; var So_1, So_2, So_3, So_4, So_5, Max: integer; begin clrscr; write('Nhap so thu nhat: '); readln(So_1); write('Nhap so thu hai: '); readln(So_2); write('Nhap so thu ba: '); readln(So_3); write('Nhap so thu tu: '); readln(So_4); write('Nhap so thu nam: '); readln(So_5); Max:=So_1; If Max<So_2 then Max:=So_2; If Max<So_3 then Max:=So_3; If Max<So_4 then Max:=So_4; If Max<So_5 then Max:=So_5; writeln('So lon nhat: ',Max); end. b) Nếu sử dụng biến mảng, chương trình chỉ ngắn gọn như sau: uses crt; var i, Max: integer; A: array[1..5] of integer; begin clrscr; for i:=1 to 5 do begin write('Nhap so thu ',i,':'); readln(A[i]) end; Max:=a[1]; for i:=2 to 5 do If Max<a[i] then Max:=a[i]; writeln('So lon nhat: ',Max); end. 8/ uses crt; var N, i: integer; TB: real; A: array[1..100] of real; begin clrscr; write(’Nhap so phan tu cua mang, n= ’); read(n); for i:=1 to n do begin write(’Nhap gia tri ’,i,’cua mang, a[’,i,’]= ’); readln(a[i]) end; TB:=0; for i:=1 to n do TB:=TB+a[i]; TB:=TB/n; write(’Trung binh bang ’,TB); end. 9/ uses crt; var n,k,S: integer; X: array[1..1000] of integer; begin clrscr; write('Nhap so tu nhien n: '); readln(n); for k:=1 to n do begin write('Nhap X[',k,']='); readln(X[k]) end; S:=0; for k:=1 to n do if X[k]>0 then S:=S+X[k]; writeln('Tong cac duong S=',S); readln; end. 4.4. Câu hỏi, bài tập củng cố : Đã củng cố trong phần bài mới 4.5. Hướng dẫn học sinh tự học: Nhận xét rút kinh nghiệm giờ bài tập. Học sinh về nhà ôn bài Tiết tới thực hành 5. RUÙT KINH NGHIEÄM: * Noäi dung: ..............................................................................................................................................* Phöông phaùp ............................................................................................................................................. * Söû duïng ÑDDH, thieát bò daïy hoïc

File đính kèm:

  • docTiết 58.doc