Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
659,5 KB
Nội dung
Tại sao khi tham gia các hoạt động tập thể chúng ta thường phải xếp hàng? Xếp hàng vào lớp Xếp hàng mua vé xe Xếp hàng tập thể dục . Việc sắp xếp thành hàng như thế sẽ làm cho các hoạt động được diễn ra trật tự, dễ quản lý và nhanh chóng hơn. 1. Dãy số và biến mảng Ví dụ: Với các ngôn ngữ lập trình, khi làm việc với nhiều con số thì sao nhỉ? Trong ngôn ngữ lập trình, các dữ liệu thường được bố trí theo dãy việc khai báo và xử lí dữ liệu trở nên đơn giản hơ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 hinh điểm thi cao nhất. Bài toán đặt vấn đề: Hãy xác định Input, Output của bài toán trên ? * Dữ liệu nhập vào (INPUT): diem_1, diem_2, diem_3, diem_4, ., diem_N * Dữ cần tính và in ra (OUTPUT): Max Với những câu lệnh đã học , giải bài toán trên sẽ gặp khó khăn gì ? Khai báo biến quá lớn (diem_1, diem_2, ., diem_N ) và rất nhiều câu lệnh IF Để giải quyết vấn đề trên, hầu hết các ngôn ngữ lập trình đều sử dụng một kiểu dữ liệu, gọi là kiểu mảng Mảng là một dãy hữu hạn các phần tử cùng kiểu Biến có kiểu dữ liệu là kiểu mảng được gọi là biến mảng 7 9 4.5 6 . 8 5.5 2. Ví dụ về biến mảng: Khai báo biến mảng trong Pascal Var Tên biến : array[< chỉ số đầu> < chỉ số cuối>] of <kiểuphần tử>; Trong đó : - Chỉ số đầu, chỉ số cuối : là hai số nguyên hoặc biểu thức nguyên - Chỉ số đầu chỉ số cuối Var diemtin : array[1 40] of real; Ví dụ: Var tuoi : array[1 50] of integer; Var diemtin, diemtoan, diemvan : array[1 40] of real; Các thông số trong mảng 7.0 9.0 4.5 6.0 . 8.0 5.5 Điemtin 1 2 3 4 5 6 40 8.0 Khi gán, đọc, tính toán với các giá trị của phần tử thứ i ta viết A[i] VD A[6] := 8.0 Tên biến mảng : Diemtin Số phần tử của mảng ( số học sinh trong lớp) : 40 Kiểu dữ liệu của các phần tử: Kiểu thực. Khai báo: Var diemtin : array[1 40] of real; Diemtin n 1. Nhập số phần tử ( số HS) của mảng A Write( Nhap n= ); Readln(n); 2. Nhập vào giá trị của các phần tử trong mảng (diemtin[i] ) For i:=1 to n do Begin write(diem cua hs thu ,i, : ); readln(diemtin[i]); end; . Các bước Thể hiện bằng pascal a. Đọc vào biến mảng với n = 7 5.58.09.56.04.59.07.0 Ví dụ: Nhập điểm thi tin học của học sinh trong lớp Lợi ích của việc sử dụng biến mảng Writeln( Diem tin hoc cua lop : ); For i:=1 to n do Begin Textcolor(i); Write(diemtin[i]:4:1); End; Diem tin hoc cua lop : 1. Thông báo 2. In giá trị của các phần tử 7.0 9.0 4.5 6.0 9.5 8.0 5.5 Kết quả in ra màn hình: Ví dụ: In mảng vừa nhập b. In các phần tử trong biến mảng Các bước Thể hiện bằng pascal 3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số 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 hinh đ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ố [...]... và số nhỏ nhất 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 Ghi nhớ! Dữ liệu kiểu mảng là một tập hợp hữu hạn các phần tử được xắp xếp theo dãy và mọi phần tử đều...thuật toán tìm max Số này mới lớn nhất Số này lớn nhất 7.0 MAX 4.5 8. 0 ồ! Số này Tìm ra lớn hơn số lớn nhất rồi! 9. 5 6.0 * ý tưởng tìm max: - Đặt giá trị Max = a1 - Lần lượt cho i chạy từ 2 đến N, so sánh giá trị ai với giá trị Max, nếu ai > Max thì Max nhận giá trị mới là ai * Đoạn chương . mảng 7.0 9. 0 4.5 6.0 . 8. 0 5.5 Điemtin 1 2 3 4 5 6 40 8. 0 Khi gán, đọc, tính toán với các giá trị của phần tử thứ i ta viết A[i] VD A[6] := 8. 0 Tên. mảng với n = 7 5. 58. 09. 56.04. 59. 07.0 Ví dụ: Nhập điểm thi tin học của học sinh trong lớp Lợi ích của việc sử dụng biến mảng Writeln( Diem tin hoc cua lop