IMG-LOGO
Trang chủ Lớp 10 Tin học Giải SBT Tin 10 KNTT Bài 19. Câu lệnh rẽ nhánh If có đáp án

Giải SBT Tin 10 KNTT Bài 19. Câu lệnh rẽ nhánh If có đáp án

Giải SBT Tin 10 KNTT Bài 19. Câu lệnh rẽ nhánh If có đáp án

  • 189 lượt thi

  • 18 câu hỏi

  • 30 phút

Danh sách câu hỏi

Câu 4:

Em hãy tìm một vài giá trị m, n thoả mãn các biểu thức sau:

a) 50%m == 0 and n%4 != 0 

Xem đáp án

a) m là ước số của 50 và n không chia hết cho 4. 

Vậy có thể chọn, ví dụ m = 5, 10, 25, .. ; n = 3, 6, 7, 9, ...


Câu 5:

b) m%100 == 0 and m%400 != 0

Xem đáp án

b) m chia hết cho 100 nhưng không chia hết cho 400. Vậy có thể chọn, ví dụ m = 200, 300, 500, ...


Câu 6:

c) n%5 == 0 or (n%5 != 0 and n%3 == 0)

Xem đáp án

c) n chia hết cho 5 hoặc n không chia hết cho 5 nhưng phải chia hết cho 3. Vậy có thể chọn, ví dụ n = 5, 6, 9, 10, 12, ...


Câu 8:

b) x có giá trị không thuộc đoạn [0; 2].

Xem đáp án

b) not(x >= 0 and x <= 2) hoặc (x < 0) or (x > 2)


Câu 12:

Cho m là một năm dương lịch. Biết rằng, nếu m chia hết cho 400 hoặc m chia hết cho 4 nhưng không chia hết cho 100 thì năm đó là năm nhuận. Viết câu lênh điều kiện để in ra thông báo tương ứng.

Xem đáp án

Chương trình có thể viết như sau:

if (m%400==0) or ((m%4==0) and (m%100 !=0)):

print("Năm", m, "là năm nhuận")

else:

print("Năm", m, "không phải là năm nhuận")


Câu 13:

Chỉ số BMI (Body Mass Index) được tính dựa trên tỉ lệ giữa cân nặng (tính bằng kg) và chiều cao (tính bằng mét) bình phương, nói lên tình trạng cân nặng hiện tại của người trưởng thành (lớn hơn 18 tuổi). Chỉ số BMI càng cao thì lượng mỡ trong cơ thể càng nhiều, dẫn tới nhiều nguy cơ phát sinh các vấn đề sức khoẻ không tốt. Ví dụ, các bệnh thường gặp ở người cân nặng quá khổ là béo phì, huyết áp cao, bệnh tim mạch, tiểu đường, ... Ngược lại, nếu chỉ số BMI thấp, người bệnh cũng có nguy cơ gặp phải các vấn đề thiếu máu, miễn dịch kém hay loãng xương. Với người trưởng thành gốc châu Á, giá trị BMI tiêu chuẩn được xác định như sau:

Chỉ số BMI (Body Mass Index) được tính dựa trên tỉ lệ giữa cân nặng (tính bằng kg) (ảnh 1)

Em hãy viết chương trình tính chỉ số BMI của một người và đưa ra thông báo tương ứng.

Xem đáp án

Chương trình có thể viết như sau:

#Tính chỉ số BMI

can_nang = float(input("Cân nặng của bạn là: "))

chieu_cao = float(input("Chiều cao của bạn là: "))

BMI = can_nang/( chieu_cao* chieu_cao)

if BMI < 18.5 :

print("Bạn có vẻ gầy còm? BMI =", BMI, "Chịu khó ăn nhiều thêm nhé! :) ")

if (BMI >=18.5) and (BMI < 23) :

print("Bạn có dáng chuẩn đấy! BMI =", BMI, "Tiếp tục phát huy nhé! :) ")

if BMI >=23 :

print("Bạn thừa cân rồi! BMI =", BMI, "Phải chịu khó tập thể thao và ăn nhiều hoa quả! :) ")


Câu 14:

