Đề Xuất 12/2022 # Tin Học 11 Bài 10: Cấu Trúc Lặp / 2023 # Top 18 Like | Comforttinhdauthom.com

Đề Xuất 12/2022 # Tin Học 11 Bài 10: Cấu Trúc Lặp / 2023 # Top 18 Like

Cập nhật nội dung chi tiết về Tin Học 11 Bài 10: Cấu Trúc Lặp / 2023 mới nhất trên website Comforttinhdauthom.com. Hy vọng thông tin trong bài viết sẽ đáp ứng được nhu cầu ngoài mong đợi của bạn, chúng tôi sẽ làm việc thường xuyên để cập nhật nội dung mới nhằm giúp bạn nhận được thông tin nhanh chóng và chính xác nhất.

Tóm tắt lý thuyết

Bài toán 1. Tính và đưa kết quả ra màn hình tổng

(S= frac{1}{a}+frac{1}{a+1}+frac{1}{a+2}+…+frac{1}{a+100})

Bài toán 2. Tính và đưa kết quả ra màn hình tổng

(S= frac{1}{a}+frac{1}{a+1}+frac{1}{a+2}+…+frac{1}{a+N}+…)

cho đến khi (frac{1}{a+N}< 0,0001.)

Với cả hai bài toán, dễ thấy cách để tính tổng S có nhiều điểm tương tự:

Xuất phát, S được gán giá trị (frac{1}{a});

Tiếp theo, cộng vào tổng S một giá trị (frac{1}{a+N}) với N = 1, 2, 3, 4, 5,…

Việc cộng này được lặp lại một số lần.

Đối với bài toán 1, số lần lặp là 100 và việc cộng vào tổng S sẽ kết thúc khi đã thực hiện việc cộng 100 lần.

Đối với bài toán 2, số lần lặp chưa biết trước nhưng việc cộng vào tổng S sẽ kết thúc khi điều kiện (frac{1}{a+N}< 0,0001) được thoả mãn.

Trong một số thuật toán có những thao tác phải thực hiện lặp đi lặp lại một số lần. Một trong các đặc trưng của máy tính là có khả năng thực hiện hiệu quả các thao tác lặp.

Cấu trúc lặp mô tả thao tác lặp và được phân biệt hai loại là lặp với số lần biết trước và lặp với số lần chưa biết trước.

Các ngôn ngữ lập trình đều có các câu lệnh để mô tả cấu trúc điều khiển lặp.

Có hai thuật toán Tong_1a và Tong_1b để giải bài toán 1 như sau:

Thuật toán Tong_1a:

Thuật toán Tong_1b:

Số lần lặp của cả hai thuật toán trên là biết trước và như nhau (100 lần).

Trong thuật toán Tong_1b, giá trị N bắt đầu tham gia vòng lặp là 100 và sau mỗi lần lặp N giảm đi 1 cho đến khi N < 1 (N = 0) thì kết thúc lặp (thực hiện đủ 100 lần) (Rightarrow) Cách lặp trong thuật toán Tong_1b là dạng lùi.

a. Cấu trúc lặp với số lần biết trước

Để mô tả cấu trúc lặp với số lần biết trước, Pascal dùng câu lệnh for-do với hai dạng tiến và lùi như sau:

Trong đó:

Biến đếm là biến đơn, thường có kiểu nguyên.

Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm và giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối. Nếu giá trị đầu lớn hơn giá trị cuối thì vòng lặp không được thực hiện.

Hoạt động của lệnh for-do:

Ở dạng lặp tiến, câu lệnh viết sau từ khóa do được thực hiện tuần tự, với biến đếm lần lượt nhận giá trị từ giá trị đầu đến giá trị cuối.

Ở dạng lặp lùi, câu lệnh viết sau từ khóa do được thực hiện tuần tự, với giá trị của biến đếm từ giá trị cuối đến giá trị đầu.

Giá trị của biến đếm được điều chỉnh tự động, vì vậy câu lệnh viết sau do không được thay đổi giá trị biến đếm.

b. Một số ví dụ minh họa

Chương trình cài đặt thuật toán Tong_1a:

program Tong_1a; write(‘Hay nhap gia tri a vao!’); S:=1.0/a; {Buoc 1} for N:= 1 to 100 do Buoc 2, Buoc 3} S:= S+1.0/(a+N); {Buoc 4} writeln(‘Tong S la: ‘, S:8:4); {Buoc 5}

