Đề cương ôn tập Tin học 10 - Bài 6: Câu lệnh rẽ nhánh

doc23 trang | Chia sẻ: Thảo Hoa | Ngày: 02/02/2026 | Lượt xem: 7 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề cương ôn tập Tin học 10 - Bài 6: Câu lệnh rẽ nhánh, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
* Câu lệnh gán: := ; Lưu ý: Biến và biểu thức phải cùng kiểu dữ liệu. Bài 6: CÂU LỆNH RẼ NHÁNH 1. Rẽ nhánh - Là việc thực hiện một trong nhiều công việc tùy theo điều kiện. 2. Câu lệnh rẽ nhánh - Dạng thiếu: IF THEN ; ĐK Đ Câu lệnh S Ví dụ: Tìm số lớn hơn trong 2 số a,b. Readln(a,b); Max:=a; If max<b then max:=b; Writeln(max); - Dạng đủ: IF THEN ELSE ; ĐK Câu lệnh 2 Câu lệnh 1 SĐ Ví dụ: Tìm số lớn hơn trong 2 số a,b. IF a>b then max:=a else max:=b; 3. Câu lệnh ghép - Ghép nhiều câu lệnh thành 1 câu lệnh. - Cấu trúc: Begin ; End; Ví dụ: Tính nghiệm của PT bậc 2: ax2+bx+c=0 If delta>0 then Begin Writeln(‘Phuong trinh co 2 nghiem phan biet:’); X1:=(-b+sqrt(b*b-4*a*c))/(2*a); X1:=(-b-sqrt(b*b-4*a*c))/(2*a); End; 1. Cách giải PT bậc nhất ax+b = 0 B1: Nhập a, b B2: Xét các trường hợp - Nếu a = 0 thì + Nếu b = 0 thì PT VSN + Nếu b <> 0 thì PT VN - Nếu a <>0 thì PT có nghiệm x = -b/a 2. Cách giải PT bậc 2: ax2+bx+c=0 B1: Tính Delta: Delta = b2-4ac B2: Xét Delta - Nếu Delta <0 thì PT vô nghiệm - Nếu Delta = 0 thì PT có nghiệm kép x1=x2=-b/(2*a) - Nếu Delta >0 thì PT có 2 nghiệm phân biệt: X1:=(-b+sqrt(b*b-4*a*c))/(2*a); X1:=(-b-sqrt(b*b-4*a*c))/(2*a); BTVN: Lập trình giải phương trình bậc nhất ax+b=0 và PT bậc 2 ax2+bx+c=0 Ví dụ: 2x2 - 3x + 1 = 0 Có nghiệm là: X1 = 1; X2 = 0.5 Bài 7: Cấu trúc lặp 1. Lặp - Là việc thực hiện nhiều lần một hoặc một số công việc nào đó. - Có 2 cách lặp: + Biết trước số lần lặp + Chưa biết số lần lặp 2. Cấu trúc lặp a) Lặp biết trước số lần: FOR – DO - Dạng tiến: For := to Do ; + Biến đếm: thường là kiểu nguyên + cs đầu, cs cuối: Phải cùng kiểu với biến đếm. Ví dụ: For mồng:=1 to 10 do Begin Đánh răng; ăn cơm; Đi học; Nấu cơm; End; - Dạng lùi: For := downto Do ; Ví dụ 1: In ra màn hình các số nguyên dương lẻ nhỏ hơn 100. Ví dụ 2: In ra màn hình các số chính phương từ 1 đến 1000. Kiểm tra số i: Hàm sqrt(i): Căn bậc hai. Hàm sqr(i): Bình phương. Hàm Trunc(i): Là hàm lấy phần nguyên. Nếu I = 8 thì sqr(trunc(sqrt(8))) = sqr(trunc(2.83)) = sqr(2) = 4 <> 8 Nếu Bình phương của phần nguyên của căn bậc hai của I mà bằng I thì I là số chính phương ngược lại thì không là số chính phương. Ví dụ: I = 16 Sqr(trunc(sqrt(16))) = 16 => I là số chính phương. Thủ tục: Break dùng để phá vỡ vòng lặp. Bài tập: 1. Lập trình đưa ra màn hình các số chính phương nhỏ hơn N (nhập từ bàn phím). 2. Nhập vào một số nguyên N, kiểm tra xem số N có phải là số nguyên tố hay không? 3. Lập trình đưa ra màn hình số lượng và các số nguyên tố nhỏ hơn hoặc bằng số M cho trước (nhập từ bàn phím). 4. Lập trình đưa ra màn hình các loại số chính phương, nguyên tố, hoàn hảo nhỏ hơn hoặc bằng N cho trước (N nhập từ bàn phím). Bài 1: Duyệt từ 1 đến N Nếu số nào là số chính phương thì đưa ra màn hình số đó và đếm. ĐK: sqr(trunc(sqrt(i)))=i Code: Dem:=0; For i:=1 to N do If sqr(trunc(sqrt(i)))=I then Begin Write(i:5); Inc(dem); End; Bài 2: Dem:=0; For i:=1 to N do Begin If (1<i)and(i<4) then begin write(i:5); inc(dem); end; If I>=4 then Begin c:=1; For j:=2 to trunc(sqrt(I)) do If I mod j = 0 then Begin c=0; break; end; If c=1 then Begin write(i:5); inc(dem); end; End; End; Bài 3: Dem:=0; For i:=1 to N do Begin tu:=0; For j:=1 to I-1 do If I mod j = 0 then tu:=tu+j; If tu=i then Begin write(i:5); inc(dem); end; End; LÀM VIỆC VỚI DÃY SỐ 1. Khái niệm - Dãy số được gọi là mảng một chiều của các số. Được đánh số từ 1 đến N. Ví dụ: Cho dãy số A 1 2 3 4 5 6 9 -2 8 3 4 0 - Để lưu trữ dãy số như vậy trong TP, chúng ta thường lưu trữ dưới dạng mảng một chiều. 2. Khai báo mảng một chiều Cấu trúc: Var :ARRAY[Kiểu chỉ số] OF ; Ví dụ: Var A:array[1..6] of integer; Var B:array[1..1000] of integer; - Để truy xuất đến một vị trí trong mảng: A[3]=8 3. Nhập dữ liệu cho mảng Cách 1: Nhập từ bàn phím For i:=1 to N do Begin Write(‘A[‘,I,’]=’); Readln(a[i]); End; Cách 2: Nhập ngẫu nhiên (random) - Trước tiên phải tạo số ngẫu nhiên: Khai báo thư viện CRT, tạo bộ số ngẫu nhiên bằng thủ tục RANDOMIZE - Hàm random(x) tạo ra một số ngẫu nhiên từ 0 đến x-1. Randomize; For i:=1 to N do a[i]:=random(100); Cách 3: Nhập từ tệp (FILE) 4. Xuất dữ liệu mảng Cách 1: Xuất ra màn hình For i:=1 to n do write(a[i]:5); Cách 2: Xuất ra tệp (FILE) For i:=1 to n do write(tên biến tệp, a[i]:5); 5. Xử lý dữ liệu mảng - Tùy từng yêu cầu của bài tập mà ta có cách xử lý mảng khác nhau. Bài tập: 1. Viết chương trình tìm số lớn nhất và nhỏ nhất trong mảng. 2. Tìm và đưa ra màn hình các số chính phương, nguyên tố, hoàn hảo trong mảng. 3. Sắp xếp mảng thành mảng không giảm. Ví dụ: Cho mảng A 5 -1 0 8 2 5 Kết quả: -1 0 2 5 5 8 Bài 4: Tìm giá trị lớn thứ nhì (Max*) và nhỏ thứ nhì (Min*) trong mảng. Ví dụ: Cho dãy số: 8 5 9 2 7 2 9 Số lớn nhất: Max = 9 Số lớn nhì: Max* = 8 Số nhỏ nhất: Min = 2 Số nhỏ nhì: Min* = 5 Thuật toán sắp xếp: N = 6 5 9 4 5 8 2 Duyệt lần 1: SL PT là 6 A1 A2 A3 A4 A5 A6 5 9 4 5 8 2 I=6: J=1: 5 9 4 5 8 2 J=2: 5 4 9 5 8 2 J=3: 5 4 5 9 8 2 J=4: 5 4 5 8 9 2 J=5: 5 4 5 8 2 9 Duyệt lần 2: SL PT là 5 I=5: J=1: 4 5 5 8 2 J=2: 4 5 5 8 2 J=3: 4 5 5 8 2 J=4: 4 5 5 2 8 Duyệt lần 3: SL PT là 4 I=4: 4 5 5 2 4 5 5 2 4 5 2 5 Duyệt lần 4: SL PT là 3 I=3: 4 5 2 4 2 5 Duyệt lần 5: SL PT là 2 I=2: 2 4 5 5 8 9 Bước 1: Nhập N và dãy A Bước 2: Khởi tạo M:=N; Bài 6: Nhập vào một mảng N phần tử nguyên và một số nguyên K. Đưa ra màn hình: a) Số lượng phần tử trong dãy nhỏ hơn K. b) Tính tổng các phần tử lớn hơn K. Ví dụ: Cho dãy N = 6 6 9 1 7 4 12 K = 8 Số phần tử nhỏ hơn 8 là: 4 Tổng các phần tử lớn hơn 8 là: 21 c) Đếm và đưa ra màn hình các số chẵn ở vị trí lẻ. d) Số nguyên M là số lượng số trong dãy có giá trị nhỏ hơn số bên trái cạnh nó; Nếu M>0 thì đưa tiếp ra màn hình M dòng, mỗi dòng gồm 2 số: Số thứ tự thứ i và số Ai nhỏ hơn số cạnh nó bên trái. Hai số cách nhau bởi một dấu cách. Ví dụ: Cho dãy N = 6 6 9 1 7 4 12 Thì M = 2 3 1 5 4 e) Đếm và đưa ra màn hình các số cực đại địa phương. Trong đó: Số cực đại địa phương là số: A1 nếu A1>A2 Ai nếu Ai>Ai+1 và Ai >Ai-1 với i = 2 -> n-1 An nếu An >An-1 Ví dụ: Cho dãy 4 6 12 8 10 5 18 26 CỰC ĐẠI ĐỊA PHƯƠNG Dạng: Vị trí Giá trị cực đại địa phương 3 12 5 10 8 26 f) Đếm và đưa ra màn hình các số cực tiểu địa phương.

File đính kèm:

  • docde_cuong_on_tap_tin_hoc_10_bai_6_cau_lenh_re_nhanh.doc