Để khuyến khích tiêu thụ cam, một chủ vườn đã đưa ra chính sách khuyến mại sau: Nếu số cam mua lớn hơn 10 kg thì đơn giá mua phần lớn hơn đó chỉ bằng 90% đơn giá cho 10 kg cam đầu tiên. Em hãy viết chương trình tính số tiền mua cam phải trả với đơn giá và số cam mua được nhập từ bàn phím.

Xem đáp án

Chương trình có thể viết như sau:

don gia = float(input("Giá 1 kg cam là: "))

so_luong_mua = float(input("Số cam bạn mua: "))

if so_luong_mua <= 10:

thanh_tien=so_luong_mua*don gia

else:

thanh_tien = 10* don_gia + (so_luong_mua - 10)*don_gia*0.9

print("Số tiền phải trả là: ", thanh_tien)


Câu 15:

Em hãy viết chương trình nhập ba số thực dương a, b, c, kiểm tra xem ba số đó có thể là độ dài các cạnh của một tam giác hay không, nếu có thì tính chu vi, diện tích của tam giác đó.

Xem đáp án

Ba số a, b, c là các cạnh của tam giác nếu cả ba bất đẳng thức sau đều thoả mãn:

a + b – c > 0; b + c – a > 0; c + a – b > 0

Để tính diện tích tam giác cần sử dụng công thức Heron (xem Câu 18.11).

Chương trình có thể viết như sau:

#Kiểm tra 3 số a, b, c có phải các cạnh một tam giác, tính chu vi, diện tích tam giác đó

a = float(input("Nhập số a: "))

b = float(input("Nhập số b: "))

c = float(input("Nhập số c: "))

if (a + b – c > 0) and (b + c – a > 0) and (c + a – b > 0):

p = (a + b + c)/2

S_tamgiac = (p* (p - a)*(p - b)*(p - c))**0.5

print("Chu vi tam giác = ", p*2).

print("Diện tích tam giác = ", S_tamgiac)

else:

print("Ba số đã cho không phải là độ dài các cạnh của một tam giác")


Câu 16:

Em hãy viết chương trình giải phương trình bậc nhất dạng tổng quát ax + b = c, các hệ số a, b, c là các số thực được nhập vào từ bàn phím. 

Xem đáp án

Thuật toán giải phương trình bậc nhất dạng tổng quát có thể nêu ngắn gọn như sau:

Nếu a khác 0, thì phương trình luôn có nghiệm duy nhất x = (c – b)/a.

Nếu a = 0 và c − b = 0 thì phương trình có vô số nghiệm (x có thể nhận giá trị tuỳ ý).

Nếu a = 0 và c − b khác 0 thì phương trình vô nghiệm.

Chương trình có thể viết như sau:

#Giải phương trình bậc nhất dạng tổng quát 1

a = float(input("Nhập số a: "))

b = float(input("Nhập số b: "))

c = float(input("Nhập số c: "))

if a != 0:

print("Phương trình có nghiệm duy nhất x = ", (c - b)/a)

if a==0 and c - b == 0:

print("Phương trình có vô số nghiệm (x có thể là một số bất kì)!")

if a==0 and c - b != 0:

print("Phương trình đã cho vô nghiệm! ")

Lưu ý: Cũng có thể dùng các câu lệnh if lồng nhau như sau:

#Giải phương trình bậc nhất dạng tổng quát 2

a = float(input("Nhập số a: "))

b = float(input("Nhập số b: "))

c = float(input("Nhập số c: "))

if a != 0:

print("Phương trình có nghiệm duy nhất x = ", (c - b)/a)

else:

if c - b == 0:

print("Phương trình có vô số nghiệm (x có thể là một số bất kì)!")

else:

print("Phương trình đã cho vô nghiệm!")


Câu 17:

Em hãy viết chương trình giải phương trình bậc hai dạng tổng quát ax2 + bx + c = 0 (a khác 0). Yêu cầu các giá trị a, b, c là các số thực được nhập vào từ bàn phím.

Xem đáp án

Thuật toán giải phương trình bậc hai có thể nêu tóm tắt như sau:

Tính ∆ = b2 – 4ac

Nếu ∆ < 0 phương trình vô nghiệm.

Nếu ∆ = 0 phương trình có nghiệm kép x1 = x2 = -b/2a.

