Tải bản đầy đủ (.pptx) (16 trang)

Bai 9 Lam viec voi day so

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 (262.3 KB, 16 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>

Bài 9



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

BÀI 9: LÀM VIỆC VỚI DÃY SỐ


<b>1. DÃY SỐ VÀ BIẾN MẢNG</b>:


<b>Ví dụ:</b>


- Nhập và lưu điểm
cho một học sinh


Write (‘Nhap diem= ‘);
Readln(diem_1);


- Nhập và lưu điểm
cho 2 học sinh


<b>Khai báo 1 biến như sau:</b>


Var diem_1: real;


<b>Khai báo 2 biến như sau:</b>


Var diem_1, diem_2: real;


<b>- Nhập và lưu điểm cho 50 học sinh thì sao?</b>


Write (‘Diem hs 1= ‘);
Readln(diem_1);


Write (‘Diem hs 2= ‘);
Readln(diem_2);



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

Những hạn chế:


<sub> Phải khai báo quá nhiều biến.</sub>
<sub> Chương trình phải viết khá dài</sub>


Write (‘Diem hs 1= ‘); Readln(diem_1);
Write (‘Diem hs 2= ‘); Readln(diem_2);
Write (‘Diem hs 3= ‘); Readln(diem_3);
Write (‘Diem hs 4= ‘); Readln(diem_4);
……


……


Write (‘Diem hs 50 = ‘);
Readln(diem_50);


- Nhập và lưu điểm cho 50 học sinh thì sao?


<b>Khai báo n biến như sau:</b>


<b>Var diem_1, diem_2, diem_3, </b>


<b>diem_4, .. , diem_50: real</b>;
Khắc phục những hạn chế:


<sub> Lưu các dữ liệu liên quan bằng một biến duy nhất.</sub>
<sub> Gán cho mỗi biến một chỉ số</sub><sub>.</sub>


<b>Var </b>



<b> diem: array[1..50] of real;</b>


<b>……</b>


For i:=1 to 50 do
Begin


write(‘diem hs’,i,’:’);
readln(diem[i]);


End;


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

:


<b>Dữ liệu kiểu mảng: Là một </b><i><b>tập hợp hữu hạn các phần </b></i>


<i><b>tử</b></i> <i><b>có thứ tự</b></i><b>, mọi phần tử đều </b> <i><b>có cùng một kiểu dữ </b></i>


<i><b>liệu.</b></i>


<i><b>Vậy biến mảng là gì?</b></i>



<b>Biến mảng</b> <b>là biến được khai báo kiểu dữ liệu </b>
<b>là kiểu mảng.</b>


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

<b>2. VÍ DỤ VỀ BIẾN MẢNG:</b>


<i><b>Khi khai báo biến mảng </b></i>
<i><b>cần chỉ rõ những yếu tố </b></i>



<i><b>nào?</b></i>


<b>Khai báo mảng cần chỉ rõ:</b>
<b> + Tên biến mảng.</b>


<b> + Số lượng phần tử.</b>


<b> + Kiểu dữ liệu chung của các phần tử.</b>


17 20 24 10 16 22 18



A



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

17 20 24 10 16 22 18



A



1 2 3 4 5 6 7


Trong đó


 <b><sub>Khi tham chiếu đến phần tử thứ i</sub></b>
<b>Ta</b> <b>viết A[i]</b>


 <b><sub>Tên mảng</sub></b> <sub>: </sub>


 <b><sub>Số phần tử của mảng</sub></b><sub>:</sub>


22




 <b><sub>Kiểu dữ liệu của các phần tử:</sub></b>


<b>A</b>


<b>7</b>


<b>Kiểu nguyên</b>


<b>A[6] =22</b>


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

<b>Var </b><i><b><</b><b>tên biến mảng</b></i><b>>: array[<</b><i><b>chỉ số đầu</b></i><b>>..<</b><i><b>chỉ </b></i>


<i><b>số cuối</b></i><b>>] of <</b><i><b>kiểu dữ liệu</b></i>>;


<b>Cú pháp khai báo mảng:</b>


<b>Trong đó: </b>


- <b><sub>Array, of</sub><sub> là từ khóa của chương trình.</sub></b>


- <b><sub><Tên biến mảng> do người dùng đặt.</sub></b>


- <b><sub><Chỉ số đầu> <= <chỉ số cuối> (Số nguyên)</sub></b>


- <b><sub>Kiểu dữ liệu có thể là </sub></b> <b><sub>số nguyên hoặc số </sub></b>


<b>thực</b>.


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

<b>Sử dụng khai báo mảng để khai báo cân nặng </b>


<b>và chiều cao của các bạn học sinh trong lớp </b>
<b>em</b>.


<b>Bài làm:</b>


<b>Số lượng học sinh trong </b>
<b>lớp là bao nhiêu</b>?


<b>Cân nặng và chiều cao </b>
<b>thuộc những kiểu dữ </b>


<b>liệu nào?</b>


BÀI 9: LÀM VIỆC VỚI DÃY SỐ


<b>Ví dụ:</b>


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

<b>Đúng</b>
<b>Sai</b>
<b>Sai</b>
<b>Sai</b>


<b>Sai</b>


Cách khai báo biến nào sau đây trong pascal đúng
hay sai? Giải thích?


a) <b>Var </b>X: Array[10, 13] <b>of</b> integer;
b) <b>Var </b>X: Array[5..10.5] <b>of</b> real;


c) <b>Var </b>X: Array[3.4..4.8] <b>of</b> integer;


d) <b>Var </b>X: Array[10.. 1] <b>of</b> integer;


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

<b>3. TÌM GIÁ TRỊ LỚN NHẤT VÀ NHỎ NHẤT CỦA DÃY SỐ</b>


Bước 1. MAX  a[1]; i  1.


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


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


Bước 4. Nếu a[i] > MAX, MAXa[i]; Trong
trường hợp ngược lại (MAX <= a[i]), giữ
nguyên MAX . Quay lại bước 2.


Bước 5. Kết thúc thuật toán


INPUT: Dãy A các số a[1], a[2], ..., a[n] (n  1).


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

<b>3. TÌM GIÁ TRỊ LỚN NHẤT VÀ NHỎ NHẤT CỦA DÃY SỐ</b>


Bước 1. MIN  a[1]; i  1.


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


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


Bước 4. Nếu a[i] < MIN, MINa[i]. Trong
trường hợp ngược lại (MIN >= a[i]), giữ
nguyên MIN . Quay lại bước 2.



Bước 5. Kết thúc thuật toán


INPUT: Dãy A các số a[1], a[2], ..., a[n] (n  1).


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

<b>DẶN DÒ</b>



-<sub> Về học bài này.</sub>


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×