Tải bản đầy đủ (.ppt) (21 trang)

kính chào quí thầy cô cùng các em giáo viên dạy bùi quang hà cử nhân tin học tel 0905 807474 tiết học giáo án điện tử môn tin học 8 tuần 30 tiết 57 ngày soạn 06042009 ngày dạy 08042009 bài 9 làm v

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (476.04 KB, 21 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

Giáo viên dạy:


<b>BÙI QUANG HÀ</b>
<b>Cử nhân tin học</b>


<i><b>Tel: 0905.807474</b></i>


Tiết học giáo án điện tử
<b>MÔN TIN HỌC 8</b>


<i>Tuần 30 Tiết 57 </i>


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>Bài 9. LÀM VIỆC VỚI DÃY SỐ (TT)</b>


<b>I/ MỤC TIÊU</b>


- Học sinh nắm được cách khai báo mảng trong
Pascal.


- Học sinh làm quen mảng trên dữ liệu số nguyên
và số thực.


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>III/ TIẾN TRÌNH BÀI DẠY</b>


<b>a) Kiểm tra bài cũ </b>



</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>a) KIỂM TRA BÀI CŨ</b>


1. Các Cách khai báo
biến mảng sau đây



trong Pascal đúng hay
sai?


a. Var x: Array[10,13] of
Integer;


b. Var x: Array[3.4..4.8] of
Real;


c. Var x: Array[10..1] of
Integer;


d. Var x: Array[4..10] of
Integer;


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>a) KIỂM TRA BÀI CŨ</b>


• Em hãy cho biết cách
khai báo mảng trong
Pascal?


a. Var <Tên mảng>: Array[<chỉ
số đầu>,<chỉ số cuối>] of
<kiểu dữ liệu> ;


b. Var <Tên mảng>: Array[<chỉ
số cuối>..<chỉ số đầu>] of
<kiểu dữ liệu> ;


c. Var <Tên mảng>: Array[<chỉ


số đầu>..<chỉ số cuối>] of
<kiểu dữ liệu> ;


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>a) KIỂM TRA BÀI CŨ</b>


2. Em hãy cho biết


cách khai báo biến



<i><b>điểm</b></i>

kiểu mảng cho


50 học sinh trong



lớp?



a. Var Diem_1,Diem_2,


Diem_3,…Diem_50: Real;
b. Var Diem: Array[1..50] of


Integer ;


c. Var Diem: Array[1..50] of
Real ;


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

<b>Bài 9. LÀM VIỆC VỚI DÃY SỐ (TT)</b>
2. Ví dụ về biến mảng(tt)


Ví dụ 2. Mỗi học sinh có
thể có nhiều điểm theo
từng mơn: điểm Tốn,



điểm Văn, điểm Lí,…
Để xử lí đồng thời các
loại điểm này ta có thể
khai báo nhiều biến
mảng:
Var
DiemToan: Array[1..50]
of real;
Var
DiemVan: Array[1..50]
of real;
Var


DiemLi: Array[1..50] of
real;


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<b>2. Ví dụ về biến mảng(tt)</b>



+ Các em có thể trình bày
theo cách sau:


+ Theo cách này thì ta có
thể tính điểm trung bình
cho từng học sinh hay
cả lớp.


Var DiemToan,DiemVan,
DiemLi: Array[1..50] of


real;



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

2. Ví dụ về biến mảng(tt)



 <sub>Khi một mảng đã được </sub>


khai báo chúng ta có
thể làm việc với các
phần tử của nó:


 <sub>Gán giá trị cho các </sub>


phần tử của mảng bằng
câu lệnh:


 <sub>Nhập dữ liệu từ bàn </sub>


phím bằng câu lệnh lặp:


A[1]:=5; A[2]:=8;


DiemLi[1]:=8; DiemVan[1]:=7;
DiemToan[1]:=9


For i:=1 to 5 do readln(a[i]);
For i:=1 to 50 do


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

Việc gán giá trị, nhập giá trị và tính tốn với các
giá trị của một phần tử trong biến mảng được


thông qua thành phần nào?



GHI NHỚ 2.



<i>Việc gán giá trị, nhập giá trị và tính tốn với </i>


<i>các giá trị của một phần tử trong biến </i>



<i>mảng được thông qua chỉ số tương ứng </i>


<i>của phần tử đó.</i>



</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

<b>3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số</b>
Ví dụ 3. Viết chương trình nhập N số nguyên từ


bàn phím và in ra màn hình số nhỏ nhất và số
lớn nhất. N được nhập từ bàn phím.


<i><b>* </b></i><b>Cơng việc:</b>


<i><b>+ Xác định bài tốn</b></i>


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

<b>XÁC ĐỊNH BÀI TOÁN</b>


- INPUT: N số nguyên (n<sub>1</sub>, n<sub>2</sub>, n<sub>3</sub>, …n<sub>n</sub>)


- OUTPUT: Giá trị max:= max{n1, n2, n3, …nn}


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

<b>XÂY DỰNG THUẬT TOÁN</b>
* Thuật tốn tìm giá trị lớn cho n


số



Bước 1. max←a1; i←1


Bước 2. i←i + 1.


Bước 3. Nếu ai > n, chuyển đến


bước 6


Bước 4. ai >max, max←ai quay


lại bước 2.


Bước 5. In kết quả tìm được ra màn
hình


Bước 6. kết thúc thuật tốn.


* Thuật tốn tìm giá trị lớn và
nhỏ nhất cho N số


Bước 1. max←a1; min←a1;


i←1


Bước2. i ←i + 1.


Bước 3. Nếu i > n, chuyển đến
bước 7


Bước 4. Nếu ai>max, max←ai.



Bước 5. Nếu ai <min, min←ai


quay lại bước 2.


Bước 6. In kết quả tìm được ra
màn hình


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

<b>VIẾT CHƯƠNG TRÌNH</b>
* Phần khai báo


Program maxmin;
Uses crt;


</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

<b>VIẾT CHƯƠNG TRÌNH</b>
* Phần thân chương trình


begin
clrscr;


Write(‘Hay nhap do dai cua day so n= ’); readln(n);
Writeln(‘Nhap cac phan tu cua day so’);


<i>{*Nhập dữ liệu cho mảng*}</i>


for i:=1 to n do
Begin


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

<b>VIẾT CHƯƠNG TRÌNH</b>



<i>{*Tìm giá trị lớn nhất và nhỏ trong mảng*}</i>


max:=a[1]; mix:=a[1];
for i:=2 to n do


begin


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

<b>VIẾT CHƯƠNG TRÌNH</b>


<i>{*In kết quả ra màn hình*}</i>


writeln(‘So lon nhat la max= ’,max);
writeln(‘So lon nhat la max= ’,max);
readln


</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

<b>c) CỦNG CỐ VÀ LUYỆN TẬP (6 phút)</b>


Bài tập 4. Câu lệnh khai báo biến mảng sau đây
máy tính có thực hiện được khơng?, vì sao?
Var N: integer;


A: array[1..N] of real;


<b>Đáp án</b>


ĐÁP ÁN:


Máy tính khơng thực hiện được.


Vì chỉ số cuối chưa có giá trị cụ thể, số lượng
phần tử = <chỉ số đầu > - <chỉ số cuối>



</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

<b>d) HƯỚNG DẪN HỌC SINH TỰ HỌC Ở NHÀ(1 phút)</b>


</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21></div>

<!--links-->

×