Chương trình cài đặt thuật toán Tong_1b:

program Tong_1b; write (‘Hay nhap gia tri a vao!’); S:=1.0/a; {Buoc 1} for N:= 100 downto 1 do {Buoc 2 va Buoc 3} S:= S+1.0/(a+N); {Buoc 4} writeln(‘Tong S la: ‘, S:8:4); {Buoc 5}

Ví dụ 2. Chương trình sau thực hiện việc nhập từ bàn phím hai số nguyên dương M và N ( M < N ), tính và đưa ra màn hình tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ M đến N.

Chương trình cài đặt:

program Vi_du_2; var M, N, I: integer; writeln(‘Nhap so M nho hon N’); write(‘M = ‘); readln(M); write(‘N = ‘); readln(N); for I:= M to N do if(I mod 3 = 0) or (I mod 5 = 0) then writeln(‘KET QUA: ‘, T); Thuật toán Tong_2:

Như vậy, việc lặp với số lần chưa biết trước sẽ chỉ kết thúc khi một điều kiện cho trước được thoả mãn.

a. Cấu trúc lặp với số lần chưa biết trước

Để mô tả cấu trúc lặp như vậy, Pascal dùng câu lệnh while-do có dạng:

Trong đó:

Điều kiện là biểu thức quan hệ hoặc lôgic;

Câu lệnh là một câu lệnh của Pascal.

Hình 1. Sơ đồ lặp với số lần lặp chưa biết trước

b. Một số ví dụ minh họa

Hình 2. Sơ đồ khối của thuật toán Tong_2 program Tong_2; write (‘Hay nhap gia tri a vao!’); S:= 1.0/a; N:= 0; {Buoc 1} while not (1/(a+N)<0.0001) do {Buoc 2} N:= N+1; {Buoc 3} S:= S+1.0/(a+N); {Buoc 4} writeln(‘Tong S la: ‘, S: 8: 4); {Buoc 5}

Ví dụ 4. Tìm ước chung lớn nhất (UCLN) của hai số nguyên dương M và N.

Thuật toán tìm ước chung lớn nhất:

Bước 1. Nhập M, N;

Bước 2. Nếu M = N thì lấy giá trị chung này làm UCLN rồi chuyển đến bước 5;

Bước 4. N (leftarrow) N – M rồi quay lại bước 2;

Bước 5. Đưa ra kết quả UCLN rồi kết thúc.

Trắc Nghiệm Tin Học 11 Bài 10 (Có Đáp Án): Cấu Trúc Lặp / 2023

Câu 1: Vòng lặp While – do kết thúc khi nào

A. Khi một điều kiện cho trước được thỏa mãn

B. Khi đủ số vòng lặp

C. Khi tìm được Output

D. Tất cả các phương án

Câu 2: Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên cấu trúc cơ bản là:

A. Cấu trúc tuần tự

B. Cấu trúc rẽ nhánh

C. Cấu trúc lặp

D. Cả ba cấu trúc

B. While S < 10 8 do

C. While S < 1.0E8 do

B. Tìm BCNN của M và N

C. Tìm hiệu nhỏ nhất của M và N

D. Tìm hiệu lớn nhất của M và N

Câu 5: Đoạn chương trình sau giải bài toán nào?

For I:=1 to M do If (I mod 3 = 0) and (I mod 5 = 0) then T := T + I;

A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M

B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M

C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M

D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M

Câu 6: Cú pháp lệnh lặp For – do dạng lùi:

Câu 7: Cú pháp lệnh lặp For – do dạng tiến:

Câu 8: Trong vòng lặp For – do dạng tiến. Giá trị của biến đếm

A. Tự động giảm đi 1

B. Tự động điều chỉnh

C. Chỉ tăng khi có câu lệnh thay đổi giá trị

D. Được giữ nguyên

Câu 9: Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:

A. Cùng kiểu với giá trị đầu và giá trị cuối

B. Chỉ cần khác kiểu với giá trị đầu

C. Cùng kiểu với các biến trong câu lệnh

D. Không cần phải xác định kiểu dữ liệu

Câu 10: Trong lệnh lặp For – do: (chọn phương án đúng nhất)

A. Giá trị đầu phải nhỏ hơn giá trị cuối

B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối

C. Giá trị đầu phải lớn hơn giá trị cuối

D. Giá trị đầu phải bằng giá trị cuối

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng….miễn phí. Tải ngay ứng dụng trên Android và iOS.

