Bài 11. Kiểu mảng

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Trần Thị Nhung
Ngày gửi: 21h:15' 01-11-2020
Dung lượng: 420.5 KB
Số lượt tải: 308
Nguồn:
Người gửi: Trần Thị Nhung
Ngày gửi: 21h:15' 01-11-2020
Dung lượng: 420.5 KB
Số lượt tải: 308
Số lượt thích:
0 người
Bài 11: KIỂU MẢNG
(tiết 3)
? Khai báo biến để lưu trữ điểm thi học kì môn tin học của 40HS lớp 10A. Thực hiện khai báo theo 2 cách: trực tiếp và gián tiếp.
KIỂM TRA BÀI CŨ
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị lớn nhất thì đưa ra giá trị lớn nhất đầu tiên.
3. VÍ DỤ
Tìm giá trị lớn nhất của một dãy số nguyên
Câu 1: Xác định bài toán
Câu 2: Nêu ý tưởng thuật toán, xây dựng thuật toán tìm max
Câu 3: Xác định các biến cần khai báo và ý nghĩa
Câu 4: Viết chương trình
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị lớn nhất thì đưa ra giá trị lớn nhất đầu tiên.
3. VÍ DỤ
Tìm giá trị lớn nhất của một dãy số nguyên
??? Input, Ouput của bài toán.
Bước 1: Xác định bài toán
Input: số nguyên dương N (N≤250) và N số nguyên dương A1, A2,…, AN, (Ai < 500).
Output: Chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN .
Tìm giá trị lớn nhất của một dãy số nguyên
2.1. Ý tưởng thuật toán
- Gán max := A1; csmax := 1;
- Cho biến đếm i tự động tăng từ 2 đến N , với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B1: Nhập số nguyên dương N và dãy A1, A2, …, AN;
B2: max := A1; csmax := 1;
B3: Cho biến đếm i tự động tăng từ 2 đến N, với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B4: Đưa ra màn hình giá trị max và csmax rồi kết thúc.
2.2 Thuật toán
Tìm giá trị lớn nhất của một dãy số nguyên
3. Xác định các biến cần khai báo và ý nghĩa
N: số nguyên
A: mảng một chiều có N phần tử, mỗi phần tử là một số nguyên dương.
max: số nguyên
csmax: số nguyên
i: số nguyên
Tìm giá trị lớn nhất của một dãy số nguyên
4. Viết chương trình
B1: Nhập số nguyên dương N và dãy A1, A2, …, AN;
B2: max := A1; csmax := 1;
B3: Cho biến đếm i tự động tăng từ 2 đến N, với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B4: Đưa ra màn hình giá trị max và csmax rồi kết thúc.
Thuật toán
Chương trình
Write(‘Nhap n: ‘); Readln(n);
For i: =1 to n do
Begin
Write(‘a[‘,i,’]= ‘); readln(a[i]);
End;
Max:=a[1]; csmax:=1;
For i: =2 to n do
If (a[i]>max) then
Begin
max:=a[i]; csmax:=I;
End;
Write(‘Gia tri lon nhat la: ‘, max, ‘vi tri lon nhat la: ‘, i);
CHƯƠNG TRÌNH HOÀN CHỈNH
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử nhỏ nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị nhỏ nhất thì đưa ra giá trị nhỏ nhất đầu tiên.
LUYỆN TẬP
Tìm giá trị nhỏ nhất của một dãy số nguyên
Câu 1: Xác định bài toán
Câu 2: Nêu ý tưởng thuật toán tìm max
Câu 3: Xác định các biến cần khai báo và ý nghĩa
Câu 4: Viết chương trình
(tiết 3)
? Khai báo biến để lưu trữ điểm thi học kì môn tin học của 40HS lớp 10A. Thực hiện khai báo theo 2 cách: trực tiếp và gián tiếp.
KIỂM TRA BÀI CŨ
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị lớn nhất thì đưa ra giá trị lớn nhất đầu tiên.
3. VÍ DỤ
Tìm giá trị lớn nhất của một dãy số nguyên
Câu 1: Xác định bài toán
Câu 2: Nêu ý tưởng thuật toán, xây dựng thuật toán tìm max
Câu 3: Xác định các biến cần khai báo và ý nghĩa
Câu 4: Viết chương trình
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị lớn nhất thì đưa ra giá trị lớn nhất đầu tiên.
3. VÍ DỤ
Tìm giá trị lớn nhất của một dãy số nguyên
??? Input, Ouput của bài toán.
Bước 1: Xác định bài toán
Input: số nguyên dương N (N≤250) và N số nguyên dương A1, A2,…, AN, (Ai < 500).
Output: Chỉ số và giá trị của phần tử lớn nhất trong dãy A1, A2,…, AN .
Tìm giá trị lớn nhất của một dãy số nguyên
2.1. Ý tưởng thuật toán
- Gán max := A1; csmax := 1;
- Cho biến đếm i tự động tăng từ 2 đến N , với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B1: Nhập số nguyên dương N và dãy A1, A2, …, AN;
B2: max := A1; csmax := 1;
B3: Cho biến đếm i tự động tăng từ 2 đến N, với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B4: Đưa ra màn hình giá trị max và csmax rồi kết thúc.
2.2 Thuật toán
Tìm giá trị lớn nhất của một dãy số nguyên
3. Xác định các biến cần khai báo và ý nghĩa
N: số nguyên
A: mảng một chiều có N phần tử, mỗi phần tử là một số nguyên dương.
max: số nguyên
csmax: số nguyên
i: số nguyên
Tìm giá trị lớn nhất của một dãy số nguyên
4. Viết chương trình
B1: Nhập số nguyên dương N và dãy A1, A2, …, AN;
B2: max := A1; csmax := 1;
B3: Cho biến đếm i tự động tăng từ 2 đến N, với mỗi Ai, nếu Ai > max thì gán lại giá trị max := Ai; csmax := i.
B4: Đưa ra màn hình giá trị max và csmax rồi kết thúc.
Thuật toán
Chương trình
Write(‘Nhap n: ‘); Readln(n);
For i: =1 to n do
Begin
Write(‘a[‘,i,’]= ‘); readln(a[i]);
End;
Max:=a[1]; csmax:=1;
For i: =2 to n do
If (a[i]>max) then
Begin
max:=a[i]; csmax:=I;
End;
Write(‘Gia tri lon nhat la: ‘, max, ‘vi tri lon nhat la: ‘, i);
CHƯƠNG TRÌNH HOÀN CHỈNH
Nhập vào từ bàn phím số nguyên dương N (N≤250) và dãy N số nguyên dương A1, A2,…, AN, mỗi số đều không quá 500.
Đưa ra màn hình chỉ số và giá trị của phần tử nhỏ nhất trong dãy A1, A2,…, AN . Nếu có nhiều giá trị nhỏ nhất thì đưa ra giá trị nhỏ nhất đầu tiên.
LUYỆN TẬP
Tìm giá trị nhỏ nhất của một dãy số nguyên
Câu 1: Xác định bài toán
Câu 2: Nêu ý tưởng thuật toán tìm max
Câu 3: Xác định các biến cần khai báo và ý nghĩa
Câu 4: Viết chương trình
 








Các ý kiến mới nhất