Hãy cho biết có bao nhiêu số hạng trong dãy bằng k Dãy A gồm N số nguyên khác nhau a1,…,an và số nguyên k.. Số lượng các số hạng bằng k trong dãy A.[r]
(1)(2) BÀI TOÁN INPUT THUẬT TOÁN OUTPUT (3) Tiết 15: BÀI TẬP THUẬT TOÁN (T3) (4) Bài 1: Viết thuật toán tìm nghiệm phương trình ax+b=0 Các số thực a,b Input: Output: Tất các số thực x thỏa mãn ax+b=0 Ý tưởng: So sánh hệ số a với Nếu a khác kết luận phương trình có nghiệm x= -b/a Nếu a= thì xét b b=0 thì kết luận phương trình vô số ngiệm Nếu khác kết luận phương trình vô nghiệm (5) Thuật toán: B1: Nhập số thực a,b Nhập hai số a,b Đ a=0? S x -b/a S b=0 Đ Thông báo PT vô số nghiệm kết thúc Thông báo PT vô nghiệm kết thúc B2: Nếu a=0 B2.1: Nếu b=0 thông báo PT Vô số nghiệm kết thúc B2.2: Nếu b≠ thông báo PT Vô nghiệm kết thúc B3: x -b/a Thông báo PT vô số nghiệm kết thúc B4: Thông báo PT vô số nghiệm kết thúc (6) Bài 2: Cho số nguyên N và dãy a1,…,an và số nguyên K Hãy cho biết có bao nhiêu số hạng dãy k Dãy A gồm N số nguyên khác a1,…,an và số nguyên k Input: Output: Số lượng các số hạng k dãy A Ý tưởng: Tìm kiếm thực cách tự nhiên Ta dùng biến đếm D để đếm số lượng số hạng dãy K Bắt đầu từ i=1 và lần tăng i lên 1, ta so sánh với k Nếu = k thì tăng D lên đơn vị Tiếp tục i>N thì đưa kết k và kết thúc (7) Thuật toán: Nhập N và dãy a1,…,aN; K B1: Nhập N, a1, a2, …, aN, K B2: D 0; i D ; i = k B3: Nếu ai=k thì D D+1 S B4: i i + B5: Nếu i>N thì thông báo D kết thúc Đ DD+1; B6: Quay lại B3 i i + 1; S i>N? Đ Đưa D kết thúc (8) Thuật toán: i Nhập N và dãy a1,…,aN; K D 00 ;; ii 11 aii == k 5 3=3 ? 4=3? 5=3? 3=36=3? ? N=5 S D=0 D=1 D=2 Đ DD+1; 6>5? 5>5 4>5? 2>5? 3>5? i i + 1; S i>N? Đ Đưa D kết thúc K=3 (9) Bài 3: Cho số nguyên N và dãy a1,…,an Đếm số lượng các số chẵn dãy A (10) Đếm các số có giá trị chẵn 1 Nhập N và dãy a1,…, aN; 2 Dem 0; i 1; 3 Thông báo Dem kết thúc; 4 Nếu i > N 5 Dem Dem + 1; 6 Nếu là số chẵn 7 i i+1 Nhập N và dãy a1,…,aN Dem ; i Đ i>N? S Đưa Dem kết thúc chẵn? Đ S DemDem+1; i i + 1; (11)