Nhóm học tập facebook miễn phí cho teen 2k4: chúng tôi

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Lý Thuyết: Cấu Trúc Lặp Trang 42 Sgk Tin Học 11 / 2023

– Cấu trúc lặp là một điều khiển thực hiện công việc lặp đi lặp lại khi chưa đủ số lần lặp hoặc khi một điều kiện nào đó còn đúng.

– Quá trình lặp không thể dừng được gọi là quá trình lặp vô hạn. Điều này xảy ra khi điều kiện để dừng lặp không còn bị biến đổi giá trị sau mỗi lần lặp. Khi đó để thoát lặp vô hạn, cần có các câu lệnh cho phép thoát ngay khỏi lặp.

– Có hai loại cấu trúc lặp: lặp với số lần biết trước và lặp với số lần chưa biết trước.

2. Lặp có số lần biết trước và câu lệnh for-do

Dạng lặp với số lần biết trước dùng để thực hiện câu lệnh một số lần xác định. Dạng này dùng một biến điều khiến vòng lặp. Trong Pascal mỗi lần thực hiện câu lệnh thì biến điều khiến (giả sử là i) được tự động tăng (nhận giá trị tiếp theo là succ(i)) hoặc giảm (nhận giá trị nhỏ hơn ngay trước pred(i)). Đến khi biến điều khiển đạt giá trị xác định thì vòng lặp kết thúc.

Câu lệnh for- do với hai dạng tiến và lùi:

– Dạng lặp tiến :

– Dạng lặp lùi:

Trong đó:

– biến đếm là biến đơn, thường có kiểu nguyên.

– giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm và giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối. Nếu giá trị đầu lớn hơn giá trị cuối thì vòng lặp không được thực hiện.

Hoạt động của lệnh for-do:

Ở dạng lặp tiến, câu lệnh viết sau từ khóa phải thực hiện tuần tự, với biến đếm lần lượt nhận giá trị từ giá trị đầu đến giá trị cuối.

Hoặc hoạt động của dạng lặp tiến có thể được diễn giải như sau:

Bước 1: Biến điều khiển nhận giá trị đầu.

Bước 2: Nếu giá trị biến điều khiển nhỏ hơn giá trị cuối thì chuyển đến bước 4. Bước 3: {giá trị biến điều khiển bằng giá trị cuối} thực hiện câu lệnh, sau đó dừng lặp, chuyển tới câu lệnh tiếp theo vòng lặp.

Bước 4: Thực hiện câu lệnh sau do và tăng biến điều khiên tới giá trị tiếp theo.

Ở dạng lặp lùi, câu lệnh viết sau từ khóa do được thực hiện tuần tự, với biến đếm lần lượt nhận giá trị từ giá trị đầu đến giá trị cuối.

Ở dạng lặp lùi này giá trị của biến điểu khiên được tự động giảm xuống giá trị tiếp theo sau mỗi lần lặp.

Lưu ý: Trong vòng lặp không được chứa lệnh làm thay đổi giá trị của biến điều khiển vì sẽ gây ra tình trạng khó theo dõi và quản lí vòng for-do.

3. Lặp với số lần chưa biết trước và câu lệnh while-do

* Lặp với số lần chưa biết trước có hai dạng:

Trong dạng 1, đầu tiên kiểm tra và tính giá trị của điều kiện, nếu điều kiện nhận giá trị true thì thực hiện công việc (một lần). Mỗi lần thực hiện công việc có thể sẽ làm thay đổi giá trị của điều kiện nên đến một lúc nào đó điều kiện lặp không còn đúng nữa và cấu trúc lặp sẽ được kết thúc. Ngược lại, nếu khi thực hiện công việc không làm thay đổi giá trị của điều kiện thì cấu trúc lặp kéo dài mãi (gọi là vòng lặp vô hạn). Để thoát khỏi vòng lặp vô hạn, trong công việc cần có câu lệnh rẽ nhánh thoát khỏi vòng lặp vô hạn khi thỏa mãn điều kiện rẽ nhánh.

* Trong Pascal, lặp với số lần chưa biết trước là dạng while-do

Câu lệnh while-do chứa một biểu thức điều kiện để điều khiển thực hiện lặp một câu lệnh đơn hoặc kép.

Cú pháp:

Trong đó:

Điều kiện là biểu thức quan hệ hoặc lôgic;

Câu lệnh là một câu lệnh cùa Pascal.

– Hoạt động của câu lệnh while-do:

