Nội dung của Bài thực hành 6: Sử dụng lệnh lặp While…Do dưới đây sẽ giúp các em hiểu câu lệnh lặp while...do trong chương trình Turbo Pascal có sẵn; rèn luyện kĩ năng về khai báo, sử dụng biến; biết về vai trò của việc kết hợp các cấu trúc điều khiển;... Mời các em cùng theo dõi nội dung chi tiết của bài thực hành.
Tóm tắt lý thuyết
1.1. Mục đích, yêu cầu
- Viết chương trình Pascal sử dụng câu lệnh lặp với số lần chưa biết trước.
- Rèn luyện kĩ năng đọc chương trình, tìm hiểu tác dụng của các câu lệnh.
1.2. Nội dung
a. Ôn tập kiến thức
Câu lệnh lặp với số lần chưa biết trước While…Do:
Cú pháp: While <điều kiện>Do ;
Trong đó:
- Điều kiện: thường là phép so sánh.
- Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
Các bước thực hiện của câu lệnh lặp While…Do:
- Bước 1: Kiểm tra điều kiện.
- Bước 2: Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng thực hiện câu lệnh và quay lại bước 1.
b. Thực hành
Bài 1: Viết chương trình sử dụng lệnh lặp While…Do để tính trung bình N số thực X1, X2, X3,…, Xn. Các số N và X1, X2, X3,…, Xn được nhập từ bàn phím.
Gợi ý làm bài:
Ý tưởng:
Ta sử dụng biến Dem và câu lệnh lặp While…Do để nhập và cộng dần các số vào một biến kiểu số thực Tong cho đến khi nhập đủ n số.
Xác định bài toán:
- Input: Dãy số thực x1, x2...xn
- Output: Giá trị trung bình (x1 + x2+..+xn)/n
Thuật toán:
- Mô tả thuật toán bằng cách liệt kê:
- Bước 1. Nhập N là số lượng số thực sẽ được nhập từ bàn phím:
- Gán biến đếm bằng 0 Dem \(\leftarrow\) 0;
- Gán tổng Tong \(\leftarrow\) 0.
- Bước 2. Trong khi Dem < N thì:
- Nhập giá trị số thực x từ bàn phím;
- Cộng thêm x vào tổng: Tong\(\leftarrow\)Tong + x;
- Tăng biến dem thêm 1 đơn vị: Dem\(\leftarrow\)Dem + 1;
- Bước 3. Tính trung bình dãy số vừa nhập TB \(\leftarrow\) Tong/N.
- Bước 4. Đưa TB ra màn hình, rồi kết thúc.
- Bước 1. Nhập N là số lượng số thực sẽ được nhập từ bàn phím:
- Mô tả thuật toán bằng sơ đồ khối:
Hình 1. Sơ đồ khối mô tả thuật toán tính trung bình N số thực
Chương trình:
Program tinh_trung_binh;
Var N, Dem: integer;
X, TB: real;
Begin
Clrscr;
Dem:=0;
TB:=0;
Writeln(‘Nhap cac so can tinh N =’);
Readln(N);
While Dem < N do
Begin
Dem:= Dem + 1;
Writeln(‘Nhap so thu’, Dem,’=’);
Readln(x);
Tb:= TB + x;
End;
TB:=TB/n;
Witeln(‘Trung binh của’,N,’so là =’, TB:10:3);
Readln;
End.
Bài 2: Tìm hiểu chương trình nhận biết một số tự nhiên N được nhập vào từ bàn phím có phải là số nguyên tố hay không.
Gợi ý làm bài:
Ý tưởng: Kiểm tra lần lượt N có chia hết cho các số tự nhiên \(2 \leq i \leq N-1\) hay không. Kiểm tra tính chia hết bằng phép chia lấy phần dư (mod).
Xác định bài toán:
- Input: Số tự nhiên N.
- Output: Trả lời N là số nguyên tố hoặc N không là số nguyên tố.
Xây dựng thuật toán:
- Bước 1: Nhập số tự nhiên N từ bàn phím;
- Bước 2: Nếu N \(\leq\) 0 thông báo N không phải là số tự nhiên, rồi chuyển đến Bước 4;
- Bước 3: Nếu N > 0:
- 3.1. i\(\leftarrow\)2;
- 3.2. Trong khi N mod i <> 0, i\(\leftarrow\)i+1;
- 3.3. Nếu i = N thì thông báo N là số nguyên tố, rồi chuyển đến Bước 4, không thì thông báo N không phải là số nguyên tố;
- Bước 4: Kết thúc.
Chương trình:
Uses Crt;
Var N, i:integer;
Begin
clrscr;
write('Nhap vao mot so nguyen: ');
readln(N);
If N<=1 then
writeln('N khong la so nguyen to')
else
begin
i:=2;
while (N mod i<>0) do
i:=i+1;
if i=N then
writeln(N,' la so nguyen to!')
else
writeln(N,' khong phai la so nguyen to!');
end;
readln;
end.
2. Luyện tập Bài thực hành 6 Tin học 8
Sau khi học xong Bài thực hành 6: Sử dụng lệnh lặp While…Do, các em cần ghi nhớ về các nội dung:
1. Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào một điều kiện cụ thể và chỉ dừng lại khi điều kiện đó sai.
2. Câu lệnh lặp với số lần lặp chưa biết trước:
a) Trường hợp câu lênh đơn:
WHILE < điều kiện > DO < câu lệnh >;
b) Trường hợp câu lệnh ghép:
WHILE <điều kiện> DO
Begin
câu lệnh 1;
câu lệnh 2; …
End;
2.1. Trắc nghiệm
Các em có thể hệ thống lại nội dung kiến thức đã học được thông qua bài kiểm tra Trắc nghiệm Tin học 8 Bài thực hành 6 cực hay có đáp án và lời giải chi tiết.
-
- A. Chưa biết trước số lần lặp
- B. Biết trước số lần lặp
- C. Biết trước số lần lặp nhưng giới hạn là <=100
- D. Biết trước số lần lặp nhưng giới hạn là >=100
-
- A. Tăng 1
- B. Tăng 2
- C. Tăng 3
- D. Tăng 4
Câu 3- 5: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
3. Hỏi đáp Bài thực hành 6 Tin học 8
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học HOC247 sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 8 HỌC247