Tải bản đầy đủ (.ppt) (20 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 (462.66 KB, 20 trang )

<span class='text_page_counter'>(1)</span>Bài 9: LÀM VIỆC VỚI DÃY SỐ.

<span class='text_page_counter'>(2)</span> Làm việc với dãy số 1 3. Dãy số và biến mảng. Ví dụ: Viết chương trình nhập điểm kiểm tra của các học sinh trong lớp. - Nhập và lưu điểm cho một học sinh. - Nhập và lưu điểm cho 2 học sinh. Khai báo 1 biến như sau: Var diem_1: real; Write (‘Nhap diem= ‘); Readln(diem_1); Khai báo 2 biến như sau: Var diem_1, diem_2: real; Write (‘Diem hs 1= ‘); Readln(diem_1); Write (‘Diem hs 2= ‘); Readln(diem_2);.

<span class='text_page_counter'>(3)</span> Làm việc với dãy số 1 3. Dãy số và biến mảng. Ví dụ: Viết chương trình nhập điểm kiểm tra của các học sinh trong lớp. - Nhập và lưu điểm cho một học sinh - Nhập và lưu điểm cho 2 học sinh. ?. Nhập và lưu điểm cho 50 học sinh thì sao?. Khai báo n biến như sau: Var diem_1, diem_2, diem_3, diem_4, .. , diem_50: real; 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 n= ‘); Readln(diem_50); Những hạn chế: Phải khai báo quá nhiều biến. Chương trình phải viết khá dài..

<span class='text_page_counter'>(4)</span> Làm việc với dãy số 1 3. Dãy số và biến mảng. Em hiểu thế nào là dữ liệu kiểu mảng ?. ?. ?. Vậy:. Vậy em hiểu biến mảng là gì?. Khắc phục những hạn chế: - Ghép chung các biến trên thành một dãy. - Đặt chung một tên và đặt cho mỗi phần tử một chỉ số.. Dữ liệu kiểu mảng: Là một tập hợp hữu hạn các phần tử có thứ tự, mọi phần tử đều có cùng kiểu dữ liệu (số nguyên hoặc số thực). Việc sắp thứ tự thực hiện bằng cách gán cho mỗi phần tử một chỉ số. (số nguyên). Biến mảng: khi khai báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là biến mảng.. Giá trị của biến mảng là một mảng, tức một dãy số (số nguyên, hoặc số thực)..

<span class='text_page_counter'>(5)</span> Làm việc với dãy số 1 3. Dãy số và biến mảng. Ví dụ:. A. 8. 12. i. 1. 2.  Tên mảng: Trong đó:.  Chỉ số:. 5 3. 9. 17. 4. 5. 3 6. A. i.  Số phần tử của mảng:. 6.  Kiểu dữ liệu của các phần tử:. Kiểu số nguyên.  Khi tham chiếu đến phần tử thứ i, ta viết A[i] Ví dụ: A[5]=. 17.

<span class='text_page_counter'>(6)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. a) Cách khai báo mảng trong Pascal: Ví dụ1: Cách khai báo đơn giản một biến mảng trong ngôn ngữ Pascal như sau:. var Tuoi: array[21..80] of integer;. Tên biến. Số lượng pt. Kiểu dữ liệu chung. var Chieucao: array[1..50] of real; Chỉ số đầu. Chỉ số cuối. Số phần tử của mảng = chỉ số cuối – chỉ số đầu + 1..

<span class='text_page_counter'>(7)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. Cách khai báo mảng trong pascal?. a) Cách khai báo mảng trong Pascal: Var <tên biến mảng>: array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>; Trong đó:     . Array, of là từ khóa của chương trình. Tên biến mảng do người dùng đặt. Chỉ số đầu phải <= chỉ số cuối. (Số nguyên) Giữa hai chỉ số là dấu .. Kiểu dữ liệu có thể là số nguyên hoặc số thực..

<span class='text_page_counter'>(8)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. a) Cách khai báo mảng trong Pascal:. Hãy khai báo các mảng sau:. 1/ Mảng Diem gồm 40 phần tử thuộc kiểu dữ liệu số thực? 2/ Mảng A, B gồm 10 phần tử thuộc kiểu dữ liệu số nguyên?. Var Vardiem diem: :array[1..40] array[1..40]ofofreal; real;. Var VarA: A:array[1..10] array[1..10]ofofinteger; integer; B: B:array[1..10] array[1..10]ofofinteger; integer; Var VarAA,B: ,B:array[1..10] array[1..10]ofofinteger; integer;.

<span class='text_page_counter'>(9)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. BT2/79: Các khai báo biến mảng sau trong Pascal đúng hay sai? BT 4 /79: 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?. a) Cách khai báo mảng trong Pascal:. A. Var X : Array[10,13] of Integer; B. Var X : Array[5..10.5] of Real; Không xác định. Var N : integer; A : array[1..N] of real; KHÔNG. Lưu ý:. - Số phần tử của mảng = chỉ số cuối – chỉ số đầu + 1 - Kích thước của mảng phải được khai báo bằng một con số cụ thể.

<span class='text_page_counter'>(10)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. Cú pháp: Ví dụ1:. Hãy xác định: A[1], A[3], A[5], A[10] ?. b) Truy cập đến giá trị phần tử trong mảng:. Tên Tênmảng mảng[Chỉ [Chỉsố] số] Cho mảng A chứa các giá trị sau: 2. 5. 7. 1. 10. 3. 4. 5. 6. 7. A[1], A[10]: không xác định A[3]=2; A[5]=7.