Câu lệnh viết sau từ khóa do được thực hiện khi biểu thức điều kiện còn nhận giá trị true. Biểu thức điểu kiện được tính giá trị trước khi câu lệnh được thực hiện, nhưng nếu biểu thức điểu kiện đã nhận giá trị false ngay từ đầu thì câu lệnh không được thực hiện lần nào. Nếu biểu thức điều kiện luôn nhận giá trị true thì câu lệnh được thực hiện mãi, ta gọi là vòng lặp vô hạn.

* Định lí Bohn Jacopini: Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên ba cấu trúc cơ bản là cấu trúc tuần tự, cấu trúc rẽ nhánh và cấu trúc lặp.

Giải Tin Học 11 Bài 9: Cấu Trúc Rẽ Nhánh / 2023

Bài 9: Cấu trúc rẽ nhánh

1. Rẽ nhánh

Cấu trúc rẽ nhánh: Cấu trúc dùng để diễn đạt một việc sẽ được thực hiện khi một điều kiện cụ thể được thỏa mãn.

Rẽ nhánh bao gồm 2 loại:

+ Dạng thiếu: Nếu … thì

Ví dụ: Nếu trời nắng thì chúng ta sẽ đi chơi.

Vậy nếu trời không nắng thì chúng ta làm gì còn chưa biết.

+ Dạng đủ: Nếu … thì …,nếu không thì.

Ví dụ: Nếu trời nắng thì chúng ta sẽ đi chơi, nếu không thì chúng ta sẽ ở đọc truyện ở nhà.

Vậy nếu trời không nắng chúng ta sẽ ở nhà đọc truyện.

2. Câu lệnh if-then

Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh if-then. Tương ứng với hai dạnh thiếu và đủ nói ở trên, Pascal có hai câu lệnh if-then.

Trong đó:

+ Điều kiện là biểu thức logic.

+ Câu lệnh, câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal.

Ở dạng thiếu: điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh sẽ được thực hiện, ngược lại thì câu lệnh sẽ bị bỏ qua.

Ở dạng đủ: điều kiện cũng được tính và kiểm tra. Nếu điều kiện đúng thì câu lệnh 1 sẽ được thực hiện, ngược lại thì câu lệnh 2 sẽ được thực hiện.

Ví dụ:

If d<=0 writeln('day la so duong'); If a mod 3=0 then writeln('a chia het cho 3') Else writeln('a khong chia het cho 3');

3. Câu lệnh ghép

Trong nhiều trường hợp ,sau một số từ khóa (như then hoặc else ) phải là một lệnh đơn. Nhưng trong nhiều trường hợp các thao tác sau những tên dành riêng đòi hỏi không chỉ một mà là nhiều câu lệnh để mô tả. Trong trường hợp như vậy, ngôn ngữ lập trình cho phép gộp một dãy các câu lệnh thành một câu lệnh ghép.

Trong Pascal câu lệnh ghép có dạng:

Begin End;

Thuật ngữ câu lệnh, câu lệnh 1, câu lệnh 2 trong các câu lệnh if-then ở mục trên có thể là câu lệnh ghép.

Ví dụ:

If D<0 then writeln('Phuong trinh vo nghiem ') Else Begin X1:=(-b-sqrt(b*b-4*a*c))/(2*a); X2:=-b/a-x1; End;

Ví dụ 2:

Viết chương trình tìm nghiệm thực của phương trình bậc hai:

ax 2+bx+c = 0 với a ≠ 0.

Program gptb2; Uses crt; Var a,b,c:real; D,X1,X2:real; Begin Clrscr; Write('a,b,c:'); Readln(a,b,c); D:=b*b-4*a*c; If D<0 then writeln('Phuong trinh vo nghiem ') Else Begin X1:=(-b-sqrt(D))/(2*a); X2:=-b/a-X1; Writeln('X1=',X1:8:3,' X2=',X2:8:3); End; Readln; End.

Các bài giải bài tập và trả lời câu hỏi Tin học 11 Chương 3 khác:

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng….miễn phí. Tải ngay ứng dụng trên Android và iOS.

Nhóm học tập facebook miễn phí cho teen 2k4: chúng tôi

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Bạn đang đọc nội dung bài viết Tin Học 11 Bài 10: Cấu Trúc Lặp / 2023 trên website Comforttinhdauthom.com. Hy vọng một phần nào đó những thông tin mà chúng tôi đã cung cấp là rất hữu ích với bạn. Nếu nội dung bài viết hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!