Bài giảng Tin học Lớp 8 - Bài thực hành 7: Xử lý dãy số trong chương trình - Trường THCS Phong Phú
Khai báo
Nhập tổng số phần tử của mảng
Nhập giá trị cho từng phần tử của mảng
In giá trị của các phần tử thành 1 dòng
XỬ LÍ DÃY SỐ TRONG CHƯƠNG TRÌNH
TRƯỜNG THCS PHONG PHÚ
TIN HỌC 8
BÀI THỰC HÀNH 7
Input: Số n, dãy số a 1 , a 2 ,, a n
Output: M ảng số nguyên A
Xác định Input , Output của bài toán?
Bài 1: Viết chương trình in ra màn hình mảng số nguyên A với số lượng phần tử n bất kì nhập từ bàn phím
Mô tả thuật toán:
Kết thúc
i < = n
Đ
a[i]
i 1
i i + 1
S
n
Bắt đầu
a[i]
6
3
4
1
5
VD: Mảng A có n = 5 và giá trị từng phần tử của mảng lần lượt là: 6 3 4 1 5
i=1
<=5
Giá trị pt1 là:
6
i=2
<=5
Giá trị pt2 là:
3
i=3
<=5
Giá trị pt 3 là:
4
i=4
<=5
Giá trị pt4 là:
1
i=5
<=5
Giá trị pt5 là:
5
i=6
<=5
Sai
Program SPT_Mang;
Uses crt;
Var A: array[1..100] of integer ;
n, i : integer;
Begin
Clrscr;
write(' Nhap tong so phan tu cua mang :');
readln(n);
writeln(‘ Hay nhap cac phan tu cua mang ');
For i:=1 to n do
Begin
Write(‘Phan tu thu ', i , ' la ');
Readln(a[i]);
End;
Writeln( ' In cac phan tu cua mang thanh mot dong ');
For i:=1 to n do write(a[i]:4);
Readln;
End.
Khai báo
Nhập tổng số phần tử của mảng
Nhập giá trị cho từng phần tử của mảng
In giá trị của các phần tử thành 1 dòng
Kết quả
Input : Số n, dãy số a 1 , a 2 ,, a n
Output: Min
Xác định Input , Output của bài toán?
Bài 2: 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
Mô tả thuật toán:
VD: Mảng A có n = 5 và giá trị từng phần tử của mảng lần lượt là: 6 3 4 1 5
min=6
n=5
a i
6
3
4
1
5
i>n?
a i < min
min
i
2>5
6
2
S
3<6
Đ
3>5
S
3
3
3
4
4<3
S
4>5
S
1<3
Đ
1
5
5>5
S
5<1
S
1
6
6>5
Đ
1
Kết thúc
i > n?
S
min a 1
i 2
Đ
Nhập n và dãy a 1 ,, a n
min a i
i i+1
min > a i
min
Đ
S
Begin
Program Tim_Max;
var i,n,max:integer;
A : array[1..20] of integer;
Writeln ( ‘ N hap so phan tu cua day ’);
Readln(n );
For i:=1 to n do
Begin
Write( ‘Nhap gia tri a[‘ ,i, ’]=‘);
Readln(a[i]);
End;
Max:=a[1];
For i:=2 to n do
If max<a[i] then max:=a[i ];
Writeln (‘ Gia tri max cua mang= ’, max );
Readln;
End.
Đoạn chương trình tìm giá trị LỚN NHẤT của dãy số vừa nhập
Khai báo biến mảng và các biến cần dùng
Nhập tổng số phần tử cho mảng
Nhập các giá trị cho từng phần tử của mảng
Xử lí tìm số lớn nhất của mảng
Program Tim_Min;
var i,n, min :integer;
A: array[1..20] of integer;
Begin
Write(‘Nhap so phan tu cua day ');
Readln(n);
For i:=1 to n do
Begin
Write( 'Nhap gia tri a[' ,i, ']= ');
Readln(a[i]);
End;
min :=a[1];
For i:=2 to n do
If min>a[i] then min:=a[i] ;
Writeln (‘Gia tri min =', min );
Readln;
End.
Program Tim_Max;
var i,n, max :integer ;
A: array[1..20] of integer;
Begin
Write(‘Nhap so phan tu cua day ');
Readln(n);
For i:=1 to n do
Begin
Write( 'Nhap gia tri a[' ,i, ']= ');
Readln(a[i]);
End;
max := a[1];
For i:=2 to n do
If max < a[i ] then max := a[i];
Writeln(‘Gia tri max =', max );
Readln;
End.
TÌM MAX
TÌM MIN
Kết quả
Chương trình này có thể ứng dụng để giải các bài như:
Viết chương trình tìm HS có chiều cao cao nhất hoặc thấp nhất lớp với giá trị chiều cao được nhập vào từ người dùng
Viết chương trình tìm HS có điểm kiểm tra cao nhất, hoặc thấp nhất lớp , với số điểm được nhập vào từ người dùng
Input: Số n, dãy số a 1 , a 2 ,, a n
Output: Giá trị trung bình của mảng (TB)
Xác định Input , Output của bài toán?
Bài 3: Viết chương trình sử dụng biến mảng tính giá trị trung bình của n số nguyên được nhập từ bàn phím
a i
3
8
6
9
i<=n?
a i
TB=TB+a[i]
i
1<=4
0
1
Đ
3
2<=4
Đ
0+ 3 = 3
2
3+ 8 = 11
3
8
3<=4
Đ
6
11+ 6 = 17
4
4<=4
Đ
9
17+ 9 = 26
5
5<= 4
S
TB=26
Mô tả thuật toán:
VD: Mảng A có n = 4 và giá trị từng phần tử của mảng lần lượt là: 3 8 6 9
i=1
TB=0
n=4
Kết thúc
i < = n
Đ
a[i]
i 1, TB0
TB TB + a[i ]
S
n
Bắt đầu
i i + 1
TB TB / n
TB=TB/n=26/4=6.5
Program TinhTB_Mang;
var i,n : integer;
TB: real ;
A: array[1..20] of integer;
Begin
Write(‘Nhap so phan tu cua mang, n= ');
Readln(n );
TB:=0;
For i:=1 to n do
Begin
Write( 'Nhap gia tri a [' ,i, ']= ');
Readln(a[i ]);
TB:=TB+a[i];
End;
TB:=TB/n;
Writeln(‘Gia tri trung binh = ', TB:8:2 );
Readln;
End.
Khai báo
Nhập tổng số phần tử của mảng
Nhập giá trị cho từng phần tử của mảng
In giá trị của các phần tử thành 1 dòng
Tính giá trị trung bình
Kết quả
Chương trình này có thể ứng dụng để giải các bài như:
Viết chương trình tính điểm trung bình của các môn học, với số điểm được nhập vào từ người dùng
Viết chương trình tính nhiệt độ trung bình , với nhiệt độ được nhập vào từ người dùng
DẶN DÒ
Làm các bài tập trắc nghiệm, Bài 8, 9 trên trang web trường
https :// thcsphongphu.hcm.edu.vn
hoặc trên ViettelStudy (Khóa học Tin học 8)
Bài 8: Lặp với số lần chưa biết trước
Bài 9: Làm việc với dãy số
Tuần 6 (từ ngày 20-24/04/2020) ,
KIỂM TRA ONLINE TIN 8
(lấy điểm KT 1 Tiết)
20 câu trắc nghiệm
File đính kèm:
bai_giang_tin_hoc_lop_8_bai_thuc_hanh_7_xu_ly_day_so_trong_c.pptx