<span class='text_page_counter'>(11)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. Cú pháp: Ví dụ2:. Giá trị của các phần A[3], A[4], A[6] sẽ là bao nhiêu?. b) Truy cập đến giá trị phần tử trong mảng: Có thể thực hiện các thao tác nào với các Tên mảng [Chỉ số] Tên mảngphần [Chỉtửsố] trong mảng?. Cho các câu lệnh sau: A[3]:=2; A[4]:=5; A[6]:=A[3]+A[4];. A[3]=2; A[4]=5; A[6]=7. - Có thể gán giá trị, đọc giá trị và thực hiện tính toán với các phần tử trong mảng.

<span class='text_page_counter'>(12)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. c) Lệnh nhập giá trị cho biến mảng: - Sử dụng lệnh Read (Readln) kết hợp với For ... do. Tiếp ví dụ 1 SGK/75. Viết chương trình nhập điểm kiểm tra của các học sinh trong 1 lớp và in ra điểm cao nhất? - Yêu cầu 1: Thực hiện việc khai báo các biến diem_1, diem_2, …,diem_50 bằng biến mảng? Var diem : array[1..50] of real; array.

<span class='text_page_counter'>(13)</span> 2. Làm việc với dãy số Vậy cách khai báo và sử Ví dụ về biến mảng. c) Lệnh nhập giá trị cho biến mảng:. dụng biến mảng có lợi ích gì?. - Sử dụng lệnh Read (Readln) kết hợp với For ... do. - Yêu cầu 2: Viết chương trình nhập điểm cho 50 học sinh ?. 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 n= ‘); Readln(diem_50);. For i:=1 to 50 do Begin write(‘nhap diem hs’,i,’:’); readln(diem[i]); End;.

<span class='text_page_counter'>(14)</span> Làm việc với dãy số 2. Ví dụ về biến mảng. d. Xuất giá trị của mảng ra màn hình: Sử dụng lệnh Write (Writeln) kết hợp với For ... do. - Yêu cầu 3: So sánh điểm của học sinh và in ra màn hình điểm cao nhất? Max:=diem_1; If diem_1<diem_2 then max:=diem_2; If diem_2<diem_3 then max:=diem_3; ………. If diem_49<diem_50 then ax:=diem_50; Writeln(‘diem cao nhat la:',max:2:1);. Max:=diem[1]; For i:=2 to 7 do if diem [i]>Max then Max:=diem[i]; Writeln(diem cao nhat la:‘ , max:2:1);.

<span class='text_page_counter'>(15)</span> 3. Làm việc với dãy số Tìm giá trị lớn nhất và nhỏ nhất.. Bài toán: Viết chương trình nhập điểm thi học kì môn Tin học của một lớp gồm N học sinh. In ra màn hình điểm thi cao nhất và thấp nhất.. Input: Dãy số A gồm điểm của N học sinh Output: Max, Min của dãy số. Hãy nêu ý tưởng tìm số lớn nhất và nhỏ nhất của dãy số.

<span class='text_page_counter'>(16)</span> THUẬT TOÁN TÌM MAX Số này mới lớn nhất. ồ! Tìm Sốranày số lớnlớn nhất hơnrồi!. Số này lớn nhất. 7.0. MAX. 4.5. 8.0. 9.5. 6.0.

<span class='text_page_counter'>(17)</span> 3. Làm việc với dãy số Tìm giá trị lớn nhất và nhỏ nhất.. Ý TƯỞNG TÌM MAX: - Đặt giá trị của max=A[1]. - Lần lượt cho i chạy từ 2 đến n, so sánh giá trị A[2] với giá trị của max, nếu A[2]>max thì max nhận giá trị mới là A[2].. Tương tự ta tìm min bằng cách: - Đặt giá trị của min=A[1]. - Lần lượt cho i chạy từ 2 đến n, so sánh giá trị A[2] với giá trị của min, nếu A[2]<min thì min nhận giá trị mới là A[2].. * Đoạn chương trình Max:=A[1];. For i:=2 to N do IF A[i] > Max Then Max:=A[i];.

<span class='text_page_counter'>(18)</span> Program vd1; Uses crt; Var A: Array[1..100] of real; i,n: integer; Max,min: real;. Khai báo biến mảng. BEGIN Clrscr; write(‘ Nhap vao so học sinh : ’) ; readln(n) ; For i := 1 to n do Begin write(‘ Nhap diem Hs thu ‘,i,’ : ‘) ; readln(A[i]) ; End; Max:=A[1]; For i := 2 to n do If A[i]>Max Then Max := A[i]; Writeln(‘ Diem lon nhat la ', Max:5:1) ; Min:=A[1]; For i := 2 to n do If A[i]<Min Then Min := A[i]; Writeln(‘ Diem nho nhat la ', Min:5:1) ; Readln END.. Nhập vào biến mảng. Tìm số lớn nhất và số nhỏ nhất.

<span class='text_page_counter'>(19)</span> Chương trình chạy và cho kết quả như sau: Nhap vao so hoc sinh : 7 Nhap diem hs thu 1 : 7.0 Nhap diem hs thu 2 : 9.0 Nhap diem hs thu 3 : 4.5 Nhap diem hs thu 4 : 6.0 Nhap diem hs thu 5 :. 9.5. Nhap diem hs thu 6 :. 8.0. Nhap diem hs thu 7 :. 5.5. Diem lon nhat la 9.5 Diem nho nhat la 4.5.

<span class='text_page_counter'>(20)</span>

<span class='text_page_counter'>(21)</span>

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

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