Nếu ∆ > 0 phương trình có 2 nghiệm phân biệt:

x1,2=b±Δ2a

Chương trình có thể viết như sau:

#Giải phương trình bậc hai dạng tổng quát

a = float(input("Nhập số a (a < > 0): "))

b = float(input("Nhập số b: "))

c = float(input("Nhập số c: "))

delta = b*b - 4*a*c

if delta == 0:

print("Phương trình có nghiệm kép x1 = x2 =", -b/(2*a))

if delta > 0:

print("Phương trình có 2 nghiệm x1 =", (-b + delta**0.5)/(2*a), " và x2 =", (-b - delta* *0.5)/(2*a))

if delta < 0:

print("Phương trình đã cho vô nghiệm ! ")

Lưu ý: Cũng có thể sử dụng câu lệnh if lồng trong nhau tương tự như Câu 19.10. Khi đó phần chính của chương trình có thể viết như sau:

if delta== 0:

print("Phương trình có nghiệm kép x1 = x2 =", -b/(2*a))

else:

if delta > 0:

print("Phương trình có 2 nghiệm x1 =", (-b + delta**0.5)/(2*a), " và x2 =", (-b - delta**0.5)/(2*a))

else :

print("Phương trình đã cho vô nghiệm! ") 


Câu 18:

Tiền điện được tính theo đơn giá bậc thang như sau: đơn giá 1 được áp dụng cho 50 kWh điện tiêu thụ đầu tiên, đơn giá 2 được áp dụng cho mỗi 1 kWh từ 51 cho tới 100; đơn giá 3 được áp dụng cho mỗi 1 kWh từ 101 cho tới 200 và đơn giá 4 áp dụng cho mỗi kWh từ 201 trở đi. Đơn giá và lượng điện tiêu thụ là các số nguyên được nhập vào từ bàn phím. Em hãy viết chương trình tính tiền điện phải nộp.

Xem đáp án

Chương trình có thể viết như sau:

#Tính tiền điện tiêu thụ theo đơn giá bậc thang

don_gia1 = int(input("Đơn giá điện 1: "))

don_gia2 = int(input("Đơn giá điện 2: "))

don gia3 = int(input("Đơn giá điện 3: "))

don gia4 = int(input("Đơn giá điện 4: "))

so_kW_tieuthu = int(input("Lượng điện tiêu thụ: "))

if so_kW_tieuthu <= 50:

tien_dien = don_gia1*so_kW_tieuthu

if so_kW_tieuthu > 50 and so_kW_tieuthu<=100:

tien_dien = don_gia1*50 + don_gia2*(so_kW_tieuthu - 50)

if so_kW_tieuthu > 100 and so_kW_tieuthu< =200:

tien_dien = don_gia1*50 + don_gia2*50 + don_gia3*(so_kW_tieuthu - 100)

if so_kW_tieuthu > 200:

tien_dien = don_gia1*50 + don_gia2*50 + don_gia3*100 + don_gia4* (so_kW_tieuthu - 200)

print("Tiền điện phải trả là: ", tien_dien, "đồng")

Lưu ý: Cũng có thể sử dụng các câu lệnh if lồng trong nhau như sau:

don_gia1 = int(input("Đơn giá điện 1: "))

don_gia2 = int(input("Đơn giá điện 2: "))

don_gia3 = int(input("Đơn giá điện 3: "))

don_gia4 = int(input("Đơn giá điện 4: "))

so_kW_tieuthu = int(input("Lượng điện tiêu thụ: "))

if so_kW_tieuthu <= 50:

tien_dien = don_gia1*so_kW_tieuthu

else:

if so_kw_tieuthu <= 100:

tien_dien = don_gia1*50 + don_gia2*(so_kw_tieuthu - 50)

else:

if so_kW_tieuthu <= 200:

tien_dien = don_gia1*50 + don_gia2*50 + don_gia3*(so_kW_tieuthu - 100)

else:

tien_dien = don_gia1*50 + don_gia2*50 + don_gia3*100 + don_gia4* (so_kW_tieuthu - 200)

print("Tiền điện phải trả là: ", tien_dien, "đồng")

Bắt đầu thi ngay