10 lỗi làm laptop chạy chậm? Nguyên nhân và cách khắc phục 2026

Nguyên nhân 10 lỗi làm laptop chạy chậm là gì?

Laptop của bạn chạy chậm, mở máy lâu, load chậm từng cửa sổ? Xem ngay nguyên nhân thường gặp và cách khắc phục đơn giản tại nhà hoặc mang đến tiệm “Bác Sĩ Máy Tính – Máy In” để được kiểm tra miễn phí!

Laptop dùng lâu năm bị chậm, giật, mở máy rất lâu là tình trạng nhiều người gặp phải. Đừng vội thay máy mới — vì chỉ cần kiểm tra đúng nguyên nhân và xử lý đúng cách, máy của bạn có thể chạy nhanh hơn gấp 5 lần!

1. Nguyên nhân khiến laptop bị chậm

Một chiếc laptop chậm thường đến từ 3 lý do chính:

  • Ổ cứng HDD cũ, đọc ghi chậm: Ổ cứng truyền thống dễ bị phân mảnh, tốc độ thấp. Khi mở file, Windows phải chờ rất lâu.

  • RAM quá ít (dưới 8GB): Nếu bạn mở Chrome, Excel, và vài ứng dụng khác, RAM 4GB sẽ nhanh chóng đầy, khiến máy giật lag.

  • Máy quá nóng, keo tản nhiệt khô: Nhiệt độ CPU/GPU cao khiến hệ thống tự động giảm tốc độ để bảo vệ linh kiện.

⚙️ 2. Cách khắc phục laptop chậm hiệu quả

Nâng cấp SSD:
Ổ SSD giúp tốc độ khởi động và mở ứng dụng nhanh hơn 5–10 lần so với HDD.

Nâng RAM:
Nếu bạn đang dùng 4GB RAM, hãy nâng lên 8GB để chạy mượt hơn, đặc biệt khi mở nhiều ứng dụng.

Vệ sinh & thay keo tản nhiệt:
Sau 6–12 tháng, bụi bẩn và keo khô khiến máy nóng, giảm hiệu năng. Vệ sinh và thay keo giúp máy mát, chạy ổn định.

Tối ưu phần mềm:
Gỡ ứng dụng không cần thiết, tắt chương trình khởi động cùng Windows, quét virus và cập nhật driver.

3. Khi nào nên mang đến tiệm sửa máy tính?

Nếu bạn đã thử các cách trên nhưng máy vẫn chậm, hãy mang đến “Bác Sĩ Máy Tính – Máy In” để được:

  • Kiểm tra miễn phí hiệu năng ổ cứng & RAM.

  • Tư vấn nâng cấp SSD phù hợp.

  • Vệ sinh, thay keo tản nhiệt miễn phí khi sửa chữa.

Thay ổ cứng SSD – Cách giúp máy tính chạy nhanh gấp 5 lần

  • Thay ổ cứng SSD cho laptop – Giải pháp cực nhanh cho máy tính chậm
  • Laptop bật lên quá lâu? Nâng cấp lên ổ cứng SSD giúp tăng tốc độ gấp 5 lần, mở máy chỉ trong 10 giây! Xem ngay lợi ích của việc thay SSD và khi nào nên nâng cấp.

Nội dung:

Bạn có bao giờ chờ 2–3 phút chỉ để laptop khởi động xong?
Tin vui là chỉ cần thay ổ cứng HDD cũ bằng SSD, máy của bạn có thể mở máy trong 10 giâychạy nhanh hơn 5–10 lần!

1. Vì sao SSD lại nhanh hơn HDD?

Ổ HDD dùng đĩa quay cơ học, tốc độ chỉ 50–100MB/s.
Trong khi đó, SSD lưu trữ bằng chip nhớ, tốc độ có thể lên đến 500MB/s (gấp 5–10 lần).

Khi thay SSD, bạn sẽ thấy:

  • Windows mở cực nhanh

  • Mở file, video, ứng dụng mượt

  • Không còn tiếng kêu “rẹt rẹt” từ ổ đĩa

2. Khi nào cần thay ổ cứng SSD?

  • Laptop bật lâu, ổ cứng kêu lạch cạch

  • Mở ứng dụng chậm, Disk 100% trong Task Manager

  • Máy hay bị treo, lỗi “Not Responding”

3. Lợi ích sau khi nâng cấp SSD:

  • Tốc độ khởi động nhanh gấp nhiều lần

  • Giảm nhiệt độ và tiếng ồn

  • Tiết kiệm điện, tăng tuổi thọ máy

4. Dịch vụ thay SSD tại tiệm “Bác Sĩ Máy Tính – Máy In”

  • Thay ổ SSD chính hãng, bảo hành 3–5 năm

  • Miễn phí cài lại Windows và sao lưu dữ liệu

  • Vệ sinh & thay keo tản nhiệt miễn phí khi thay ổ

 

 

Vệ sinh laptop định kỳ – Bí quyết giúp máy chạy mát và bền hơn

Vì sao cần vệ sinh laptop định kỳ? Lợi ích và thời gian vệ sinh phù hợp

Laptop chạy nóng, quạt kêu to, tự tắt đột ngột? Có thể đã đến lúc vệ sinh laptop. Xem ngay lý do bạn nên vệ sinh máy tính định kỳ 6 tháng/lần để máy luôn bền, mát và chạy nhanh.

Nội dung:

Nhiều người chỉ đem laptop đi vệ sinh khi máy kêu to hoặc nóng quá mức, nhưng thật ra, vệ sinh định kỳ giúp máy chạy mát, bền hơn và tiết kiệm tiền sửa chữa sau này.

️ 1. Vì sao phải vệ sinh laptop định kỳ?

Sau thời gian dài sử dụng, bụi bám dày vào quạt, khe tản nhiệt và mainboard. Keo tản nhiệt cũng khô lại, khiến CPU dễ quá nhiệt.

Khi đó:

  • Máy chạy nóng, quạt kêu to.

  • Mở ứng dụng chậm, máy giật lag.

  • Có thể tự tắt nguồn do quá nhiệt.

2. Bao lâu nên vệ sinh một lần?

  • Laptop văn phòng: 6 tháng/lần

  • Laptop gaming, thiết kế: 3–4 tháng/lần

3. Vệ sinh laptop gồm những gì?

  • Tháo và vệ sinh quạt, khe tản nhiệt

  • Thay keo tản nhiệt CPU/GPU

  • Làm sạch bàn phím, cổng USB, màn hình

  • Kiểm tra toàn bộ linh kiện

4. Lợi ích sau khi vệ sinh:

  • Máy mát hơn 10–20°C

  • Chạy nhanh và êm hơn

  • Tăng tuổi thọ linh kiện

  • Giảm nguy cơ hỏng mainboard

5. Dịch vụ tại “Bác Sĩ Máy Tính – Máy In”:

  • Vệ sinh toàn diện chỉ từ 100k – 150k

  • Miễn phí kiểm tra keo tản nhiệt & nhiệt độ CPU

  • Làm nhanh trong 30 phút, lấy ngay

Thay bàn phím laptop – Khi nào cần thay và chi phí bao nhiêu?

  • Bàn phím laptop bị liệt, dính phím? Khi nào nên thay bàn phím mới?
  • Bàn phím laptop bị liệt phím, dính nước hoặc gãy nút? Đừng lo! Xem ngay hướng dẫn cách kiểm tra và chi phí thay bàn phím laptop chính hãng tại “Bác Sĩ Máy Tính – Máy In”.
  • thay bàn phím laptop, bàn phím bị liệt, sửa bàn phím laptop, bàn phím laptop không gõ được

Nội dung bài viết:

Bàn phím laptop là bộ phận được sử dụng nhiều nhất và cũng dễ hỏng nhất. Khi bàn phím bị liệt, kẹt phím hoặc gãy nút, người dùng thường bối rối không biết nên sửa hay thay mới.

⚙️ 1. Dấu hiệu bàn phím laptop bị hư

  • Một số phím không bấm được hoặc gõ ra ký tự lạ.

  • Bàn phím tự gõ lung tung khi bật máy.

  • Sau khi đổ nước hoặc cà phê, bàn phím dính, gõ không ăn.

  • Nút bị rơi hoặc gãy chốt, không thể lắp lại.

Nếu gặp những lỗi này, bạn nên thay bàn phím mới để tránh ảnh hưởng đến bo mạch hoặc main laptop.

2. Cách kiểm tra bàn phím hư thật hay chỉ lỗi phần mềm

  • Thử bàn phím rời USB → Nếu gõ bình thường, lỗi nằm ở bàn phím laptop.

  • Vào trang web test bàn phím online để kiểm tra phím chết.

  • Cập nhật driver bàn phím hoặc thử khởi động lại ở chế độ Safe Mode.

3. Khi nào cần thay bàn phím mới?

  • Bàn phím liệt nhiều phím liên tục.

  • Dính nước → hư mạch bàn phím.

  • Không thể sửa bằng cách vệ sinh hoặc thay chip.

4. Giá thay bàn phím laptop (tham khảo)

HãngGiá thay (VNĐ)Bảo hành
Dell / HP / Asus250k – 350k3 – 6 tháng
Acer / Lenovo / MSI300k – 450k6 tháng
Macbook600k – 900k12 tháng

5. Dịch vụ tại “Bác Sĩ Máy Tính – Máy In”

  • Thay bàn phím chính hãng, 100% mới.

  • Bảo hành 6 tháng – 1 năm.

  • Vệ sinh máy và test toàn bộ phím miễn phí sau khi thay.

Sửa hoặc thay màn hình laptop – Cách nhận biết và giá bao nhiêu?

  • Màn hình laptop bị sọc, mờ, nứt? Nguyên nhân và cách khắc phục hiệu quả
  • Màn hình laptop bị sọc, đen, nhấp nháy hoặc nứt? Đọc ngay bài viết để biết khi nào nên sửa và khi nào phải thay mới, cùng bảng giá chi tiết tại “Bác Sĩ Máy Tính – Máy In”.

Nội dung :

Màn hình là bộ phận dễ bị hư hỏng nếu laptop bị rơi, va chạm hoặc dùng lâu ngày. Khi thấy máy bị sọc, nhấp nháy hoặc không hiển thị, bạn nên kiểm tra sớm để tránh hỏng nặng hơn.

⚡ 1. Dấu hiệu màn hình laptop bị lỗi

  • Xuất hiện sọc ngang hoặc dọc trên màn hình.

  • Màn hình nhấp nháy liên tục, đổi màu bất thường.

  • Một phần màn hình bị đen, trắng hoặc loang màu.

  • Vỡ kính, rạn nứt do va đập.

2. Nguyên nhân phổ biến

  • Cáp màn hình lỏng hoặc gãy.

  • Đèn nền (backlight) bị hư.

  • Chip VGA lỗi.

  • Tác động vật lý (rơi, va đập, tỳ mạnh lên nắp máy).

3. Khi nào nên thay màn hình mới?

Nếu màn hình bị vỡ, đen, hoặc mất hiển thị hoàn toàn, thì chỉ có thể thay mới.
Những lỗi nhẹ như sọc hoặc nhấp nháy, đôi khi có thể sửa hoặc thay cáp với chi phí thấp hơn.

4. Giá thay màn hình laptop (tham khảo)

Loại màn hìnhGiá thay (VNĐ)Bảo hành
HD (1366×768)700k – 900k6 tháng
Full HD (1920×1080)1.000k – 1.400k12 tháng
IPS / Cảm ứng1.500k – 2.500k12 tháng

5. Dịch vụ tại “Bác Sĩ Máy Tính – Máy In”

  • Thay màn hình zin chính hãng.

  • Bảo hành 6–12 tháng.

  • Miễn phí công lắp đặt & vệ sinh.

  • Test kỹ trước khi giao máy.

Cài lại Windows – Cách giúp máy tính chạy nhanh, mượt và ổn định hơn

  • Cài lại Windows – Khi nào cần và lợi ích cho máy tính chậm
  • Máy tính chậm, lỗi phần mềm, nhiều virus? Cài lại Windows giúp máy chạy nhanh và ổn định hơn. Tìm hiểu ngay khi nào nên cài lại Win và địa chỉ cài đặt uy tín.

Nội dung bài viết:

Sau thời gian dài sử dụng, Windows thường bị chậm, treo hoặc lỗi phần mềm. Việc cài lại Windows là cách đơn giản và hiệu quả nhất để giúp máy tính hoạt động như mới.

⚙️ 1. Khi nào nên cài lại Windows?

  • Máy tính khởi động chậm, load lâu.

  • Xuất hiện lỗi “Not Responding” liên tục.

  • Bị virus, phần mềm rác, quảng cáo tự bật.

  • Cập nhật Windows lỗi, driver không tương thích.

2. Lợi ích sau khi cài lại Windows

  • Máy tính chạy nhanh, ổn định, sạch virus.

  • Giao diện gọn gàng, ít ứng dụng rác.

  • Cập nhật hệ thống và driver mới nhất.

  • Tối ưu hiệu suất CPU, RAM, ổ cứng.

3. Cài Windows tại tiệm “Bác Sĩ Máy Tính – Máy In”

  • Cài Windows 10, 11 bản quyền.

  • Tích hợp phần mềm văn phòng, gõ tiếng Việt, diệt virus, trình duyệt.

  • Cài đặt đúng chuẩn, không lỗi bản quyền.

  • Miễn phí vệ sinh, thay keo tản nhiệt khi cài lại Win.

4. Bảng giá tham khảo

Dịch vụGiá (VNĐ)Ghi chú
Cài lại Windows 10/11150k – 200kMiễn phí phần mềm cơ bản
Cài Windows kèm SSD150k + giá SSDSao lưu dữ liệu miễn phí
Cài tại nhà200k – 250kKhu vực nội thành

  

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Vui lòng Chấm điểm 5 sao trang cho bài viết hay !

10 lỗi làm laptop chạy chậm? Nguyên nhân và cách khắc phục 2026

Khóa học Python online từ cơ bản đến nâng cao

  • Hotline: 093.717.9278 ( Gặp Tấn Dân Cử Nhân Công Nghệ Thông Tin)
  • Website: vitinhtandan.com
  • Email: vitinhtandan@gmail.com

200 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin 2026

Phần 4: 200 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin mới nhất năm 2025 – 2026

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình nhất !!!

Học Tin Học & Lập Trình Online – Word, Excel, Python Cho Bé & Người Đi Làm

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình

 

Câu 4.01: Trong Microsoft Excel 2010, ô A1 chứa giá trị 15, B1 chứa giá trị 0. Tại D1 lập công thức =A1/B1 thì nhận được kết quả:

  1. 0
  2. DIV/0!
  3. #VALUE!
  4. 15

Đáp án: B

 

Câu 4.02: Trong Microsoft Excel 2010, ô A1 chứa nội dung “TTNNTHHUFLITT”. Khi thực hiện công thức =LEN(A1) thì giá trị trả về là giá trị:

  1. 6
  2. 12
  3. 5
  4. 0

Đáp án: B

 

Câu 4.03: Trong Microsoft Excel 2010, tổ hợp phím nào thực hiện việc tạo mới một bảng tính:

  1. Shift + Ctrl + N
  2. Ctrl + N
  3. Ctrl + A
  4. Ctrl + O

Đáp án: B

 

Câu 4.04: Trong Microsoft Excel 2010, để lưu tập tin đang mở dưới một tên khác, ta chọn:

  1. File – Save As
  2. File – Save
  3. File – New
  4. File – Replace

Đáp án: A

 

Câu 4.05: Trong Microsoft Excel cho các giá trị như sau: ô A4=4, ô A3=6, ô A7=7; tại vị trí ô B2 lập công thức B2=Sum(A4,A2,Count(A3,A4)) cho biết kết quả ô B2 sau khi Enter:

  1. 10
  2. 9
  3. 11
  4. Lỗi

Đáp án: C

 

Câu 4.06: Trong Microsoft Excel, công thức =COUNTA(10,“C”,15) cho kết quả là:

  1. Báo lỗi
  2. 1
  3. 2
  4. 3

Đáp án: D

 

Câu 4.07: Trong Microsoft Excel ta gõ công thức tại ô B1 là: =AVERAGE(3,4,5,6) thì nhận được kết quả:

  1. 3
  2. 6
  3. 18
  4. 4.5

Đáp án: D

 

Câu 4.08: Trong Microsoft Excel ta gõ công thức tại ô B1 là: =MAX(12,3,9,15,8) thì nhận được kết quả là:

  1. 15
  2. 3
  3. 20
  4. 5

Đáp án: A

 

Câu 4.09: Trong Microsoft Excel ta gõ công thức tại ô B1 là: =MOD(20,3) thì nhận được kết quả:

  1. 2
  2. 1
  3. 0
  4. 20

Đáp án: A

 

Câu 4.10: Trong Microsoft Excel tại ô $A$4 (A4) dấu $ có ý nghĩa:

  1. Cố định ô A4
  2. Định dạng ô A4
  3. Được quyền chỉnh sửa ô A4
  4. Không được xóa ô A4

Đáp án: A

 

Câu 4.11: Trong Microsoft Excel tại ô A1=5. Hãy cho biết kết quả công thức tại ô B1=A1/0

  1. 5
  2. 10
  3. DIV/0
  4. #Value!

Đáp án: C

 

Câu 4.12: Trong Microsoft Excel tại ô A1 chứa chuỗi TINHOC.TA gõ công thức tại ô B1 là: =LEFT(A1,3) thì nhận được kết quả:

  1. !INH
  2. TIN
  3. HOC
  4. NHO

Đáp án: B

 

Câu 4.13: Trong Microsoft Excel tại ô A1 chứa chuỗi TINHOC. Ta gõ công thức tại ô B1 là: =MID(A1,2,3) thì nhận được kết quả:

  1. INH
  2. TIN
  3. HOC
  4. NHO

Đáp án: A

 

Câu 4.14: Trong Microsoft Excel tại ô A1 chứa chuỗi TINHOC. Ta gõ công thức tại ô B1 là: =RIGHT(A1,3) thì nhận được kết quả:

  1. INH
  2. TIN
  3. HOC
  4. NHO

Đáp án: C

 

Câu 4.15: Trong Microsoft Excel để rút trích dữ liệu ta vào chức năng:

  1. Data – Sort & Filter – Advanced
  2. Data – Sort & Filter – Filter
  3. Data – Data tools – Data validation
  4. Data – Data tools – Consolidate

Đáp án: B

 

Câu 4.16: Trong Microsoft Excel, các ô có chứa giá trị lần lượt: A1= “X”, A2= “01”, A3= “02”, A4= “03”. Hãy cho biết kết quả công thức tại ô B1=AVERAGE(A2:A4)

  1. 6
  2. 4
  3. 9
  4. DIV/0!

Đáp án: D

 

Câu 4.17: Trong Microsoft Excel, giá trị trả về của công thức =LEN(“TRUNG TAM TIN HOC”):

  1. 15
  2. 16
  3. 17
  4. 18

Đáp án: B

 

Câu 4.18: Trong Microsoft Excel, ô A1 chứa giá trị 8, công thức =IF(A1>=5, “TB”, IF(A1>=7, “Khá”, IF(A1>=8, “Giỏi”, “Xuất sắc”))) trả về kết quả bao nhiêu?

  1. Khá
  2. Giỏi
  3. Xuất sắc
  4. TB

Đáp án: D

 

Câu 4.19: Trong Microsoft Excel, ô A1 chứa giá trị ngày tháng năm: 22/05/2020. Khi thực hiện công thức =Day(A1) thì giá trị trả về là giá trị nào:

  1. 5
  2. #VALUE!
  3. #NAME?
  4. 22

Đáp án: D

 

Câu 4.20: Trong Microsoft Excel, tại ô A2 có giá trị là số 10; ô B2 có giá trị là số 3. Tại ô C2 gõ công thức =MOD(A2,B2) thì nhận được kết quả:

  1. 10
  2. 3
  3. #Value
  4. 1

Đáp án: D

 

Câu 4.21: Trong Microsoft Excel, để chuyển con trỏ về ô đầu tiên (ô A1) của bảng tính bạn sử dụng tổ hợp phím:

  1. Shift + Home
  2. Alt + Home
  3. Ctrl + Home
  4. Shift + Control + Home

Đáp án: C

 

Câu 4.22: Trong Microsoft Excel, để lưu tập tin đang mở với một tên mới hoặc một nơi khác, ta chọn:

  1. File – Save As
  2. File – Save
  3. File – New
  4. File – Replace

Đáp án: A

 

Câu 4.23: Trong Microsoft Excel, để mở một tập tin Microsoft Excel đã có, ta sử dụng tổ hợp phím:

  1. Ctrl + O
  2. Ctrl + F
  3. Alt + F
  4. Alt + O

Đáp án: A

 

Câu 4.24: Trong Microsoft Excel, để tạo đồ thị ta vào:

  1. Insert – Charts – chọn mẫu đồ thị cần tạo
  2. Insert – Illustration – Chart
  3. Insert – Text – Chart
  4. Insert – Pages – Chart

Đáp án: A

 

Câu 4.25: Trong Microsoft Excel, để định dạng chữ đậm cho dữ liệu, ta dùng tổ hợp phím:

  1. Ctrl + A
  2. Ctrl + B
  3. Ctrl + C
  4. Ctrl + D

Đáp án: B

 

Câu 4.26: Trong Microsoft Excel 2010, giá trị trả về công thức =LEN(“ĐH GTVT”) là bao nhiêu?

  1. 7
  2. 6
  3. 5
  4. 4

Đáp án: A

Câu 4.27: Trong Microsoft Excel 2010, hàm Today() trả về:

  1. Số ngày trong tháng
  2. Số tháng trong năm
  3. Ngày hiện hành trên hệ thống
  4. Số giờ trong ngày

Đáp án: C

 

Câu 4.28: Trong Microsoft Excel 2010, khi nhập liệu thì giá trị nào sau đây được hiểu là dữ liệu dạng chuỗi:

  1. 123
  2. -123
  3. 2000
  4. 20/20/2020

Đáp án: D

 

Câu 4.29: Trong Microsoft Excel 2010, tổ hợp phím nào được dùng để lưu file:

  1. Ctrl + O
  2. Ctrl + P
  3. Ctrl + S
  4. Ctrl + N

Đáp án: C

 

Câu 4.30: Trong ô D1 có công thức =A1+B1 vậy khi sao chép công thức này đến ô E3 thì công thức sẽ là:

  1. B3+E3
  2. B2+C2
  3. B4+C4
  4. B3+C3

Đáp án: D

 

Câu 4.31: Để chọn toàn bộ các ô trên bảng tính bằng tổ hợp phím bạn chọn:

  1. Nhấn tổ hợp phím Ctrl + A
  2. Nhấn tổ hợp phím Ctrl + All
  3. Nhấn tổ hợp phím Ctrl + Alt + Space
  4. Nhấn tổ hợp phím Ctrl + S

Đáp án: A

 

Câu 4.32: Để lưu một số bảng tính dạng mở dưới một tên khác, bạn vào thực đơn lệnh File, chọn lệnh:

  1. Open
  2. Save
  3. Save As
  4. Send To

Đáp án: C

 

Câu 4.33: Để thực hiện nội dung chữ trong một ô thành nhiều dòng ta dùng chức năng:

  1. Home – Agliment – Wrap Text
  2. Home – Agliment – Shrink to Fit
  3. Home – Agliment – Merge Cells
  4. Home – Agliment – Context

Đáp án: A

 

Câu 4.34: Địa chỉ B$3 là địa chỉ:

  1. Tương đối
  2. Tuyệt đối
  3. Hỗn hợp
  4. Biểu diễn sai

Đáp án: C

 

Câu 4.35: Trong bảng tính Microsoft Excel, tại ô A1 có giá trị số 16, tại ô B1 gõ vào công thức =SQRT(A1) thì nhận được kết quả là:

  1. 0
  2. #Value
  3. 4
  4. #Name!

Đáp án: C

 

Câu 4.36: Trong bảng tính Microsoft Excel, hàm nào sau đây cho phép đếm các giá trị thỏa mãn một điều kiện cho trước:

  1. SUMIF
  2. COUTIF
  3. COUNT
  4. SUM

Đáp án: B

 

Câu 4.37: Trong bảng tính Microsoft Excel, công thức = Lower(“ht CNTT”) cho kết quả:

  1. HT CNTT
  2. ht cntt
  3. Ht Cntt
  4. D: #NAME?

Đáp án: B

 

Câu 4.38: Trong bảng tính Microsoft Excel, công thức =Right(“TTTTTH”,2) cho kết quả:

  1. TH
  2. TT
  3. TTTH
  4. TTTT

Đáp án: A

 

Câu 4.39: Trong bảng tính Microsoft Excel, công thức =Mid(“m1234”,2,3) cho kết quả:

  1. Số 123
  2. Số 12
  3. Chuỗi “123”
  4. Số 23

Đáp án: C

Câu 4.40: Trong bảng tính Microsoft Excel, tại ô A2 có giá trị số 10, tại ô B2 gõ công thức =PRODUCT(A2,5) cho kết quả:

  1. #Value!
  2. 50
  3. 10
  4. 2

Đáp án: B

 

Câu 4.41: Trong bảng tính Microsoft Excel, tại ô A2 có giá trị chuỗi “a”, tại ô B2 gõ công thức =5/A2 cho kết quả:

  1. 0
  2. 5
  3. #Value!
  4. #DIV/0!

Đáp án: C

 

Câu 4.42: Trong bảng tính Microsoft Excel, tại ô A1 có giá trị chuỗi 2020, tại ô B1 gõ công thức =Len(A1) cho kết quả:

  1. 4
  2. 2020
  3. 1
  4. #DIV/0!

Đáp án: A

 

Câu 4.43: Trong bảng tính Microsoft Excel 2010, để thiết lập nhãn in, ta thực hiện:

  1. Thẻ Insert – Page Setup – Print Titles
  2. Thẻ Page Layout – Page Setup – Print Titles
  3. Thẻ File – Page Setup – Print Titles
  4. Thẻ Format – Page Setup – Print Titles

Đáp án: B

 

Câu 4.44: Trong bảng tính Microsoft Excel, để tách dữ liệu trong một ô thành hai hoặc nhiều ô, ta thực hiện:

  1. Thẻ Insert – Text to Columns – Delimited
  2. Thẻ Home – Text to Columns – Delimited
  3. Thẻ Fomulas – Text to Columns – Delimited
  4. Thẻ Data – Text to Columns – Delimited

Đáp án: D

 

Câu 4.45: Trong bảng tính Microsoft Excel, để thay đổi kiểu trang in ngang hoặc dọc, ta thực hiện:

  1. Thẻ Page Layout – Orientation – Portrait/Landscape
  2. Thẻ File – Page Setup – Portrait/Landscape
  3. Thẻ Format – Page Setup – Portrait/Landscape
  4. Thẻ Home – Orientation – Portrait/Landscape

Đáp án: A

 

Câu 4.46: Trong bảng tính Microsoft Excel, để giữ cố định hàng hoặc cột trong cửa sổ soạn thảo, ta đánh dấu hàng hoặc cột, chọn:

  1. Thẻ Review – Freeze Panes
  2. Thẻ View – Freeze Panes
  3. Thẻ Page Layout – Freeze Panes
  4. Thẻ Home – Freeze Panes

Đáp án: B

 

Câu 4.47: Trong bảng tính Microsoft Excel, tại ô A2 có giá trị TINHOC, tại ô B2 gõ công thức =6/VALUE(A2) cho kết quả:

  1. #DIV/0!
  2. #VALUE!
  3. 6
  4. TINHOC

Đáp án: B

 

Câu 4.48: Trong bảng tính Microsoft Excel, điều kiện trong hàm IF được phát biểu dưới dạng một phép so sánh. Khi cần so sánh đồng thời nhiều điều kiện thì sử dụng công thức nào?

  1. AND
  2. OR
  3. NOT
  4. &

Đáp án: A

 

Câu 4.49: Trong bảng tính Microsoft Excel, tại ô A1 có giá trị chuỗi “Excel”, ô B1 có giá trị số 2020, tại ô C1 gõ công thức =A1+B1 cho kết quả:

  1. Excel
  2. #VALUE!
  3. 2020
  4. Excel2020

Đáp án: B

 

Câu 4.50: Trong bảng tính Microsoft Excel, tại ô A2 gõ vào công thức =MAX(3,14,-25,5) cho kết quả:

  1. 3
  2. 4
  3. -25
  4. 14

Đáp án: D

 

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

  • Hotline: 093.717.9278 ( Gặp Tấn Dân Cử Nhân Công Nghệ Thông Tin)

 

Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!

  1. Giải đề 1 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  2. Giải đề 2 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi

150 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin 2026

Phần 3: 150 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin mới nhất 2025 – 2026

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình nhất !!!

Học Tin Học & Lập Trình Online – Word, Excel, Python Cho Bé & Người Đi Làm

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình

 

Câu 3.01: Trong Microsoft Word, để tạo chỉ số dưới như ví dụ bạn bấm tổ hợp phím nào?

  1. Ctrl + Alt + “=”
  2. Ctrl + Shift + “=”
  3. Ctrl + “=”
  4. Alt + Shift + “=”

Đáp án: C

 

Câu 3.02: Trong Microsoft Word, để tạo một bảng biểu, bạn sử dụng:

  1. Insert – Tables – Table – Insert Table
  2. Insert –Text – Table – Insert Table
  3. Format – Tables – Table – Insert Table
  4. Insert – Text – Insert Table

Đáp án: A

 

Câu 3.03: Với Microsoft Word 2010, để tắt tính năng kiểm tra lỗi chính tả ta chọn:

  1. File – Options – Proofing – bỏ chọn check spelling as you type
  2. File – Options – Save – When correcting spelling and grammar in word
  3. File – Options – Add-in – When correcting spelling and grammar in word
  4. File – Options – Advanced – Typing replaces selected text

Đáp án: A

 

Câu 3.04: Trong Microsoft Word, để tô màu và đóng khung cho đoạn văn bản ta chọn công cụ:

  1. Border and shading
  2. Paragraph
  3. Page Setup
  4. Styles

Đáp án: A

 

Câu 3.05: Với Microsoft Word 2010, để in các trang chẵn của văn bản ta thực hiện:

  1. File – Print – Settings – Chọn Only Print Odd Pages
  2. File – Print – Settings – Chọn Only Print Even Pages
  3. Home – Print – Chọn Only Print Odd Pages
  4. Home – Print – Chọn Only Print Even Pages

Đáp án: B

 

Câu 3.06: Với Microsoft Word 2010, muốn chia đôi màn hình soạn thảo, ta thực hiện:

  1. View – Window – Split
  2. Page Layout – Page Setup – Breaks
  3. Home – Paragraph – Multilevel List
  4. View – Zoom – Two Pages

Đáp án: A

 

Câu 3.07: Để chuyển đổi giữa chế độ gõ tiếng Việt và tiếng Anh của bộ gõ Unikey, bạn thực hiện:

  1. Ctrl + Shift
  2. Ctrl + Alt
  3. Ctrl + Alt + Delete
  4. Ctrl + Enter

Đáp án: A

 

Câu 3.08: Trong Microsoft Word, tổ hợp phím Ctrl + D là để:

  1. Mở hộp thoại Font
  2. Mở hộp thoại Paragraph
  3. Mở hộp thoại Page Setup
  4. Mở hộp thoại Clipboard

Đáp án: A

 

Câu 3.09: Với Microsoft Word 2010, để thực hiện thao tác trộn các ô trong bảng biểu, ta thực hiện:

  1. Bôi đen các ô cần trộn, chuột phải chọn Select
  2. Bôi đen các ô cần trộn, chuột phải chọn Merge Cells
  3. Bôi đen các ô cần trộn, chuột phải chọn AutoFit
  4. Bôi đen các ô cần trộn, chuột phải chọn Table Properties

Đáp án: B

 

Câu 3.10: Trong Microsoft Word, chức năng Dropcap dùng để:

  1. Làm tăng cỡ chữ cho văn bản trong đoạn
  2. Chữ hoa đầu từ cho toàn bộ đoạn văn bản
  3. Làm to kí tự đầu tiên của đoạn
  4. Chữ hoa cho toàn bộ đoạn văn bản

Đáp án: C

 

Câu 3.11: Với Microsoft Word 2010, để tăng khoảng cách đoạn chứa con trỏ với đoạn dưới nó, ta thực hiện:

  1. Page Layout – Paragraph – Spacing After
  2. Page Layout – Paragraph – Spacing Before
  3. Page Layout – Spacing After
  4. Page Layout – Spacing Before

Đáp án: A

 

Câu 3.12: Với Microsoft Word 2010, để thực hiện thao tác gõ văn bản bên trong hình vẽ Shapes, ta thực hiện:

  1. Chuột phải vào hình – Chọn Add Text
  2. Chuột phải vào hình – Chọn Edit Points
  3. Chuột phải vào hình – Chọn Wrap Text
  4. Chuột phải vào hình – Chọn Insert Caption

Đáp án: A

 

Câu 3.13: Khi soạn thảo văn bản Microsoft Word, trình tự nào sau đây là hợp lý nhất?

  1. Gõ văn bản – Định dạng – Chỉnh sửa – In
  2. Gõ văn bản – Định dạng – In – Chỉnh sửa
  3. Chỉnh sửa – Định dạng – Gõ văn bản – In
  4. Định dạng – Gõ văn bản – In – Chỉnh sửa

Đáp án: A

 

Câu 3.14: Khi soạn thảo văn bản Microsoft Word, bôi đen một cụm từ rồi lần lượt thực hiện thao tác Ctrl + B rồi đến Ctrl + I, cụm từ được bôi đen sẽ:

  1. Được in đậm và nghiêng
  2. Được in nghiêng
  3. Được in đậm
  4. Được gạch chân

Đáp án: A

 

Câu 3.15: Trong Microsoft Word, để thực hiện thao tác tách ô trong bảng biểu, ta sử dụng lệnh:

  1. Merge Cells
  2. Delete Table
  3. Delete Cells

 

  1. Split Cells

Đáp án: D

 

Câu 3.16: Để tạo một văn bản mới trong Microsoft Word, ta thực hiện:

  1. File – Exit
  2. File – Open
  3. File – Print
  4. File – New

Đáp án: D

 

Câu 3.17: Trong Microsoft Word, muốn trình bày văn bản trong khổ giấy dọc, ta chọn mục:

  1. Portrait
  2. Landscape
  3. Right
  4. Left

Đáp án: A

 

Câu 3.18: Trong Microsoft Word, lệnh Merge Cells dùng để:

  1. Trộn nhiều ô thành 1 ô
  2. Chia 1 ô thành nhiều ô
  3. Canh giữa bảng biểu
  4. Trộn nhiều bảng biểu

Đáp án: A

 

Câu 3.19: Khi soạn thảo Microsoft Word, muốn định dạng chỉ số trên cho văn bản ta dùng:

  1. Ctrl + “=”
  2. Ctrl + Shift + “=”
  3. Ctrl + Alt + “=”
  4. Shift + “=”

Đáp án: B

 

Câu 3.20: Microsoft Word là:

  1. Chương trình dùng để soạn thảo văn bản
  2. Một hệ điều hành
  3. Chương trình để xử lý bảng tính
  4. Chương trình dùng để vẽ

Đáp án: A

 

Câu 3.21: Với Microsoft Word 2010, để cài chức năng tự động lưu văn bản sau một khoảng thời gian, ta dùng:

  1. File – Option – General
  2. File – Option – Save
  3. File – Option – Display
  4. File – Option – Advanced

Đáp án: B

 

Câu 3.22: Trong Microsoft Word, tổ hợp phím Ctrl + ] dùng để:

  1. Giảm cỡ chữ (mỗi lần giảm đi 2 cỡ chữ)
  2. Tăng cỡ chữ (mỗi lần tăng lên 2 cỡ chữ)
  3. Giảm cỡ chữ (mỗi lần giảm đi 1 cỡ chữ)
  4. Tăng cỡ chữ (mỗi lần tăng lên 1 cỡ chữ)

Đáp án: D

 

Câu 3.23: Với Microsoft Word 2010, lệnh Home – Paste tương đương với:

  1. Ctrl + V
  2. Ctrl + X
  3. Ctrl + C
  4. Ctrl + O

Đáp án: A

 

Câu 3.24: Trong Microsoft Word, muốn về đầu văn bản ta bấm:

  1. Ctrl + Home
  2. Ctrl + Page Up
  3. Ctrl + Down
  4. Ctrl + End

Đáp án: A

 

Câu 3.25: Để chỉnh sửa văn bản được soạn thảo bằng tiếng Việt sử dụng font chữ .VnTime, bạn dùng bảng mã nào?

  1. TCVN3(ABC)
  2. Unicode
  3. Vni-Windows
  4. VIQR

Đáp án: A

 

Câu 3.26: Với Microsoft Word 2010, con trỏ đang nằm trong bảng, để chèn dòng mới vào phía dưới con trỏ, ta dùng lệnh:

  1. Insert Cells
  2. Insert Rows Above
  3. Insert Rows Below
  4. Insert Columns to the left

Đáp án: C

 

Câu 3.27: Với Microsoft Word 2010, lệnh Insert – Illustrations – Shapes dùng để:

  1. Vẽ một số hình đặc biệt
  2. Tạo chữ nghệ thuật
  3. Chèn hình ảnh
  4. Chèn kí tự đặc biệt

Đáp án: A

 

Câu 3.28: Trong Microsoft Word, tổ hợp phím nào có tác dụng di chuyển con trỏ về cuối văn bản hiện tại?

  1. End
  2. Ctrl + End
  3. Ctrl + Page Down
  4. Home

Đáp án: B

 

Câu 3.29: Trong soạn thảo Microsoft Word, muốn chuyển đổi giữa hai chế độ: chế độ gõ chèn và chế độ gõ đè, ta bấm phím:

  1. Insert
  2. Delete
  3. CapsLock
  4. Tab

Đáp án: A

 

Câu 3.30: Muốn định dạng dữ liệu trong Microsoft Word, trước hết ta phải:

  1. Home – Copy
  2. Home – Paste
  3. Chọn (bôi đen) dữ liệu
  4. Xóa dữ liệu

Đáp án: C

 

Câu 3.31: Trong Microsoft Word, tổ hợp phím Ctrl + End có tác dụng:

  1. Chuyển con trỏ đến đầu văn bản
  2. Chuyển con trỏ đến cuối văn bản
  3. Chuyển con trỏ đến đầu trang văn bản hiện hành
  4. Chuyển con trỏ đến cuối trang văn bản hiện hành

Đáp án: B

 

Câu 3.32: Trong khi soạn thảo Microsoft Word, nếu nhấn phím số 1 khi có một khối văn bản đang được chọn thì:

  1. Số 1 sẽ chèn vào sau khối văn bản đang chọn
  2. Số 1 sẽ chèn vào trước khối văn bản đang chọn
  3. Khối văn bản đó biến mất
  4. Khối văn bản đó biến mất và thay thế vào đó là số 1

Đáp án: D

 

Câu 3.33: Với Microsoft Word 2010, để hiển thị mục Replace trong hộp thoại Find and Replace, từ văn bản hiện tại ta ấn tổ hợp phím:

  1. Ctrl + G
  2. Ctrl + Y
  3. Ctrl + H
  4. Ctrl + F

Đáp án: C

 

Câu 3.34: Với Microsoft Word 2010, để thay đổi khoảng cách giữa hai đoạn văn bản ta thiết lập tại:

  1. Before và After trong thẻ Page Layout
  2. Left và Right trong thẻ Page Layout
  3. Above và Below trong thẻ Page Layout
  4. Line Spacing trong thẻ Page Layout

Đáp án: A

 

Câu 3.35: Với Microsoft Word 2010, lệnh Home – Copy tương đương với tổ hợp phím:

  1. Ctrl + C
  2. Ctrl + V
  3. Ctrl + O
  4. Ctrl + X

Đáp án: A

 

Câu 3.36: Trong Microsoft Word, để căn chỉnh một đoạn văn bản vào chính giữa, ta đưa con trỏ đến đoạn văn bản đó và nhấn:

  1. Ctrl + E
  2. Ctrl + J
  3. Ctrl + L
  4. Ctrl + R

Đáp án: A

 

Câu 3.37: Trong Microsoft Word, khi con trỏ đang ở cuối đoạn trên, để nối đoạn dưới vào cuối đoạn trên ta nhấn phím nào?

  1. Backspace
  2. Tab
  3. Enter
  4. Delete

Đáp án: D

 

Câu 3.38: Với Microsoft Word 2010, để chèn đồ thị vào văn bản, ta chọn:

  1. Insert – Illustrations – Picture
  2. Insert – Illustrations – ClipArt
  3. Insert – Illustrations – Shapes
  4. Insert – Illustrations – Chart

Đáp án: D

 

Câu 3.39: Khi soạn thảo Microsoft Word, để đánh dấu chọn một từ trong văn bản ta có thể:

  1. Nhấp đúp chuột vào từ cần chọn
  2. Bấm Ctrl + Z
  3. Bấm Ctrl + A
  4. Bấm chuột phải

Đáp án: A

 

Câu 3.40: Với Microsoft Word 2010, tổ hợp phím Ctrl + X sẽ tương đương lệnh gì?

  1. Home – Paste
  2. Home – Cut
  3. Home – Copy

 

  1. Home – Format Painter

Đáp án: B

 

Câu 3.41: Định dạng mặc định khi sử dụng siêu liên kết trong Word?

  1. Chữ màu xanh dương và có đường gạch chân đơn
  2. Chữ màu đỏ và có đường gạch chân đôi
  3. Siêu liên kết sẽ nằm trong table
  4. Chữ in đậm màu đen

Đáp án: A

 

Câu 3.42: Trong chế độ tạo bảng (Table) của phần mềm Microsoft Word 2010, muốn tách một ô thành nhiều ô, ta thực hiện:

  1. Table – Cells
  2. Table tools – Layuot – Split Cells
  3. Tools – Layout
  4. Table – Split Cells

Đáp án: D

 

Câu 3.43: Trong Microsoft Word 2010 để chuyển đổi giữa chế độ: gõ chèn và chế độ gõ đè, ta thực hiện:

  1. Nhấn phím Insert
  2. Nhấn phím CapsLock
  3. Vào MS Office Button – Word Options – Advance – bỏ chọn mục Use Overtype Mode
  4. Vào MS Office Button – Word Options – Advance – bỏ chọn mục Use Smart cut and paste

Đáp án: A

 

Câu 3.44: Khi soạn thảo văn bản, để khai báo thời gian tự lưu văn bản, ta thực hiện:

  1. File – Options – Save chọn thời gian tại mục Save AutoRecover info every
  2. Home – Options – Save chọn thời gian tại mục Save AutoRecover info every
  3. View – Options – Save chọn thời gian tại mục Save AutoRecover info every
  4. Insert – Options – Save chọn thời gian tại mục Save AutoRecover info every

Đáp án: A

 

Câu 3.45: Trong Microsoft Word 2010 để định dạng văn bản theo kiểu danh sách, ta thực hiện:

  1. Thẻ Home – Paragraph – nhấn vào nút Bullets hoặc Numbering
  2. Tools – Bullets and Numbering
  3. Format – Bullets and Numbering
  4. Edit – Bullets and Numbering

Đáp án: A

 

Câu 3.46: Trong Microsoft Word 2010 để chèn header hoặc footer trên trang văn bản, ta thực hiện:

  1. View – Header and Footer
  2. Thẻ Insert – Header and Footer – nhấn nút Header hoặc Footer
  3. Insert – Header and Footer
  4. Format- Header and Footer

Đáp án: B

 

Câu 3.47: Trong Microsoft Word 2010 để bật/tắt hiển thị thanh thước kẻ trên của sổ soạn thảo, ta thực hiện:

  1. View – Ruler
  2. View – Outline
  3. View – Show/Hide – đánh dấu/bỏ đánh dấu vào mục Ruler
  4. Thẻ Insert – đánh dấu vào mục Ruler

Đáp án: A

 

Câu 3.48: Trong Microsoft Word 2010 để thực hiện vẽ các đường thẳng, ô vuông, ta thực hiện:

  1. View – Toolbars – Drawing
  2. View – Toolbars – Standard
  3. Thẻ Insert – Illustrations – Shapes
  4. View – Show/Hide – Ruler

Đáp án: A

 

Câu 3.49: Trong Microsoft Word 2010 để ngắt trang ta thực hiện:

  1. Thẻ View – Page Break
  2. Thẻ References – Captions – Break
  3. Thẻ Review – Create – Page Break

 

  1. Thẻ Insert – Pages – Page Break

Đáp án: D

 

Câu 3.50: Trong Microsoft Word 2010 để thay đổi khoảng cách giữa các ký tự, ta thực hiện:

  1. Thẻ Home – Font nhấn nút mũi tên bên dưới – chọn thẻ Advance – chọn Expanded hoặc Condensed tại mục Character Spacing.
  2. Thẻ Insert – Font nhấn nút mũi tên bên dưới – chọn thẻ Spacing – chọn Expanded hoặc Condensed tại mục Character Spacing.
  3. Thẻ Page Layout – Font nhấn nút mũi tên bên dưới – chọn thẻ Spacing – chọn Expanded hoặc Condensed tại mục Character Spacing.
  4. Thẻ Review – Font nhấn nút mũi tên bên dưới – chọn thẻ Character Spacing – chọn Expanded hoặc Condensed tại mục Character Spacing.

Đáp án: A

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

  • Hotline: 093.717.9278 ( Gặp Tấn Dân Cử Nhân Công Nghệ Thông Tin)

 

Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!

  1. Giải đề 1 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  2. Giải đề 2 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi

100 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin 2026

Phần 2: 100 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin mới nhất năm 2026

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình nhất !!!

Học Tin Học & Lập Trình Online – Word, Excel, Python Cho Bé & Người Đi Làm

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình

 

Câu 2.01: Thư mục A có thể chứa:

  1. Thư mục 20/11/2019 và tập tin NhaGiao.txt
  2. Thư mục 20_11_2019 và tập tin NhaGiao.txt
  3. Chỉ chứa các thư mục con
  4. Chỉ chứa các tập tin

Đáp án: B

 

Câu 2.02: Thư mục A có thể chứa:

  1. Thư mục 20/11/2019 và tập tin NhaGiao.txt
  2. Thư mục 20\11\2019 và tập tin NhaGiao.txt
  3. Chỉ chứa các thư mục con và tập tin
  4. Chỉ chứa các tập tin

Đáp án: C

 

Câu 2.03: Thư mục A có thể chứa:

  1. Thư mục A&B và các tập tin a&b.txt
  2. Thư mục AB và các tập tin ab.txt
  3. Chỉ chứa các tập tin
  4. Chỉ chứa các thư mục

Đáp án: B

 

Câu 2.04: Thư mục A có thể chứa:

  1. Thư mục A+B và các tập tin a+b.txt
  2. Thư mục Toan/Hoc và tập tin PhepCong.txt
  3. Thư mục ToanHoc và tập tin PhepCong.txt
  4. Chỉ chứa các thư mục

Đáp án: C

 

Câu 2.05: Thư mục A có thể chứa:

  1. Thư mục A+B
  2. C và tập tin a+b
  3. Thư mục ToanHoc và tập tin BieuThuc.txt
  4. Chỉ chứa các thư mục

Đáp án: C

 

Câu 2.06: Thư mục A có thể chứa:

  1. Chỉ thư mục A, không thể chứa thư mục B
  2. Thư mục B và thư mục B
  3. Thư mục A
  4. Thư mục B

Đáp án: D

 

Câu 2.07: Thư mục A có thể chứa:

  1. Thư mục Phantram và tập tin T>.txt
  2. Thư mục >T và tập tin Tien.txt
  3. Thư mục @T và tập tin Tien.txt
  4. Thư mục T/T và tập tin Tien.txt

Đáp án: C

 

Câu 2.08: Tổ hợp phím nào dùng để đóng một ứng dụng đang chạy trên Windows?

  1. Ctrl+X
  2. Ctrl+F4
  3. Alt+F4
  4. Ctrl+W

Đáp án: C

Câu 2.09: Trên hệ điều hành Windows, để chuyển đổi cửa sổ chương trình cần làm việc ta:

  1. Nháy chọn biểu tượng chương trình tương ứng trên thanh Standard.
  2. Nhấn giữ phím Alt và gõ phím Tab cho đến khi chọn được cửa sổ chương trình.
  3. Nháy vào nút Close trên cửa sổ chương trình muốn kích hoạt.
  4. Click đúp chuột vào thanh TaskBar.

Đáp án: B

 

Câu 2.10: Trên Windows Explorer thành phần “Status Bar” có ý nghĩa:

  1. Hiển thị thông tin của thư mục hiện hành đang được chọn.
  2. Không có thành phần “Status Bar” trên Windows Explorer.
  3. Hiển thị các lệnh làm việc.
  4. Hiển thị các nút lệnh làm việc.

Đáp án: A

 

Câu 2.11: Trong các nhóm kí tự sau đây nhóm kí tự nào không được sử dụng để đặt tên của tập tin, thư mục:

  1. /, \, *, <, >
  2. @, 1, %
  3. –(,)
  4. , ”, @,

Đáp án: A

 

Câu 2.12: Trong hệ điều hành Windows chức năng disk Defragment là ứng dụng dùng để:

  1. Dọn rác ổ cứng.
  2. Làm tăng tuổi thọ ổ đĩa cứng.
  3. Làm giảm tuổi thọ ổ đĩa cứng.
  4. Chống phân mảnh ổ đĩa cứng.

Đáp án: D

 

Câu 2.13: Trong hệ điều hành Windows, muốn khôi phục đối tượng đã xoá. Ta mở cửa sổ Recycle Bin, chọn đối tượng muốn khôi phục.

  1. Nháy Edit và Restore
  2. Nháy Edit và Delete
  3. Nháy File và Restore
  4. Nháy File và Delete

Đáp án: C

 

Câu 2.14: Trong hộp thoại Run nhập lệnh nào để khởi động chương trình PowerPoint?

  1. PowerPoint.exe
  2. PowerPoint2010.exe
  3. PowerPnt.exe
  4. PowerPoint.cmd

Đáp án: C

 

Câu 2.15: Trong hộp thoại Run nhập lệnh nào để khởi động chương trình Microsoft Excel?

  1. Msconfig
  2. Regedit
  3. Excel
  4. Cmd

Đáp án: C

 

Câu 2.16: Trong quá trình soạn thảo văn bản bằng NotePad, ta có thể:

  1. Chèn một hình ảnh
  2. Soạn thảo văn bản tiếng Việt
  3. In nghiêng đoạn văn bản
  4. Gạch dưới đoạn văn bản

Đáp án: B

 

Câu 2.17: Trong quá trình soạn thảo văn bản bằng NotePad, ta có thể:

  1. Không định dạng đoạn văn bản
  2. Canh giữa, canh đều hai bên đoạn văn bản
  3. In đậm đoạn văn bản
  4. Canh trái, canh phải đoạn văn bản

Đáp án: A

 

Câu 2.18: Trong quá trình soạn thảo văn bản bằng NotePad:

  1. Ta chỉ có thể canh lề trái đoạn văn bản
  2. Ta không thể vẽ hình tròn, hình chữ nhật
  3. Ta có thể định dạng văn bản
  4. Ta có thể chèn hình ảnh vào văn bản

Đáp án: B

 

Câu 2.19: Trong quá trình soạn thảo văn bản trong Microsoft Word (WordpaD), ta có thể:

  1. Canh trái, canh phải đoạn văn bản
  2. Canh giữa đoạn văn bản
  3. Định dạng đoạn văn bản
  4. Không thể chèn hình

Đáp án: C

 

Câu 2.20: Trong thư mục A có tập tin tên GHICHU.TXT. Một người muốn tạo mới một tập tin trong thư mục A n2hưng không tạo được. Những lí do nào sau đây là đúng:

  1. Tên tập tin có chứa các kí tự đặc biệt ( / \ : ? < > * | )
  2. Tên tập tin mới là GHI_CHU.TXT
  3. Tên tập tin chưa đủ số kí tự yêu cầu
  4. Tên tập tin không có dấu ”?”

Đáp án: A

 

Câu 2.21: Trong thư mục A xó chứa 3 thư mục con. Một người muốn tạo mới một thư mục trong thư mục A nhưng không tạo được. Những lí do nào sau đây là đúng (trong Windows):

  1. Tên thư mục mới chưa có trong thư mục tên A
  2. Tên của thư mục mới có chưa những kí tự đặc biệt ( / \ : ? < > * | )
  3. Tên của thư mục mới đã có ở ổ đĩa khác
  4. Tên thư mục mới chưa có trong thư mục B

Đáp án: B

 

Câu 2.22: Trong ứng dụng Windows Explorer, để chọn nhiều tập tin hay thư mục không liên tục ta thực hiện thao tác kết hợp phím … với Click Mouse chọn:

  1. Shift
  2. Alt
  3. Tab
  4. Ctrl

Đáp án: D

 

Câu 2.23: Trong ứng dụng Windows Explorer, để chọn nhiều tập tin hay thư mục rời rạc ta thực hiện thao tác kết hợp phím … với Click Mouse chọn:

  1. Shift
  2. Alt
  3. Tab
  4. Ctrl

Đáp án: D

 

Câu 2.24: Trong Windows Explorer muốn tạo thư mục mới ta thực hiện:

  1. File – New – Folder
  2. Edit – New – Folder
  3. Tool – New – Folder
  4. View – New – Folder

Đáp án: A

 

Câu 2.25: Trong Windows Explorer để đổi tên một thư mục ta dùng thao tác nào sau đây:

  1. Click chọn tên thư mục đó và ấn phím F2
  2. Click chọn tên thư mục đó và dùng lệnh Edit – Cut
  3. Click chọn tên thư mục đó và dùng lệnh Edit – Paste
  4. Edit – Copy

Đáp án: A

 

Câu 2.26: Trong Windows Explorer, muốn sửa đổi tên của một thư mục, tập tin ta phải nhấp chuột trên thư mục, tập tin đó và chọn:

  1. Properties
  2. Create Shorcut
  3. Search
  4. Rename

Đáp án: D

 

Câu 2.27: Trong Windows Explorer, muốn xem hoặc thay đổi thuộc tính của một thư mục, tập tin ta phải nhấp chuột trên thư mục, tập tin đó và chọn:

  1. Properties
  2. Create Shorcut
  3. Search
  4. Rename

Đáp án: A

 

Câu 2.28: Trong Windows Explorer, người dùng có thể:

  1. Sao chép hoặc Di chuyển tập tin từ thư mục này sang thư mục khác.
  2. Định dạng đĩa mềm.
  3. Định dạng ổ đĩa, Tạo mới, Xoá, Đổi tên tập tin (hay thư mục)
  4. Chỉ có thể sao chép tập tin và thư mục

Đáp án: C

 

Câu 2.29: Trong Windows Explorer, ta có thể sử dụng chuột để:

  1. Không thể chọn tập tin hay thư mục
  2. Kéo thả tập tin từ thư mục này sang thư mục khác
  3. Kéo tập tin này sang tập tin khác
  4. Sao chép thư mục thành nhiều thư mục khác

Đáp án: B

 

Câu 2.30: Trong Windows Explorer, ta có thể:

  1. Chọn nhiều tập tin bằng bàn phím và chuột
  2. Chọn nhiều tập tin và thư mục bằng chuột
  3. Kết hợp phím tắt để chọn nhiều tập tin như Ctrl + C
  4. Không thể chọn nhiều thư mục và tập tin cùng một lúc

Đáp án: B

 

Câu 2.31: Trong Windows Explorer, ta có thể:

  1. Chia sẻ tập tin, thư mục, ổ đĩa cho những người khác trên mạng
  2. Chia sẻ máy in, máy fax cho những người khác trên mạng
  3. Chia sẻ toàn bộ dữ liệu trong máy tính
  4. Chia sẻ tài nguyên trên máy tính

Đáp án: B

 

Câu 2.32: Trong Windows Explorer, để xoá tất cả các tập tin và thư mục con có trong thư mục A người dùng phải:

  1. Đánh dấu chọn tất cả tập tin và thư mục con có trong thư mục A, Nhấn phím Delete
  2. Đánh dấu chọn thư mục A, nhấn phím Delete
  3. Đánh dấu chọn thư mục A, nhấn tổ hợp phím Shift + Delete
  4. Đánh dấu chọn tất cả các tập tin và thư mục con có trong thư mục A, nhấn phím Esc

Đáp án: A

 

Câu 2.33: Trong Windows Explorer:

  1. Ta có thể đặt thuộc tính cho nhiều tập tin cùng một lúc
  2. Không thể đồng thời chọn nhiều tập tin, thư mục trong cùng một thư mục
  3. Sao chép, xoá tập tin và thư mục
  4. Sao chép thư mục và chỉ di chuyển tập tin

Đáp án: C

 

Câu 2.34: Trong Windows Explorer:

  1. Ta có thể đặt thuộc tính cho nhiều tập tin cùng một lúc
  2. Không thể đồng thời chọn nhiều tập tin, thư mục ở nhiều thư mục khác nhau
  3. Tìm kiếm tập tin trên máy tính
  4. Chỉ có thể tìm kiếm thư mục

Đáp án: C

 

Câu 2.35: Trong Windows Explorer:

  1. Ta có thể xem dung lượng của ổ đĩa logic (Ví dụ: ổ C, D…)
  2. Ta có thể xem dung lượng còn trống của ổ đĩa logic (Ví dụ: ổ C, D…)
  3. Xem dung lượng còn trống của ổ đĩa logic (Ví dụ: ổ C, D…)
  4. Xem toàn bộ dung lượng ổ cứng

Đáp án: B

 

Câu 2.36: Trong Windows Explorer:

  1. Ta có thể sắp xếp các biểu tượng (tập tin, thư mục…) theo tên, kích thước
  2. Ta có thể sao chép các tập tin, thư mục
  3. Sắp xếp các biểu tượng (tập tin, thư mục…) theo tên
  4. Chỉ sắp xếp thư mục không sắp xếp tập tin

Đáp án: C

 

Câu 2.37: Trong Windows làm thế nào để hiển thị nhanh vào menu Start? (Cho phép chọn nhiều)?

  1. Ctrl + ESC + Enter
  2. Ctrl + Alt + Esc
  3. Nhấn phím Windows
  4. Không có cách nào khác, phải nhấn nút Power Off

Đáp án: C

 

Câu 2.38: Trong Windows, các biểu tượng trên Desktop có thể sắp xếp theo:

  1. Không thể sắp xếp theo tên (Name) hoặc Kiểu
  2. Kích thước (Size) hoặc ngày tạo (Date)
  3. Ta có thể sắp xếp theo tên (Name) hoặc Kiểu (Type)
  4. Sắp xếp theo tên (Name) hoặc Kiểu (Item Type), Size, Date Modify

Đáp án: D

 

Câu 2.39: Trong Windows, muốn đổi tên tập tin hay thư mục, ta thực hiện thao tác:

  1. Right Click Mouse vào đối tượng cần đổi tên – Rename – gõ tên mới
  2. Tools – Rename
  3. File – Copy
  4. Windows – Rename

Đáp án: A

 

Câu 2.40: Trong Windows, người dùng có thể tìm kiếm tập tin dựa theo các điều kiện tìm:

  1. Ta có thể tìm kiếm theo nội dung, ngày tạo, kích thước tập tin
  2. Nội dung được chứa trong tập tin
  3. Ngày tạo tập tin, thích thước
  4. Ngày tạo tập tin

Đáp án: B

 

Câu 2.41: Trong Windows, ở cửa sổ Explorer, để chọn một lúc nhiều tập tin hoặc thư mục nằm liền kề nhay trong một danh sách, bạn sử dụng lựa chọn nào?

  1. Giữ phím Ctrl và nháy chuột vào từng mục muốn chọn trong danh sách
  2. Giữ phím Alt và nháy chuột vào từng mục muốn chọn trong danh sách
  3. Nháy chuột ở mục đâu, ấn và giữ Shift nháy chuột ở mục cuối
  4. Giữ phím Tab và nháy chuột vào từng mục muốn chọn trong danh sách

Đáp án: C

 

Câu 2.42: Trong Windows, phát biểu nào sau đây là đúng:

  1. Có thể xoá một tập tin nếu tập tin đó đang được sử dụng
  2. Trong một thư mục bất kỳ, không bao giờ tồn tại 2 thư mục con cùng tên
  3. Một thư mục không thể chưa bất kỳ tập tin nào
  4. Cùng một thư mục, tập tin con có thể cùng tên

Đáp án: B

 

Câu 2.43: Trong Windows, ta có thể mở tối đa bao nhiêu chương trình NotePad tại một thời điểm:

  1. Không giới hạn
  2. 1
  3. 2
  4. 4

Đáp án: A

 

Câu 2.44: Trong Windows, tập tin Shortcut được tạo ra với mục đích:

  1. Khởi động nhanh một ứng dụng nào đó
  2. Di chuyển nhanh đến một thư mục nào đó
  3. Mở nhanh một tập tin nào đó
  4. Liên kết đến các icon

Đáp án: A

 

Câu 2.45: Trong Windows, tên tập tin có thể:

  1. Không có phần mở rộng
  2. Rỗng
  3. Có các kí tư đặc biệt ( / \ : ? < > * | )
  4. Có thể dài hơn 255 kí tự

Đáp án: A

 

Câu 2.46: Trong Windows, tên tập tin không được phép:

  1. Có khoảng trắng
  2. Có các ký tự đặc biệt ( / \ : ? < > * | )
  3. Có dấu gạch dướ ‘_’
  4. Có các dấu (+, -)

Đáp án: B

 

Câu 2.47: Trong Windows, trong thư mục A có thư mục B và thư mục C, người dùng không thể:

  1. Tạo thư mục A trong thư mục A
  2. Tạo thư mục A trong thư mục B
  3. Tạo thư mục B trong thư mục C
  4. Tạo thư mục C trong thư mục A

Đáp án: D

 

Câu 2.48: Trong Windows, để thiết đặt lại tuỳ chọn chức năng nhấn Mouse, ta vào nhóm ứng dụng:

  1. Control Windows
  2. Control Panel
  3. Control System
  4. Control Desktop

Đáp án: B

 

Câu 2.49: Trong Windows để xoá tất cả các tập tin và thư mục có trong Recycle Bin ta sẽ:

  1. Click phím phải của chuột lên biểu tượng Recycle Bin, rồi chọn Empty Recycle Bin
  2. Mở Recycle Bin, xoá tất cả các tập tin và thư mục có trong Recycle Bin
  3. Chọn Empty Recycle Bin
  4. Chỉ cần Click vào Empty Recycle Bin

Đáp án: A

 

Câu 2.50: Trong Windows, để đóng cửa sổ ứng dụng đang hoạt động:

  1. Nhấn nút Minimize bên phải thanh tiêu đề
  2. Nhấp phải chuột trên thanh tiêu đề chọn và close
  3. Nhấn Alt + F5
  4. Nhấn Ctrl + F4

Đáp án: B

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

  • Hotline: 093.717.9278 ( Gặp Tấn Dân Cử Nhân Công Nghệ Thông Tin)

 

Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!

  1. Giải đề 1 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  2. Giải đề 2 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi

50 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin 2026

Phần 1: 50 Câu hỏi trắc nhiệm tin học ứng dụng công nghệ thông tin mới nhất năm 2025 – 2026

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình

Học Tin Học & Lập Trình Online – Word, Excel, Python Cho Bé & Người Đi Làm

Tham Gia ngay nhóm Tin học trên Facebook để được hỗ trợ nhiệt tình

 

Câu 1.01: Thiết bị nào vừa là thiết bị vào vừa là thiết bị ra?

  1. Máy in
  2. Màn hình
  3. Modem
  4. Bàn phím

Đáp án: C

 

Câu 1.02: Thiết bị nào được gọi là thiết bị lưu trữ dữ liệu trong máy tính?

  1. Bàn phím
  2. Loa
  3. Đĩa cứng
  4. Máy chiếu

Đáp án: C

 

Câu 1.03: Thiết bị nào được gọi là thiết bị nhập trong máy tính?

  1. Màn hình
  2. Bàn phím
  3. Loa
  4. Máy in

Đáp án: B

 

Câu 1.04: Thiết bị nhập chuẩn máy tính bao gồm gì, bạn sử dụng lựa chọn nào?

  1. Màn hình, Máy in
  2. Máy in, Chuột
  3. Chuột, Bàn phím
  4. Bàn phím, Máy in

Đáp án: C

 

Câu 1.05: Thiết bị nhập, xuất của máy tính không bao gồm:

  1. Loa, Máy in, Đĩa CD-ROM
  2. RAM, ROM, các thanh ghi
  3. CPU, Chuột, Máy quét ảnh
  4. Màn hình, Máy in, ROM

Đáp án: B

 

Câu 1.06: Thiết bị xuất của máy tính gồm có?

  1. Bàn phím, Màn hình, Chuột
  2. Màn hình, Máy in
  3. Chuột, Màn hình, CPU
  4. Bàn phím, Màn hình, Loa

Đáp án: B

 

Câu 1.07: Thiết bị xuất của máy tính là:

  1. Màn hình
  2. Webcam
  3. Bàn phím
  4. Máy quét

Đáp án: A

 

Câu 1.08: Trình tự xử lý thông tin của máy tính điện tử là:

  1. Màn hình – CPU – Đĩa cứng
  2. Đĩa cứng – Màn hình – CPU
  3. Nhập thông tin – Xử lý thông tin – Xuất thông tin
  4. Màn hình – Máy in – CPU

Đáp án: C

 

Câu 1.09: Trong các máy vi tính, bộ nhớ ngoài thường bao gồm:

  1. CD-ROM, HDD, FDD
  2. Đĩa mềm (Flopy Disk), CPU (Central Processing Unit)
  3. Đĩa cứng (HDD)
  4. Đĩa cứng (HDD), CPU (Central Processing Unit)

Đáp án: A

 

Câu 1.10: Trong mạng máy tính, thuật ngữ Share có ý nghĩa gì?

  1. Chia sẻ tài nguyên
  2. Nhãn hiệu của một thiết bị kết nối mạng
  3. Thực hiện lệnh in trong mạng cục bộ
  4. Một phần mềm hỗ trợ sử dụng mạng cục bộ

Đáp án: A

 

Câu 1.11: Trong ứng dụng Windows Explorer, di chuyển là kết hợp 2 lệnh:

  1. Cut và Copy
  2. Copy và Cut
  3. Copy và Paste
  4. Cut và Paste

Đáp án: D

 

Câu 1.12: Trong ứng dụng Windows Explorer, sao chép là kết hợp 2 lệnh:

  1. Cut và Copy
  2. Copy và Cut
  3. Copy và Paste
  4. Cut và Paste

Đáp án: C

 

Câu 1.13: Trong Win 7 để khởi động lại máy, phát biểu nào sau đây là sai:

  1. Nhấn tổ hợp phím Ctrl – Alt – Del, chọn mục Restart
  2. Từ cửa sổ màn hình nền nhấn nút Start – Shutdown, sau đó chọn mục Restart
  3. Bấm nút Power trên hộp máy
  4. Bấm nút Reset trên hộp máy

Đáp án: C

 

 

Câu 1.14: Trong Win 7 để tắt máy tính đúng cách ta chọn:

  1. Nhấn nút Start ở góc dưới bên trái màn hình nền, chọn mục Shutdown
  2. Tắt nguồn điện
  3. Bấm nút Power trên hộp máy
  4. Bấm nút Reset trên hộp máy

Đáp án: A

 

Câu 1.15: Trong Windows, phím tắt nào giúp bạn truy cập nhanh Menu Start để có thể Shutdown máy?

  1. Alt + Esc
  2. Ctrl + Esc
  3. Ctrl + Alt + Esc
  4. Không có cách nào khác, phải nhấn nút Power Off

Đáp án: B

 

Câu 1.16: Từ viết tắt chỉ bộ nhớ ngoài của máy vi tính là:

  1. RAM
  2. ROM
  3. HDD
  4. Cache

Đáp án: C

 

Câu 1.17: Virus tin học thực chất là gì, bạn sử dụng lựa chọn nào?

  1. Một loại vi sinh vật sống ký sinh trên các thiết bị vật lý của máy tính
  2. Một kháng thể tồn tại bên ngoài không khí
  3. Một đoạn chương trình có kích thước cực kỳ nhỏ bé nhưng lại bao hàm trong nó những chức năng rất đa dạng
  4. Loại virus tự sinh ra trong CPU trong quá trình sử dụng

Đáp án: C

 

Câu 1.18: Đặc điểm nào không có ở bộ nhớ RAM (Random Access Memory):

  1. Bộ nhớ trong cho phép truy xuất ngẫu nhiên
  2. Sẽ mất dữ liệu trong bộ nhớ khi mất điện hay tắt máy
  3. Cho phép các chương trình nạp vào để hoạt động
  4. Bộ nhớ cho phép lưu trữ dữ liệu dài lâu

Đáp án: D

 

Câu 1.19: Để liên kết các máy tính trong một khu nhà có hai toà nhà cách nhau khoảng 500m, người ta dùng mạng gì?

  1. Internet
  2. Man
  3. Lan
  4. Mạng cục bộ

Đáp án: B

 

Câu 1.20: Để máy tính có thể làm việc hệ điều hành được cài đặt ở đâu?

  1. RAM
  2. Ổ đĩa cứng
  3. ROM
  4. CD-ROM

Đáp án: B

 

Câu 1.21: Để máy tính có thể làm việc được, hệ điều hành cần đưa thông tin vào đâu để xử lý?

  1. RAM
  2. Bộ nhớ ngoài
  3. Chỉ nạp vào bộ nhớ trong khi chạy chương trình ứng dụng
  4. ROM

Đáp án: A

 

Câu 1.22: Để mở rộng một cửa sổ chương trình phóng to hết màn hình:

  1. Nhắp vào biểu tượng Restore Down
  2. Nhắp vào biểu tượng Maximize
  3. Nhắp vào biểu tượng Minimize
  4. Nhắp vào biểu tượng Close

Đáp án: B

 

Câu 1.23: Để tăng tốc độ vi xử lý trung tâm thì người ta nâng cấp bộ phận nào sau đây?

  1. RAM
  2. CPU
  3. Đĩa cứng
  4. Card đồ hoạ

Đáp án: B

 

Câu 1.24: Để truy cập trang Web ta phải sử dụng phần mềm nào dưới đây?

  1. Windows Media Player
  2. Internet Explorer
  3. Microsoft Word
  4. Networking Manager

Đáp án: B

 

Câu 1.25: Đơn vị Byte trên máy tính bằng bao nhiêu Bit:

  1. 04 Bit
  2. 08 Bit
  3. 16 Bit
  4. 32 Bit

Đáp án: B

 

Câu 1.26: Đơn vị đo dung lượng nào nhỏ nhất?

  1. Kilobyte
  2. Megabyte
  3. Ghigabyte
  4. Bit

Đáp án: D

Câu 1.27: Đơn vị đo tốc độ CPU là?

  1. Megabit (Mbps)
  2. Kylobyte (KBps)
  3. Kylobit (Kbps)
  4. Gigaherts (GHz)

Đáp án: D

 

Câu 1.28: Mỗi track trên đĩa cứng được chia thành các phần nhỏ được gọi là gì?

  1. Sector
  2. Head
  3. Cylinder
  4. Cluster

Đáp án: A

 

Câu 1.29: Tiện ích nào được sử dụng để chống phân mảnh ổ đĩa?

  1. Disk Compression
  2. Antivirus Software
  3. Disk Check
  4. Disk Defragmentation

Đáp án: D

 

Câu 1.30: Kiểu định dạng ổ cứng luận lý (partition) nào sau đây hỗ trợ bảo mật dữ liệu tốt hơn?

  1. Volume
  2. NTFS
  3. FAT32
  4. Ext3

Đáp án: B

 

Câu 1.31: Kiểu định dạng ổ cứng luận lý (partition) nào sau đây chỉ hỗ trợ lưu trữ file có kích thước tối đa 4GB?

  1. Volume
  2. NTFS
  3. FAT32
  4. Ext3

Đáp án: C

 

Câu 1.32: Phương thức nào sau đây liên quan đến khái niệm trực tuyến:

  1. e-learning
  2. e-town
  3. C. Đào tạo từ xa, Hội nghị trực tuyến
  4. D. A và C là đúng

Đáp án: D

 

Câu 1.33: Dịch vụ nào sau đây sau đây không phải là dịch vụ Internet cho người dùng:

  1. A. e-banking
  2. B. e-government
  3. e-town
  4. e-commerce

Đáp án: C

 

Câu 1.34: Ứng dụng bán hàng trực tuyến (online shop) là thuộc loại dịch vụ Internet nào:

  1. A. e-banking
  2. e-government
  3. e-learning
  4. e-commerce

Đáp án: D

 

Câu 1.35: Câu nào sau đây không phải là ưu điểm của học trực tuyến (e-learning):

  1. A. Người học có thể ngồi ở nhà
  2. B. Người học không cần kết nối internet
  3. C. Người học có thể học trong khi đi công tác
  4. D. Người học không cần phải đến lớp

Đáp án: B

 

Câu 1.36: Khi các bác sĩ muốn hội chẩn cho một người bệnh ở xa thì họ cần sử dụng dịch vụ nào:

  1. A. Học trực tuyến
  2. B. Đào tạo trực tuyến
  3. C. Đào tạo từ xa
  4. D. Hội nghị trực tuyến

Đáp án: D

 

Câu 1.37: Để thanh toán tiền qua mạng, người dùng sẽ sử dụng dịch vụ Internet nào:

  1. A. e-banking
  2. B. e-government
  3. e-learning
  4. teleconference

Đáp án: A

 

Câu 1.38: Thiết bị nào không cần thiết trong hội nghị trực tuyến

  1. A. Loa
  2. Micro
  3. Máy quay video
  4. Lò vi sóng

Đáp án: D

 

Câu 1.39: Trang nào sau đây là trang tin điện tử:

  1. A. Báo điện tử, Trang tin điện tử cá nhân
  2. B. Tờ báo Tuổi trẻ
  3. C. Trang tin điện tử nội bộ
  4. D. A và C đúng

Đáp án: D

 

Câu 1.40: Điều nào không súng khi nói về điều kiện làm việc của nghề Tin học văn phòng:

  1. A. Làm việc trong nhà
  2. Ảnh hưởng thị lực
  3. C. Ảnh hưởng cột sống
  4. D. Tiếp xúc với độc hại

Đáp án: D

 

Câu 1.41: Bệnh nào là bệnh liên quan đến việc sử dụng máy tính nhiều:

  1. A. Bệnh ho gà
  2. B. Bệnh đau cột sống
  3. C. Cận thị
  4. Bệnh đau bao tử

Đáp án: C

 

Câu 1.42: Chọn mức độ ánh sáng ở màn hình máy tính và môi trường xung quanh cân bằng là giúp cho điều gì:

  1. A. Đỡ buồn ngủ
  2. B. Đỡ mỏi mắt
  3. C. Đỡ đau lưng
  4. D. Đỡ khát nước

Đáp án: B

 

Câu 1.43: Điều gì sau đây không phải là lợi ích của tái chế hộp mực in:

  1. A. Tiết kiệm tiền
  2. B. Bảo vệ môi trường
  3. C. Giảm rác thải
  4. D. Tiết kiệm nước

Đáp án: D

 

Câu 1.44: Điều gì sau đây không phải là nguy cơ ô nhiễm môi trường của pin máy tính phế thải:

  1. A. Ô nhiễm chì
  2. B. Ô nhiễm thủy ngân
  3. C. Ô nhiễm kẽm
  4. D. Ô nhiễm phóng xạ

Đáp án: D

 

Câu 1.45: Khi lựa chọn máy tính ở chế độ tự động tắt màn hình sau 20 giây, màn hình máy tính tự động tắt khi:

  1. A. Không đụng tới máy tính trong 20 giây
  2. B. Không sử dụng máy in trong 20 giây
  3. Không sử dụng Internet trong 20 giây
  4. Xuất ra máy in sau 20 giây

Đáp án: A

 

Câu 1.46: Với thiết lập nào của Control panel để giúp cài đặt chế độ tiết kiệm năng lượng:

  1. Display
  2. System and Security
  3. Devices and Printers
  4. Power options

Đúng: D

 

Câu 1.47: Lựa chọn nào sau đây tiết kiệm năng lượng cho máy tính:

  1. A. Không chạy các ứng dụng đồ hoạ trên máy tính.
  2. B. Đặt máy tính ở chế độ ngủ
  3. C. Tự động tắt màn hình, tự động tắt máy
  4. D. B và C đúng

Đáp án: D

 

Câu 1.48: Khi giao dịch trực tuyến nên làm gì để bảo vệ an toàn thông tin:

  1. Cảnh giác với thư giả mạo
  2. B. Cảnh giác với người lạ, cảnh giác khi thao tác trên máy tính của người lạ
  3. C. Không sử dụng USB
  4. D. A và B là đúng

Đáp án: D

 

Câu 1.49: Mật khẩu nào sau đây không phải là mật khẩu tốt:

  1. A. a921680b
  2. 123c2518
  3. C. 12345678
  4. abc123DE

Đáp án: C

 

Câu 1.50: Tại sao việc thay đổi mật khẩu thường xuyên có ích trong việc đảm bảo an toàn thông tin:

  1. A. Để dễ nhớ
  2. B. Để khó bị phát hiện
  3. C. Để hệ thống hoạt động nhanh
  4. D. Để dễ bị phát hiện

Đáp án: B

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

10 Đề ứng dụng công nghệ thông tin cơ bản mới nhất 2025-2026

Đề 1: ĐỀ ỨNG DỤNG CÔNG NGHỆ THÔNG TIN CƠ BẢN

PHẦN THI: THỰC HÀNH

Thời gian : 90 phút

(Thí sinh KHÔNG được sử dụng tài liệu)

_____

PHẦN I: Sử dụng hệ điều hành (1 điểm)              

Câu 1: Trong thư mục lưu bài của thí sinh

tạo cây thư mục như hình bên: (0,25 điểm)

Câu 2: Tìm 2 file hình ảnh bất kỳ, lưu vào

thư mục TƯ-LIỆU. (0,25 điểm)

Câu 3: Đổi thuộc tính của các tập tin trong

TƯ-LIỆU sang chỉ đọc. (0,25 điểm)

Câu 4: Nén toàn bộ thư mục TƯ-LIỆU này thành tập tin TULIEU.zip và chép vào thư mục CHÍNH-SÁCH. (0,25 điểm)

ĐỀ ỨNG DỤNG CÔNG NGHỆ THÔNG TIN CƠ BẢN

PHẦN II: Sử dụng trình chiếu cơ bản (2 điểm)

Câu 1: Sử dụng hình ảnh có trên máy tính của thí sinh (không nhất thiết phải giống như hình trong đề thi) để thiết kế đúng định dạng bài thuyết trình theo mẫu như đề thi (gồm 2 slide). (1 điểm)

Câu 2: Thiết kế hiệu ứng chuyển trang (Transition) bất kỳ cho các slide trong bài thuyết trình. (0,5 điểm)

Câu 3: Thiết lập hiệu ứng động (Animation) bất kỳ cho slide số 2 với yêu cầu hình ảnh xuất hiện trước, nội dung xuất hiện sau. (0,5 điểm)

2 De thi tin học cơ bản có đáp an

PHẦN III: Xử lý văn bản cơ bản (3 điểm)

Câu 1: Tạo đoạn văn bản sau (1 điểm)

        3 Tài liệu ôn thi chứng chỉ tin học cơ bản

Câu 2: Tạo biểu mẫu sau (1 điểm)

4 Mẹo thi tin học cơ bản

Câu 3: Tạo biểu thức (1 điểm)

 

5 Tài liệu ứng dụng công nghệ thông tin cơ bản

 

* Lưu ý: Thí sinh có thể sử dụng loại font, kích thước chữ, hình ảnh,…. khác với đề bài để thực hiện. Tuy nhiên cần đảm bảo sự thẩm mỹ, hợp lý.

PHẦN IV: Sử dụng bảng tính cơ bản (4 điểm)

Nhập nội dung và định dạng bảng sau: (1 điểm)

300 câu hỏi trắc nghiệm tin học có đáp An

Thực hành Excel ứng dụng công nghệ thông tin cơ bản

Mô tả:

  • 4 ký tự 3-4-5-6 của Phiếu bán quy định Mã SP.
  • 3 ký cuối của Phiếu bán quy định Số lượng bán.

Yêu cầu:

1- Điền thông tin cột Mã SP: dựa vào Phiếu bán. (0,5 điểm)

2- Điền thông tin cột Loại bánh: dựa vào Mã SP Bảng 1. (0,5 điểm).

3- Điền thông tin cột Giá: dựa vào Mã SP Bảng 2. (0,5 điểm).

4- Tính Tính tiền: = Số lượng x Giá. (0,5 điểm).

Định dạng dữ liệu cột này có dấu phân định hàng nghìn, không có số lẻ thập phân và tiền tệ là “Đồng” sau số tính.

5- Xếp hạng theo cột Thành tiền. (0,5 điểm)

6- Rút trích (ra một vùng riêng và có ghi rõ điều kiện rút trích) danh sách loại hàng có Phiếu bán chứa “BONG”. (0,5 điểm)

 

* Lưu ý : với các câu không giải được, thí sinh có thể nhập dữ liệu giả (phải chính xác) để làm các câu tiếp theo.

GIÁM THỊ KHÔNG GIẢI THÍCH GÌ THÊM ./.

ĐỀ ỨNG DỤNG CÔNG NGHỆ THÔNG TIN NÂNG CAO

PHẦN THI: THỰC HÀNH (mô đun: 7-8-9)

Thời gian : 90 phút

(Thí sinh KHÔNG được sử dụng tài liệu)

_____

 

PHẦN I: Sử dụng trình diễn nâng cao (3 điểm)

Câu 1: Sử dụng hình ảnh có trên máy tính của thí sinh (không nhất thiết phải giống như hình trong đề thi) để thiết kế như định dạng bài thuyết trình gồm các slide  (Master Title style, slide 1, slide 2, slide 3) theo mẫu như hình bên dưới.

  • Định dạng Master Title style.
  • Chèn Footer với nội dung “Thực hành powerpoint”, slide number và date and time ở chế độ Update Automatically. (1,5 điểm)

Câu 2: Thiết lập hiệu ứng chuyển trang (Transition) kiểu bất kỳ cho tất cả các slide trong bài thuyết trình, riêng slide thứ nhất tự động chuyển trang sau 3 giây. (0,5 điểm)

Câu 3: Thiết lập hiệu ứng động (Animation) bất kỳ cho slide số 2 với yêu cầu hình ảnh xuất hiện trước, nội dung xuất hiện sau. (0,5 điểm)

Câu 4: Trên slide số 3 tạo 1 nút (Action Button) để liên kết tới slide số 1. (0,5 điểm)

  • Master Title style:
 

Slide 1

Slide 3
 

 

Slide 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PHẦN II: Xử lý văn bản nâng cao (3 điểm)

Câu 1: Dùng công cụ Tabstop

tạo mục lục (0,5 điểm):

 

Câu 2: Tạo đoạn văn bản (1 điểm):

Cả 6 học sinh Hà Nội giành huy chương Olympic khoa học trẻ quốc tế

Thông tin từ Sở Giáo dục và Đào tạo Hà Nội, sáu học sinh Hà Nội tham dự Olympic Khoa học trẻ quốc tế năm 2023 tại Thái Lan đều giành huy chương, trong đó có 1 Huy chương Bạc và 5 Huy chương Đồng.

 

K

ỳ thi Olympic Khoa học trẻ quốc tế năm 2023 được tổ chức từ ngày 1 – 10/12 tại Thái Lan với sự tham gia của 304 học sinh thuộc 54 quốc gia và vùng lãnh thổ. Ban Tổ chức đã trao 182 Huy chương cho các thí sinh đoạt giải; trong đó có 34 Huy chương Vàng, 61 Huy chương Bạc và 87 Huy chương Đồng.

 

 

Câu 3: Tạo lưu đồ sau (1 điểm):          TLƯUTĐỒTTẠMTỨNG

 

* Lưu ý: Thí sinh có thể sử dụng loại font, kích thước chữ, hình ảnh,…. khác với đề bài để thực hiện. Tuy nhiên cần đảm bảo sự thẩm mỹ, hợp lý.

 

PHẦN III: Sử dụng bảng tính nâng cao (4 điểm)

Nhập nội dung và định dạng bảng sau: (1 điểm)

(Giá bán: dấu “.”được sử dụng để phân định phần thập phân)

Mô tả:

  • Ký tự thứ 3-4-5 của Hoá đơn quy định .
  • Ký tự thứ 7 của Hoá đơn quy định xuất xứ: C -> Cao cấp, N -> Nhập khẩu
  • Từ ký thứ 8 trở đi của Hoá đơn quy định Số lượng bán.

Yêu cầu:

1- Điền thông tin cột Tên set hàng: gồm Loại mặt hàng và xuất xứ. (0,5 điểm)

VD: Nếu Hoá đơn là “…SUA-C…” thì sẽ hiển thị thông tin: “Socola sữa – Cao cấp”

2- Điền thông tin cột Số lượng. (0,5 điểm)

3- Điền thông tin cột Giá bán: tra tại Bảng 1. (0,5 điểm)

4- Điền thông tin cột Khuyến mại: dựa vào Số lượng và tra tại Bảng 2. (0,5 điểm)

Ghi chú: chỉ có hàng Nhập khẩu thì mới được khuyến mại theo Số lượng (Bảng 2).

5- Điền thông tin cột Thanh toán:= Số lượng x Giá bán – phần Khuyến mại. (0,5 điểm)

Nếu bán trong tháng 9/2024 sẽ được giảm tiếp 3% trên số tiền tính;

Định dạng dữ liệu cột này có dấu phân định hàng nghìn và có 1 số lẻ thập phân;

Hiển thị đơn vị tính là “nghìn đồng” sau số tính.

6- Hoàn thành phần Thống kê theo doanh thu: như các thông tin yêu cầu. (0,5 điểm)

Định dạng dữ liệu kết quả có dấu phân định hàng nghìn và có 1 số lẻ thập phân.

 

* Lưu ý: với các câu không giải được, thí sinh có thể nhập dữ liệu giả (nhưng phải chính xác) để làm các câu tiếp theo.

GIÁM THỊ KHÔNG GIẢI THÍCH GÌ THÊM ./.

 

 

 

 

 

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

50 Đề thi học sinh giỏi Tin Học trên cả nước Việt Nam

Đề 1:  Đề THCS – Bà Rịa Vũng Tàu 2022 – 2023

Đề 2 thi học sinh giỏi lớp 9 môn Tin học – Tỉnh Bình Định năm 2022

50 Đề thi học sinh giỏi Tin học trên cả nước Việt Nam (Có đáp án và lời giải chi tiết)

Cập nhật mới nhất 2025:
Tổng hợp 50 đề thi học sinh giỏi môn Tin học lớp 9 và THCS của các tỉnh, thành phố trên cả nước Việt Nam, kèm lời giải chi tiết bằng Python hoặc Pascal. Bộ sưu tập này giúp học sinh ôn luyện toàn diện, chuẩn bị tốt nhất cho kỳ thi HSG cấp huyện, cấp tỉnh và thi vào lớp 10 chuyên Tin.


1. Giới thiệu bộ 50 đề thi Tin học trên cả nước

Môn Tin học là môn học đòi hỏi tư duy logic, kỹ năng lập trình và khả năng giải quyết vấn đề.
Bộ “50 Đề thi học sinh giỏi Tin học trên cả nước Việt Nam” được tổng hợp từ nhiều năm của các tỉnh như:
Hà Nội, TP. Hồ Chí Minh, Bình Định, Tiền Giang, Nghệ An, Đà Nẵng, Hải Phòng, Lâm Đồng, Cần Thơ, Thái Bình, Nam Định, Đồng Tháp,…

Mỗi đề đều gồm 5 bài lập trình, được sắp xếp từ dễ đến khó, giúp học sinh:

  • Ôn tập cấu trúc ngôn ngữ (Python hoặc Pascal)

  • Củng cố kỹ năng thuật toán cơ bản

  • Phát triển khả năng tư duy giải quyết bài toán thực tế


2. Nội dung và dạng bài thường gặp trong các đề thi

Sau khi tổng hợp 50 đề thi, có thể chia các dạng bài Tin học học sinh giỏi phổ biến như sau:

Dạng 1: Xử lý mảng 1 chiều

  • Tìm số lớn nhất, nhỏ nhất, tổng, trung bình, phần tử thỏa điều kiện.

  • Sắp xếp, đếm, lọc phần tử.
    Rèn kỹ năng duyệt mảng, sử dụng vòng lặp và điều kiện.

Dạng 2: Ma trận (mảng 2 chiều)

  • Tính tổng hàng, cột, đường chéo.

  • Xoay ma trận, phản chiếu, tìm phần tử đặc biệt.
    Kiểm tra khả năng làm việc với cấu trúc dữ liệu hai chiều.

Dạng 3: Xử lý chuỗi ký tự

  • Đếm từ, tách chữ, đếm nguyên âm – phụ âm.

  • Loại bỏ ký tự, viết hoa chữ cái đầu, so sánh chuỗi.
    Củng cố kỹ năng làm việc với string trong Python.

⚙️ Dạng 4: Thuật toán và quy hoạch động (Dynamic Programming)

  • Bài toán con ếch, chia kẹo, dãy con tăng dài nhất, ba lô,…
    Đòi hỏi tư duy phân tích và tối ưu thuật toán.

Dạng 5: Đồ thị và đường đi ngắn nhất

  • Duyệt đồ thị bằng DFS, BFS, tìm cây khung nhỏ nhất (Prim, Kruskal), hoặc đường đi ngắn nhất (Dijkstra, Floyd).
    Đây là phần khó, thường xuất hiện ở đề cấp tỉnh và chuyên Tin.


3. Lợi ích khi luyện 50 đề thi Tin học HSG

Học sinh khi luyện bộ đề này sẽ đạt được nhiều kỹ năng quan trọng:

Nắm chắc cấu trúc lập trình cơ bản: vòng lặp, điều kiện, hàm, mảng, chuỗi.
Hiểu rõ tư duy thuật toán: cách phân tích đề, chia bài toán nhỏ, tìm hướng tối ưu.
Làm quen với phong cách ra đề của các tỉnh – chuẩn bị tốt cho kỳ thi thật.
Tăng tốc độ lập trình và tư duy khi viết code.

Kết luận

Bộ 50 Đề thi học sinh giỏi Tin học trên cả nước Việt Nam là tài liệu không thể thiếu cho những ai đam mê lập trình và mong muốn đạt giải cao trong các kỳ thi học sinh giỏi.
Mỗi đề là một thử thách thú vị, giúp bạn nâng cao tư duy thuật toán, khả năng lập trình và tốc độ xử lý vấn đề.

Hãy tải về, luyện tập hằng ngày và chinh phục ước mơ trở thành học sinh chuyên Tin giỏi nhất!

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

  • Hotline: 093.717.9278 ( Gặp Tấn Dân Cử Nhân Công Nghệ Thông Tin)

 

100 bài tập C++ từ cơ bản đến nâng cao PDF có lời giải 2025-2026

Lời mở đầu

Ngôn ngữ lập trình C++ từ lâu đã trở thành một công cụ quan trọng trong việc học tập và nghiên cứu Tin học. Không chỉ giúp rèn luyện tư duy logic, C++ còn là nền tảng vững chắc để học sinh, sinh viên tiếp cận các kiến thức chuyên sâu hơn về cấu trúc dữ liệu, giải thuật và lập trình thi đấu.

Tài liệu “100 bài tập C++ từ cơ bản đến nâng cao – Có lời giải (2025-2026)” được biên soạn nhằm hỗ trợ các em học sinh, sinh viên cũng như những người yêu thích lập trình có một bộ bài tập thực hành đa dạng, hệ thống và có lời giải chi tiết. Các bài tập được sắp xếp từ mức độ cơ bản (cấu trúc rẽ nhánh, vòng lặp, mảng, chuỗi) đến nâng cao (đệ quy, quy hoạch động, đồ thị, thuật toán tham lam, cấu trúc dữ liệu).

Mỗi bài toán không chỉ đưa ra đề bài rõ ràng mà còn có hướng dẫn và lời giải bằng C++, giúp người học dễ dàng đối chiếu, rút kinh nghiệm và mở rộng tư duy. Bộ tài liệu này đồng thời cũng là nguồn tham khảo hữu ích cho các bạn học sinh chuẩn bị cho các kỳ thi Tin học, từ thi học sinh giỏi đến các kỳ thi tuyển sinh chuyên Tin.

Hy vọng rằng với tài liệu này, người học sẽ:

  • Củng cố kiến thức lập trình C++.

  • Nâng cao khả năng phân tích và giải quyết vấn đề.

  • Tự tin hơn khi bước vào các kỳ thi lập trình và ứng dụng thực tế.

tai ngay vi tính tấn dân

  • Còn em nào muốn học lý thuyết thì hãy vào đường dẫn phía dưới nhé ! chép từ bài 1 đến bài 21 là giỏi liền kha kha ! có tài liệu pdf tải về thoải mái !
    1. Tự học Python từ cơ bản đến nâng cao đến giải đề thi nhé có tài liệu pdf tải về học 

Danh sách 100 bài tập C++ từ cơ bản đến nâng cao

Bài 1: SỐ MAY MẮN 2025

  • Năm 2025 là một năm đặc biệt đối với bạn An. An muốn tạo ra một “số may mắn” mới từ số nguyên n bằng cách cộng thêm 2025 vào số đó.
  • Yêu cầu:
    Viết chương trình nhập vào một số nguyên n và in ra số may mắn của An.
  • Input
    Một số nguyên n (−10^9 ≤ n ≤ 10^9).
  • Output
    Một số nguyên duy nhất là n + 2025.

Ví dụ

Ví dụ 1:

Input
10
Output
8

Ví dụ 2:

Input
-5
Output
-7
#include <iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int res=n+2025;
    cout<<res;
    return 0;
}

Bài 2: HIỆU HAI ĐƠN VỊ

  • Cho một số nguyên a. Hãy tính giá trị của số đó sau khi giảm đi 2 đơn vị.
  • Yêu cầu:
    Viết chương trình nhập vào một số nguyên a và in ra kết quả a − 2.
  • Input
    Một số nguyên a (−10^9 ≤ a ≤ 10^9).
  • Output
    Một số nguyên duy nhất là a − 2.

Ví dụ

Ví dụ 1:

Input
10
Output
8

Ví dụ 2:

Input
-5
Output
-7
#include <iostream>
using namespace std;
int main()
{
    int a;
    cin>>a;
    int res=a-2;
    cout<<res;
    return 0;
}

Bài 3: XOÁ KÝ TỰ

  • Cho một chuỗi ký tự s và một ký tự c. Hãy xoá tất cả các lần xuất hiện của ký tự c trong chuỗi s và in ra chuỗi kết quả.
  • Yêu cầu:
    Viết chương trình nhập vào chuỗi s và ký tự c, sau đó in ra chuỗi sau khi đã xoá hết các ký tự c trong s.
  • Input
  • Dòng 1: Chuỗi s (không quá 1000 ký tự).

  • Dòng 2: Một ký tự c.

  • Output
  • Chuỗi kết quả sau khi xoá ký tự c.

Ví dụ

Ví dụ 1:

Input
hello world
l
Output
heo word

Ví dụ 2:

Input
mississippi
s
Output
miippi
#include <iostream>
#include <string>
using namespace std;

int main()
{
    string s;
    char c;
    getline(cin, s);
    cin >> c;
    string kq = "";
    for (int i = 0; i < s.length(); i++)
    {
        if (s[i] != c) kq += s[i];
    }
    cout << kq;
    return 0;
}

Bài 4: CHIA CHO 4

  • Cho một số nguyên n. Hãy tính giá trị của n chia cho 4 và in ra kết quả với 2 chữ số thập phân.
  • Input
    Một số nguyên n (−10^9 ≤ n ≤ 10^9).
  • Output
    Một số thực là n/4 với 2 chữ số thập phân.

Ví dụ

Ví dụ 1:

Input
10
Output
2.50

Ví dụ 2:

Input
7
Output
1.75
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int n;
    cin>>n;
    double res=(double)n/4;
    cout<<setprecision(2)<<fixed<<res;
    return 0;
}

Bài 5: LŨY THỪA CỦA SỐ NGUYÊN

  • Cho một số nguyên n. Hãy tính và in ra:
  • Giá trị n²
    Giá trị n⁵
  • Input
    Một số nguyên n (−1000 ≤ n ≤ 1000).
  • Output
    Giá trị n² và n⁵, mỗi kết quả in trên một dòng.

Ví dụ

Ví dụ 1:

Input
2
Output
4
32

Ví dụ 2:

Input
-3
Output
9
-243
#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int n;
    cin>>n;
    int res1=pow(n,2);
    int res2=pow(n,5);
    cout<<res1<<"\n";
    cout<<res2;
    return 0;
}

Bài 6: CĂN BẬC HAI

  • Cho một số nguyên n. Hãy tính căn bậc hai của n và in ra kết quả với 2 chữ số thập phân.
  • Input
    Một số nguyên n (0 ≤ n ≤ 10^9).
  • Output
    Căn bậc hai của n với 2 chữ số thập phân.

Ví dụ

Ví dụ 1:

Input
9
Output
3.00

Ví dụ 2:

Input
2
Output
1.41
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
    int n;
    cin>>n;
    double res=sqrt(n);
    cout<<setprecision(2)<<fixed<<res;
    return 0;
}

Bài 7: NGHỊCH ĐẢO SỐ NGUYÊN

  • Cho một số nguyên n. Hãy tính giá trị nghịch đảo của n (tức 1/n) và in ra kết quả với 5 chữ số thập phân.
  • Input
    Một số nguyên n (n ≠ 0, |n| ≤ 10^9).
  • Output
    Giá trị 1/n với 5 chữ số thập phân.

Ví dụ

Ví dụ 1:

Input
2
Output
0.50000

Ví dụ 2:

Input
7
Output
0.14286
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int n;
    cin>>n;
    double res= 1/double(n);
    cout<<setprecision(5)<<fixed<<res;
    return 0;
}

Bài 8: TÍNH TOÁN BIỂU THỨC

  • Cho hai số nguyên a và b. Hãy tính các giá trị sau:
  • P = 21·a + 5·b − 2009
    Q = 21·(a² − 5·b) / (2009·b²)
    R = (21·a + 5·b²) / (2009·b + 15)

Input
Hai số nguyên a và b (−1000 ≤ a, b ≤ 1000, b ≠ 0).

Output
Dòng 1: Giá trị P và Q (cách nhau một khoảng trắng).
Dòng 2: Giá trị R.

Ví dụ

Ví dụ 1:

Input
1 2
Output
-1983 -0.00174
0.00196

Ví dụ 2:

Input
5 3
Output
-1889 0.00696
0.01140
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    int P=21*a+5*b-2009;
    double Q=(21*(pow(a,2)-5*b))/(2009*(pow(b,2)));
    double R=((21*a+(5*pow(b,2)))/(2009*b+15));
    cout<<P<<" "<<Q<<"\n";
    cout<<R;
    return 0;
}

Bài 9: CHIA NGUYÊN VÀ DƯ

  • Cho hai số nguyên a và b. Hãy tính thương nguyên và số dư khi chia a cho b.
  • Input
    Hai số nguyên a và b (−10^9 ≤ a, b ≤ 10^9, b ≠ 0).
  • Output
    Hai số nguyên q và r, trong đó q là thương nguyên và r là số dư khi chia a cho b.

Ví dụ

Ví dụ 1:

Input
17 5
Output
3 2

Ví dụ 2:

Input
20 4
Output
5 0
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    int q = a / b;
    int r = a % b;
    cout << q << " " << r;
    return 0;
}

Bài 10: CHIA HAI SỐ NGUYÊN

  • Cho hai số nguyên a và b. Hãy tính thương nguyên và số dư của phép chia a cho b.
  • Input
    Hai số nguyên a và b (−10^9 ≤ a, b ≤ 10^9, b ≠ 0).
  • Output
    Thương nguyên và số dư, in trên một dòng, cách nhau một khoảng trắng.

Ví dụ

Ví dụ 1:

Input
17 5
Output
3 2

Ví dụ 2:

Input
20 4
Output
5 0
#include <iostream>
using namespace std;

int main() {
int a, b;
cin >> a >> b;
cout << a / b << " " << a % b;
return 0;
}

Bài 11: CHIA LẤY PHẦN NGUYÊN VÀ DƯ

  • Cho hai số nguyên n và m. Hãy tính thương nguyên và số dư của phép chia m cho n.
  • Input
    Hai số nguyên n và m (−10^9 ≤ n, m ≤ 10^9, n ≠ 0).
  • Output
    Thương nguyên và số dư, in trên một dòng, cách nhau một khoảng trắng.

Ví dụ

Ví dụ 1:

Input
5 17
Output
3 2

Ví dụ 2:

Input
4 20
Output
5 0
#include <iostream>
using namespace std;

int main() {
int n, m;
cin >> n >> m;
cout << m / n << " " << m % n;
return 0;
}

Bài 12: TÁCH CHỮ SỐ

  • Cho một số nguyên n có hai chữ số. Hãy in ra chữ số hàng đơn vị và chữ số hàng chục của n.
  • Input
    Một số nguyên n (10 ≤ n ≤ 99).
  • Output
    Chữ số hàng đơn vị và chữ số hàng chục của n, in trên một dòng, cách nhau một khoảng trắng.

Ví dụ

Ví dụ 1:

Input
57
Output
7 5

Ví dụ 2:

Input
42
Output
2 4
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int donvi = n % 10;
    int chuc = n / 10;
    cout << donvi << " " << chuc;
    return 0;
}

Bài 13: TỔNG CÁC CHỮ SỐ

  • Cho một số nguyên n có bốn chữ số. Hãy tính tổng các chữ số của n.
  • Input
    Một số nguyên n (1000 ≤ n ≤ 9999).
  • Output
    Tổng các chữ số của n.
  • Ví dụ

Ví dụ 1:

Input
1234
Output
10

Ví dụ 2:

Input
2025
Output
9
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int nghin = n / 1000;
    int tram = (n / 100) % 10;
    int chuc = (n / 10) % 10;
    int donvi = n % 10;
    cout << nghin + tram + chuc + donvi;
    return 0;
}

Bài 14: TỔNG HAI CHỮ SỐ HÀNG ĐƠN VỊ

  • Cho hai số nguyên a và b. Hãy tính tổng của chữ số hàng đơn vị của a và chữ số hàng đơn vị của b.
  • Input
    Hai số nguyên a và b (−10^9 ≤ a, b ≤ 10^9).
  • Output
    Tổng chữ số hàng đơn vị của a và b.

Ví dụ

Ví dụ 1:

Input
27 35
Output
12

Ví dụ 2:

Input
123 456
Output
9
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    cout << (a % 10) + (b % 10);
    return 0;
}

Bài 15: TỔNG HAI CHỮ SỐ

  • Cho hai số nguyên ab. Hãy tính tổng của chữ số hàng đơn vị của a và chữ số hàng chục của b.
  • Input
  • Hai số nguyên ab (−10^9 ≤ a, b ≤ 10^9).
  • Output
  • Một số nguyên là tổng cần tìm.

Ví dụ

Ví dụ 1:

Input
27 35
Output
10

Giải thích: chữ số hàng đơn vị của 27 là 7, chữ số hàng chục của 35 là 3. Tổng = 7 + 3 = 10.

Ví dụ 2:

Input
123 456
Output
8

Giải thích: chữ số hàng đơn vị của 123 là 3, chữ số hàng chục của 456 là 5. Tổng = 3 + 5 = 8.

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    cout << (a % 10) + ((b / 10) % 10);
    return 0;
}

Bài 16: Tách số có 3 chữ số

Nhập vào một số nguyên n có 3 chữ số. Hãy in ra lần lượt:

  • Chữ số hàng trăm

  • Chữ số hàng chục

  • Chữ số hàng đơn vị

  • Input
    Một số nguyên n (100 ≤ n ≤ 999).
  • Output
    Ba chữ số tách ra, cách nhau bởi khoảng trắng.

Ví dụ 1

Input
345
Output
3 4 5

Ví dụ 2

Input
907
Output
9 0 7
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    cout << n / 5000 << " " << n % 5000;
    return 0;
}

Bài 17. Đổi tiền (5000, 2000, 1000)

  • Đề bài
  • Nhập vào một số nguyên n (số tiền, bội số của 1000). Hãy đổi số tiền đó thành các tờ 5000, 2000, 1000 sao cho số tờ tiền là ít nhất.
    In ra lần lượt số tờ 5000, số tờ 2000 và số tờ 1000.

Ví dụ 1

Input

17000

Output

3 1 0

Ví dụ 2

Input

9000

Output

1 2 0
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int to5000 = n / 5000;
    n %= 5000;
    int to2000 = n / 2000;
    n %= 2000;
    int to1000 = n / 1000;
    cout << to5000 << " " << to2000 << " " << to1000;
    return 0;
}

Bài 18. Đổi giây sang giờ:phút:giây

  • Đề bài
  • Nhập vào một số nguyên n (số giây). Hãy đổi n giây thành dạng giờ:phút:giây và in ra kết quả theo đúng định dạng.

Ví dụ 1

Input

3661

Output

1:1:1

Ví dụ 2

Input

7322

Output

2:2:2
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int h = n / 3600;
    n %= 3600;
    int m = n / 60;
    int s = n % 60;
    cout << h << ":" << m << ":" << s;
    return 0;
}

Bài 19. Số bàn học tối thiểu

  • Đề bài
  • Trong một trường học có 3 lớp, lần lượt có a, b, c học sinh.
    Mỗi bàn có thể ngồi được 2 học sinh.
    Hãy tính số bàn học tối thiểu cần chuẩn bị cho 3 lớp.

Ví dụ 1

Input

20 21 22

Output

32

Ví dụ 2

Input

15 15 15

Output

23
#include <iostream>
using namespace std;

int main() {
    long long a, b, c;
    cin >> a >> b >> c;
    long long desks = (a + 1) / 2 + (b + 1) / 2 + (c + 1) / 2;
    cout << desks;
    return 0;
}

Bài 20. Chia đoạn thẳng

Đề bài

Cho một đoạn thẳng có độ dài L. Người ta muốn chia đoạn thẳng này thành các đoạn nhỏ có cùng độ dài d.
Hãy tính:

  • Số đoạn nhỏ chia được.

  • Độ dài đoạn thừa (nếu có).

Ví dụ 1

Input

25 4

Output

6 1

Ví dụ 2

Input

20 5

Output

4 0
#include <iostream>
using namespace std;

int main() {
    int L, d;
    cin >> L >> d;
    int soDoan = L / d;
    int du = L % d;
    cout << soDoan << " " << du;
    return 0;
}

Bài 21. Chu vi và diện tích hình vuông

Đề bài

Nhập vào độ dài cạnh của một hình vuông a.
Hãy tính:

  • Chu vi của hình vuông.

  • Diện tích của hình vuông.

Ví dụ 1

Input

5

Output

20 25

Ví dụ 2

Input

10

Output

40 100
#include <iostream>
using namespace std;

int main() {
    int a;
    cin >> a;
    int chuVi = 4 * a;
    int dienTich = a * a;
    cout << chuVi << " " << dienTich;
    return 0;
}

Bài 22. Chu vi và diện tích hình tròn

Đề bài

Nhập vào bán kính r của hình tròn.
Hãy tính:

  • Chu vi hình tròn.

  • Diện tích hình tròn.
    Kết quả in ra với 2 chữ số thập phân.

Ví dụ 1

Input

5

Output

31.42 78.54

Ví dụ 2

Input

10

Output

62.83 314.16
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int main() {
    int r;
    cin >> r;
    double chuVi = 2 * M_PI * r;
    double dienTich = M_PI * r * r;
    cout << fixed << setprecision(2) << chuVi << " " << dienTich;
    return 0;
}

Bài 23. Chu vi và diện tích hình chữ nhật

Đề bài

Nhập vào 2 số nguyên dương a, b là chiều dài và chiều rộng của hình chữ nhật.
Hãy tính:

  • Chu vi hình chữ nhật.

  • Diện tích hình chữ nhật.

Ví dụ 1

Input

5 3

Output

16 15

Ví dụ 2

Input

7 4

Output

22 28
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    int cv = (a + b) * 2;
    int dt = a * b;
    cout << cv << " " << dt;
    return 0;
}

Bài 24. Diện tích tam giác

Đề bài

Nhập vào độ dài cạnh đáy a và chiều cao h của một tam giác.
Tính diện tích của tam giác theo công thức:

S=(a×h)/2

Kết quả in ra với 1 chữ số thập phân.

Ví dụ 1

Input

6 4

Output

12.0

Ví dụ 2

Input

10 3

Output

15.0
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    double a, h;
    cin >> a >> h;
    double S = (a * h) / 2;
    cout << fixed << setprecision(1) << S;
    return 0;
}

25. Tính diện tích tam giác 2

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main() {
    double a, b, c;
    cin >> a >> b >> c;

    double cv = a + b + c;
    double p = cv / 2.0;
    double s = sqrt(p * (p - a) * (p - b) * (p - c));

    cout << fixed << setprecision(0) << cv << endl;
    cout << fixed << setprecision(3) << s << endl;

    return 0;
}

26. Tính bán kính hình tròn ngoại tiếp tam giác

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main() {
    double a, b, c;
    cin >> a >> b >> c;

    double p = (a + b + c) / 2.0;
    double S = sqrt(p * (p - a) * (p - b) * (p - c));
    double R = (a * b * c) / (4.0 * S);

    cout << fixed << setprecision(3) << R << endl;

    return 0;
}

27. Tính trung bình cộng

 

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int a, b, c;
    cin >> a >> b >> c;

    double tbc = (a + b + c) / 3.0;
    cout << fixed << setprecision(1) << tbc;

    return 0;
}

28. Tính điểm trung bình

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    double toan, van, anh;
    cin >> toan >> van >> anh;

    double tbc = (2*toan + 2*van + anh) / 5.0;

    cout << fixed << setprecision(1) << tbc;
    return 0;
}

29. Tính diện tích hình tròn

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int main() {
    double C;
    cin >> C;
    double S = (C * C) / (4 * M_PI);
    cout << fixed << setprecision(2) << S << endl;
    return 0;
}

30. Tính diện tích hình vuông

#include <iostream>
using namespace std;

int main() {
    int C;
    cin >> C;
    int a = C / 4;      
    int S = a * a;       
    cout << S << endl;
    return 0;
}

31. So sánh điểm

#include <iostream>
using namespace std;

int main() {
    float an, binh;
    cin >> an >> binh;

    if (an > binh)
        cout << "An gioi hon" << endl;

    if (binh > an)
        cout << "Binh gioi hon" << endl;

    if (an == binh)
        cout << "Bang nhau" << endl;

    return 0;
}

32. So sánh thời gian chạy

#include <iostream>
using namespace std;

int main() {
    int an, binh;
    cin >> an >> binh;

    if (an < binh)
        cout << "An nhanh hon" << endl;

    if (binh < an)
        cout << "Binh nhanh hon" << endl;

    if (an == binh)
        cout << "Bang nhau" << endl;

    return 0;
}

33. Chuyển số sang chữ

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n == 1) cout << "One";
    if (n == 2) cout << "Two";
    if (n == 3) cout << "Three";
    if (n == 4) cout << "Four";
    if (n == 5) cout << "Five";
    if (n == 6) cout << "Six";
    if (n == 7) cout << "Seven";
    if (n == 8) cout << "Eight";
    if (n == 9) cout << "Nine";
    if (n == 10) cout << "Ten";

    return 0;
}

34. Tìm số lớn nhất

#include <iostream>
using namespace std;

int main() {
    int a, b, c;
    cin >> a >> b >> c;

    if (a > b && a > c) cout << a;
    if (b > a && b > c) cout << b;
    if (c > a && c > b) cout << c;

    return 0;
}

35. Tính niên

#include <iostream>
using namespace std;

int main() {
    int t;
    cin >> t;

    if (t > 0 && t <= 11) cout << "Thieu nhi";
    if (t > 11 && t <= 25) cout << "Thieu nien";
    if (t > 25 && t <= 50) cout << "Trung nien";
    if (t > 50) cout << "Lao nien";

    return 0;
}

36. Xếp loại học sinh

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    double HKI, HKII;
    cin >> HKI >> HKII;

    double TBCN = (HKI + HKII * 2) / 3.0;
    cout << fixed << setprecision(1) << TBCN << endl;

    if (TBCN >= 8.0) cout << "Gioi";
    if (TBCN >= 6.5 && TBCN < 8.0) cout << "Kha";
    if (TBCN >= 5.0 && TBCN < 6.5) cout << "Trung binh";
    if (TBCN >= 3.5 && TBCN < 5.0) cout << "Yeu";
    if (TBCN < 3.5) cout << "Kem";

    return 0;
}

37.Tính mùa trong năm 1

#include <iostream>
using namespace std;

int main() {
    int thang;
    cin >> thang;

    if (thang == 2 || thang == 3 || thang == 4) cout << "Mua Xuan";
    if (thang == 5 || thang == 6 || thang == 7) cout << "Mua Ha";
    if (thang == 8 || thang == 9 || thang == 10) cout << "Mua Thu";
    if (thang == 11 || thang == 12 || thang == 1) cout << "Mua Dong";

    return 0;
}

38. Tính mùa trong năm 2

#include <iostream>
using namespace std;

int main() {
    int t;
    cin >> t;

    if (t >= 0 && t <= 20) cout << "Mua Dong";
    if (t >= 21 && t <= 25) cout << "Mua Xuan";
    if (t >= 26 && t <= 30) cout << "Mua Thu";
    if (t > 30) cout << "Mua Ha";

    return 0;
}

39. Kiểm tra số nguyên dương hay âm

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n > 0) cout << "So duong";
    if (n < 0) cout << "So am";
    if (n == 0) cout << "So khong";

    return 0;
}

40. Kiểm tra hai số nguyên cùng dấu hay khác dấu

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    if (a == 0 || b == 0) cout << 0;
    if ((a > 0 && b > 0) || (a < 0 && b < 0)) cout << 1;
    if ((a > 0 && b < 0) || (a < 0 && b > 0)) cout << -1;

    return 0;
}

41. Kiểm tra số nguyên có chia hết cho 6?

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n % 6 == 0)
        cout << "Yes";
    else
        cout << "No";

    return 0;
}

42. Kiểm tra số nguyên có lớn hơn 100?

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n > 100)
        cout << "Yes";
    else
        cout << "No";

    return 0;
}

43. Kiểm tra cân nặng

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n > 80) {
        cout << "Beo phi";
    } else if (n < 45) {
        cout << "Suy dinh duong";
    } else {
        cout << "Binh thuong";
    }

    return 0;
}

44. Kiểm tra chiều cao

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n > 180) {
        cout << "Huu cao co";
    } else if (n < 100) {
        cout << "Nam lun cute";
    } else {
        cout << "Binh thuong";
    }

    return 0;
}

45. Tìm số ngày của một tháng

#include <iostream>
using namespace std;

int main() {
    int t, n;
    cin >> t >> n;

    int ngay;

    // Kiểm tra năm nhuận
    bool namNhuan = (n % 400 == 0) || (n % 4 == 0 && n % 100 != 0);

    if (t == 2) {
        if (namNhuan) {
            ngay = 29;
        } else {
            ngay = 28;
        }
    } else if (t == 4 || t == 6 || t == 9 || t == 11) {
        ngay = 30;
    } else {
        ngay = 31;
    }

    cout << ngay;

    return 0;
}

46. Tính nút của biển số xe

#include <iostream>
using namespace std;

int main() {
    int soXe;
    cin >> soXe;

    int tong = 0, tmp = soXe;

    while (tmp > 0) {
        tong += tmp % 10;
        tmp /= 10;
    }

    int nut = tong % 10;

    cout << nut << endl;

    if (nut == 9) {
        cout << "Yes";
    } else {
        cout << "No";
    }

    return 0;
}

47. Kiểm tra số nguyên có phải là số chính phương?

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n < 0) {

        cout << "No";
    } else {
        int sq = sqrt(n);
        if (sq * sq == n) {
            cout << "Yes";
        } else {
            cout << "No";
        }
    }

    return 0;
}

48.Kiểm tra tam giác

#include <iostream>
using namespace std;

int main() {
    int a, b, c;
    cin >> a >> b >> c;

    if (a + b > c && a + c > b && b + c > a) {
        cout << "Yes" << endl;

        // Kiểm tra tam giác đều
        if (a == b && b == c) {
            cout << "Deu";
        }
        else if (a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a) {
            cout << "Vuong";
        }
        else if (a == b || b == c || a == c) {
            cout << "Can";
        }
        else {
            cout << "Thuong";
        }
    } else {
        cout << "No";
    }

    return 0;
}

49. Tính tiền taxi

#include <iostream>
using namespace std;

int main() {
    int km;
    cin >> km;
    int tien = 0;

    if (km <= 0) {
        tien = 0;
    } else if (km == 1) {
        tien = 12000;
    } else if (km <= 30) {
        tien = 12000 + (km - 1) * 10000;
    } else {
        tien = 12000 + 29 * 10000 + (km - 30) * 9000;
    }

    cout << tien;

    return 0;
}

50. Tính tiền điện

#include <iostream>
using namespace std;

int main() {
    int kWh;
    cin >> kWh;
    int tien = 0;

    if (kWh <= 50) {
        tien = kWh * 600;
    } else if (kWh <= 100) {
        tien = 50 * 600 + (kWh - 50) * 800;
    } else if (kWh <= 200) {
        tien = 50 * 600 + 50 * 800 + (kWh - 100) * 1100;
    } else {
        tien = 50 * 600 + 50 * 800 + 100 * 1100 + (kWh - 200) * 1500;
    }

    cout << tien;

    return 0;
}

51. Kiểm tra số nguyên chẵn lẻ, âm dương?

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    if (n % 2 == 0) {
        cout << "Chan" << endl;
        if (n > 0) {
            cout << "Duong";
        } else if (n < 0) {
            cout << "Am";
        } else {
            cout << "Khong";
        }
    } else {
        cout << "Le" << endl;
        if (n > 0) {
            cout << "Duong";
        } else {
            cout << "Am";
        }
    }

    return 0;
}

52. Đánh giá kết quả học tập theo tổng điểm

#include <iostream>
using namespace std;

int main() {
    int diem;
    cin >> diem;

    if (diem >= 85) {
        cout << "Loai A" << endl;
    } else if (diem >= 60) {
        cout << "Loai B" << endl;
    } else {
        cout << "Loai C" << endl;
    }

    if (diem >= 90) {
        cout << "Xuat sac";
    } else if (diem >= 80) {
        cout << "Gioi";
    } else if (diem >= 70) {
        cout << "Kha";
    } else if (diem >= 60) {
        cout << "Trung binh";
    } else if (diem >= 50) {
        cout << "Yeu";
    } else {
        cout << "Kem";
    }

    return 0;
}

53. Kiểm tra tuổi của một người đang ở giai đoạn nào?

#include <iostream>
using namespace std;

int main() {
    int age;
    cin >> age;

    if (age <= 15) {
        cout << "Tre em" << endl;
    } else if (age <= 60) {
        cout << "Nguoi truong thanh" << endl;
    } else {
        cout << "Nguoi cao tuoi" << endl;
    }

    if (age <= 5) {
        cout << "Tre mam non";
    } else if (age <= 10) {
        cout << "Tre tieu hoc";
    } else if (age <= 15) {
        cout << "Tre trung hoc";
    } else if (age <= 22) {
        cout << "Sinh vien";
    } else if (age <= 60) {
        cout << "Nguoi di lam";
    } else if (age <= 65) {
        cout << "Sap nghi huu";
    } else {
        cout << "Da nghi huu";
    }

    return 0;
}

54. Tìm 2 chữ số đầu và 2 chữ số cuối

#include <iostream>
using namespace std>
#include <iomanip> 

int main() {
    int n;
    cin >> n;

    int firstTwo = n / 10;      
    int lastTwo = n % 100;      

    cout << firstTwo << " " << setw(2) << setfill('0') << lastTwo;

    return 0;
}

55. Tìm số lớn nhất trong 4 số

#include <iostream>
using namespace std;

int main() {
    int a, b, c, d;
    cin >> a >> b >> c >> d;

    if (a == b && b == c && c == d) {
        cout << "=";
    } else {
        int maxVal = a;
        if (b > maxVal) maxVal = b;
        if (c > maxVal) maxVal = c;
        if (d > maxVal) maxVal = d;
        cout << maxVal;
    }

    return 0;
}

56. Kiểm tra ba số có là 3 cạnh của một tam giác và tính chu vi, diện tích

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main() {
    double a, b, c;
    cin >> a >> b >> c;

    if (a + b > c && a + c > b && b + c > a) {
        cout << "Day la 3 canh cua mot tam giac" << endl;

        double chuVi = a + b + c;
        double p = chuVi / 2; // nửa chu vi
        double dienTich = sqrt(p * (p - a) * (p - b) * (p - c)); 

        cout << fixed << setprecision(2) << chuVi << " " 
             << fixed << setprecision(1) << dienTich;
    } else {
        cout << "Day khong phai la 3 canh cua mot tam giac";
    }

    return 0;
}

57. Kiểm tra 2 số a, b có là 2 kích thước của hình chữ nhật và tính chu vi, diện tích

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    if (a > 0 && b > 0) {
        cout << "Day la 2 kich thuoc cua mot hinh chu nhat" << endl;
        int chuVi = 2 * (a + b);
        int dienTich = a * b;
        cout << chuVi << " " << dienTich;
    } else {
        cout << "Day khong phai la 2 kich thuoc cua mot hinh chu nhat" << endl;
        if (a <= 0 && b <= 0) {
            cout << "a va b la so am";
        } else if (a <= 0) {
            cout << "a la so am";
        } else {
            cout << "b la so am";
        }
    }

    return 0;
}

58. In ra các chữ số lẻ của một số có 8 chữ số

#include <iostream>
using namespace std;

int main() {
    long long n;
    cin >> n;

    string s = to_string(n);
    bool hasLe = false;

    for (char c : s) {
        int digit = c - '0';
        if (digit % 2 != 0) {
            if (hasLe) cout << " ";
            cout << digit;
            hasLe = true;
        }
    }

    if (!hasLe) {
        cout << "-";
    }

    return 0;
}

59. Tính tổng các chữ số chẵn của một số có 8 chữ số

#include <iostream>
using namespace std;

int main() {
    long long n;
    cin >> n;

    string s = to_string(n);
    int tong = 0;

    for (char c : s) {
        int digit = c - '0';
        if (digit % 2 == 0) {
            tong += digit;
        }
    }

    if (tong == 0) {
        cout << "-";
    } else {
        cout << tong;
    }

    return 0;
}

60. Tìm chữ số lớn nhất và nhỏ nhất của một số có 8 chữ số

#include <iostream>
#include <string>
using namespace std;

int main() {
    long long a;
    cin >> a;

    string s = to_string(a);
    int maxDigit = s[0] - '0';
    int minDigit = s[0] - '0';

    for (char c : s) {
        int digit = c - '0';
        if (digit > maxDigit) maxDigit = digit;
        if (digit < minDigit) minDigit = digit;
    }

    cout << maxDigit << " " << minDigit;

    return 0;
}

61. In những số tự nhiên từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    for (int i = 1; i <= n; i++) {
        if (i > 1) cout << " "; 
        cout << i;
    }

    return 0;
}

62. Tính tổng những số tự nhiên từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0;
    for (int i = 1; i <= n; i++) {
        tong += i;
    }

    cout << tong;

    return 0;
}

63. In những số tự nhiên chia hết cho 3 từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    for (int i = 3; i <= n; i += 3) {
        if (i > 3) cout << " ";
        cout << i;
    }

    return 0;
}

64. Đếm số lượng số tự nhiên chia hết cho 3 từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int count = n / 3; 

    cout << count;

    return 0;
}

65. Tính tổng những số tự nhiên chẵn từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0;
    for (int i = 2; i <= n; i += 2) {
        tong += i;
    }

    cout << tong;

    return 0;
}

66. Tính tổng những số tự nhiên chia hết cho 3 và 5 từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0;
    for (int i = 15; i <= n; i += 15) {
        tong += i;
    }

    cout << tong;

    return 0;
}

67. Tính tổng những số tự nhiên chia hết cho 3 hoặc 5 từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0;
    for (int i = 1; i <= n; i++) {
        if (i % 3 == 0 || i % 5 == 0) {
            tong += i;
        }
    }

    cout << tong;

    return 0;
}

68. Tính trung bình cộng những số tự nhiên chẵn từ 1 đến n

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0;
    for (int i = 1; i <= n; i++) {
        if (i % 3 == 0 || i % 5 == 0) {
            tong += i;
        }
    }

    cout << tong;

    return 0;
}

69. Tính trung bình cộng những số tự nhiên chia hết cho 5 từ 1 đến n

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0, dem = 0;
    for (int i = 1; i <= n; i++) {
        if (i % 5 == 0) {
            tong += i;
            dem++;
        }
    }

    if (dem == 0) {
        cout << "-";
    } else {
        double trungBinh = (double)tong / dem;
        cout << fixed << setprecision(1) << trungBinh;
    }

    return 0;
}

70. Tính trung bình cộng những số tự nhiên chia hết cho 3 và 5 từ 1 đến n

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tong = 0, dem = 0;
    for (int i = 15; i <= n; i += 15) {
        tong += i;
        dem++;
    }

    if (dem == 0) {
        cout << "-";
    } else {
        double trungBinh = (double)tong / dem;
        cout << fixed << setprecision(1) << trungBinh;
    }

    return 0;
}

71. In những số tự nhiên từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    for (int i = a; i <= b; i++) {
        if (i > a) cout << " "; 
        cout << i;
    }

    return 0;
}

72. Tính tổng những số nguyên từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int tong = 0;
    for (int i = a; i <= b; i++) {
        tong += i;
    }

    cout << tong;

    return 0;
}

73. Đếm số lượng số nguyên chia hết cho 3 từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int count = 0;
    for (int i = a; i <= b; i++) {
        if (i % 3 == 0) {
            count++;
        }
    }

    cout << count;

    return 0;
}

74. In những số nguyên chẵn từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    bool hasEven = false;
    for (int i = a; i <= b; i++) {
        if (i % 2 == 0) {
            if (hasEven) cout << " ";
            cout << i;
            hasEven = true;
        }
    }

    if (!hasEven) cout << "-";

    return 0;
}

75. Đếm số lượng số nguyên chẵn từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int dem = 0;
    for (int i = a; i <= b; i++) {
        if (i % 2 == 0) {
            dem++;
        }
    }

    cout << dem;

    return 0;
}

76. Tính tổng những số nguyên chẵn từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int count = 0;
    for (int i = a; i <= b; i++) {
        if (i % 2 == 0) {
            count++;
        }
    }

    cout << count;

    return 0;
}

77. Tính trung bình cộng những số nguyên chẵn từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int tong = 0, dem = 0;
    for (int i = a; i <= b; i++) {
        if (i % 2 == 0) {
            tong += i;
            dem++;
        }
    }

    if (dem == 0) {
        cout << "-";
    } else {
        cout << tong / dem; 
    }

    return 0;
}

78. Tính trung bình cộng những số nguyên chia hết cho 2 và 3 từ m đến n

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int tong5 = 0;
    int tong2_3 = 0, dem2_3 = 0;

    for (int i = a; i <= b; i++) {
        if (i % 5 == 0) {
            tong5 += i;
        }
        if (i % 2 == 0 && i % 3 == 0) {
            tong2_3 += i;
            dem2_3++;
        }
    }

    int trungBinh2_3 = (dem2_3 == 0) ? 0 : tong2_3 / dem2_3;

    cout << tong5 << " " << trungBinh2_3;

    return 0;
}

79. Tính trung bình cộng những số nguyên chia hết cho 2 hoặc 3 từ m đến n

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    int dem7 = 0;
    int tong2_3 = 0, dem2_3 = 0;

    for (int i = a; i <= b; i++) {
        if (i % 7 == 0) {
            dem7++;
        }
        if (i % 2 == 0 || i % 3 == 0) {
            tong2_3 += i;
            dem2_3++;
        }
    }

    double trungBinh2_3 = (dem2_3 == 0) ? 0.0 : (double)tong2_3 / dem2_3;

    cout << dem7 << " " << fixed << setprecision(1) << trungBinh2_3;

    return 0;
}

80. Đếm số nguyên chia hết cho 5 và in những số nguyên chia hết cho 5 từ m đến n

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    vector<int> chia5;
    for (int i = a; i <= b; i++) {
        if (i % 5 == 0) {
            chia5.push_back(i);
        }
    }

    cout << chia5.size() << " -";
    for (int num : chia5) {
        cout << " " << num;
    }

    return 0;
}

81. Tìm ước chung lớn nhất của hai số nguyên a và b

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;

    a = abs(a);
    b = abs(b);

    while (b != 0) {
        int r = a % b;
        a = b;
        b = r;
    }

    cout << a;

    return 0;
}

82. Rút gọn phân số

#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
int main()
{
    string s;
    getline(cin,s);
    stringstream ss(s);
    string w;
    vector<string>ws;
    while (ss>>w)
    {
        ws.push_back(w);
    }
    for (int i=0; i<ws.size()-1;i++)
    {
        cout<<ws[i]<<" ";
    }
    return 0;
}

83. Tìm số lượng chữ số của một số nguyên n

#include <iostream>
using namespace std;

int main() {
    long long so;
    cin >> so;
    if (so == 0) {
        cout << 1;
        return 0;
    }
    if (so < 0) so = -so;

    int dem = 0;
    while (so > 0) {
        so /= 10;
        dem++;
    }

    cout << dem;

    return 0;
}

84. In các chữ số của một số nguyên n

#include <iostream>
#include <vector>
using namespace std;

int main() {
    long long so;
    cin >> so;
    if (so < 0) so = -so;

    vector<int> chu_so_vec;
    if (so == 0) chu_so_vec.push_back(0);
    while (so > 0) {
        chu_so_vec.push_back(so % 10);
        so /= 10;
    }

    for (int i = chu_so_vec.size() - 1; i >= 0; i--) {
        cout << chu_so_vec[i];
        if (i > 0) cout << " ";
    }

    return 0;
}

85. Tính tổng các chữ số của một số nguyên n

#include <iostream>
using namespace std;

int main() {
    long long so;
    cin >> so;
    if (so < 0) so = -so;

    int tong = 0;
    while (so > 0) {
        tong += so % 10;
        so /= 10;
    }

    cout << tong;

    return 0;
}

86. In các chữ số chẵn của một số nguyên n

#include <iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int a[20],k=0;
    while (n>0)
    {
        int res=n%10;
        if (res%2==0)
        {
            a[k++]=res;

        }
        n/=10;
    }
    for (int i=k-1; i>=0;i--)
    {
        cout<<a[i]<< " ";

    }
    return 0;
}

87. Tính tổng các chữ số chẵn của một số nguyên n

#include <iostream>
using namespace std;
string kt_so_chia_het_cho_5(int n)
{
    if (n%5==0)
    {
        return "Yes";
    }
    return "No";
}
int main()
{
    int n;
    cin>>n;
    string res=kt_so_chia_het_cho_5(n);
    cout<<res<<"\n";
    return 0;
}

88. Tính tổng các chữ số lớn hơn số x của một số nguyên n

#include <iostream>
using namespace std;
int ucln(int a,int b)
{
    while (a!=b)
    {
        if (a>b)
        {
            a-=b;
        }
        else
        {
            b-=a;
        }
    }
    return a;
}
int main()
{
    int a,b;
    cin>>a>>b;
    int U=ucln(a,b);
    int tu=a/U;
    int mau=b/U;
    cout<<tu<<"/"<<mau;
    return 0;
}

89. Đếm số lượng chữ số lẻ của một số nguyên n

#include <iostream>
using namespace std;

int main() {
    long long so;
    cin >> so;
    if (so < 0) so = -so;

    int dem_le = 0;
    while (so > 0) {
        int chu_so = so % 10;
        if (chu_so % 2 != 0) {
            dem_le++;
        }
        so /= 10;
    }

    cout << dem_le;

    return 0;
}

90. Đảo ngược chữ số của một số nguyên n

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int k, x;
    cin >> k >> x;
    int a, n;
    int result = 0;
    for (int i = 0; i < k; i++) {
        cin >> a >> n;
        result += a * pow(x, n);
    }
    cout << result << endl;
    return 0;
}

91. Tìm chữ số lớn nhất của một số nguyên n

#include <iostream>
using namespace std;

void in_dong(int d) {
    for (int i = 0; i < d; i++) cout << '*';
    cout << endl;
}

void in_dong_rong(int d) {
    cout << '*';
    for (int i = 0; i < d - 2; i++) cout << ' ';
    if (d > 1) cout << '*';
    cout << endl;
}

int main() {
    int d, r;
    cin >> d >> r;

    if (r >= 1) in_dong(d);
    for (int i = 0; i < r - 2; i++) in_dong_rong(d);
    if (r > 1) in_dong(d);

    return 0;
}

92. Tìm chữ số nhỏ nhất của một số nguyên n

#include <iostream>
#include <iomanip>
using namespace std;
int cong(int a, int b) {
    return a + b;
}

double chia(double a, double b) {
    return a / b;
}

int main() {
    int a, b, c;
    cin >> a >> b >> c;

    int tong = cong(a, cong(b, c));

    double thu2 = (double)a/b+c;

    double thu3 = chia(a, (b + c));
    cout << tong << " ";
    cout << fixed << setprecision(2) << thu2 << " ";
    cout << fixed << setprecision(3) << thu3 << endl;

    return 0;
}

93.Tìm chữ số lẻ lớn nhất của một số nguyên n

#include <iostream>
using namespace std;
int min2(int x, int y) {
    return (x < y) ? x : y;
}

int main() {
    int a, b, c;
    cin >> a >> b >> c;
    int res = min2(a, min2(b, c));
    cout << res << endl;

    return 0;
}

94. Tìm chữ số chẵn nhỏ nhất của một số nguyên n

#include <iostream>
using namespace std;

int main() {
    long long so;
    cin >> so;
    if (so < 0) so = -so;

    int chan_nho_nhat = 10;
    while (so > 0) {
        int chu_so = so % 10;
        if (chu_so % 2 == 0 && chu_so < chan_nho_nhat) {
            chan_nho_nhat = chu_so;
        }
        so /= 10;
    }

    if (chan_nho_nhat == 10) cout << "-";
    else cout << chan_nho_nhat;

    return 0;
}

95. Tính số gốc của một số nguyên n

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int a[n];
    int t=0,d=n;
    for (int i=0;i<n;i++)
    {
        cin>>a[i];
        t+=a[i];
    }
    double tbc=(double)t/d;
    cout<<setprecision(1)<<fixed<<tbc;
    return 0;
}

96.In ra k số nguyên dương chẵn đầu tiên

#include <iostream>
#include <iomanip>
#include <sstream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int a[n],t=0,d=0;
    for (int i=0; i<n; i++)
    {
        cin>>a[i];
        if (a[i]%2==0)
        {
            d++;
            t+=a[i];
        }
    }
    if (d==0) cout<<"-";
    else
    {
    double tbc=(double)t/d;
    cout<<setprecision(2)<<fixed<<tbc;
    }
    return 0;
}

97. Tìm số chia hết cho 3 mà không chia hết cho 9 thứ k

#include <iostream>
#include <sstream>
#include <bits/stdc++.h>
using namespace std;
bool ktnt(int n)
{
    if (n<2) return 0;
    for (int i=2; i*i<=n; i++)
    {
        if (n%i==0) return 0;
    }
    return 1;
}
int main()
{
    string line;
    getline(cin,line);
    stringstream ss(line);
    int x,d=0;
    while (ss>>x)
    {
        if (ktnt(x)) d++;
    }
    if (d==0) cout<<"-";
    else
    {
        cout<<d;
    }
    return 0;
}

98.Tính tổng k số chẵn đầu tiên

#include <iostream>
using namespace std;
int ktnt(int n)
{
    if (n<2) return 0;
    for (int i=2; i*i<=n;i++)
    {
        if (n%i==0) return 0;
    }
    return 1;
}
int main()
{
    int n;
    cin>>n;
    int i=0,d=0,t=0;
    while (d<n)
    {
        if (ktnt(i) && ktnt(i+2))
        {
            d++;
            t+=i;
        }
        i++;
    }
    cout<<t;
    return 0;

}

99. Tính trung bình cộng k số tự nhiên đầu tiên không chia hết cho 3

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int d=0,t=0,i=0;
    while (d<n)
    {
        if (i%3!=0)
        {
            d++;
            t+=i;
        }
        i++;
    }
    double tbc=t*1.0/d;
    cout<<setprecision(1)<<fixed<<tbc;
    return 0;
}

100. Tính số tháng gửi tiền tiết kiệm để được số tiền n

#include <iostream>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    int d=0,t=a,k=a*0.02;
    while (t<=b)
    {
        t=t+k;
        k=t*0.02;
        d++;
    }
    cout<<d;
    return 0;

}

Lời kết

Bộ tài liệu 100 bài tập C++ từ cơ bản đến nâng cao ra đời nhằm cung cấp cho các bạn học sinh, sinh viên và những người yêu thích lập trình một hành trang vững chắc để rèn luyện kỹ năng lập trình C++ một cách toàn diện. Qua 100 bài tập, từ những bài cơ bản về biến, kiểu dữ liệu, cấu trúc điều kiện, vòng lặp, mảng, chuỗi, đến những bài nâng cao về hàm, con trỏ, cấu trúc dữ liệu, thuật toán, lập trình hướng đối tượng và các bài toán thực tiễn, người học sẽ từng bước củng cố lý thuyết, nâng cao tư duy giải quyết vấn đề và phát triển khả năng tự học.

Điểm đặc biệt của tài liệu là mọi bài tập đều kèm lời giải chi tiết, hướng dẫn từng bước thực hiện và giải thích thuật toán. Điều này không chỉ giúp người học hiểu rõ cách giải mà còn rèn luyện kỹ năng đọc hiểu code, tối ưu thuật toán và phát hiện lỗi. Thêm vào đó, các bài tập được sắp xếp theo mức độ khó tăng dần, từ dễ đến khó, giúp người học dễ dàng theo dõi, luyện tập theo năng lực, đồng thời tạo nền tảng để tiếp cận các bài toán phức tạp trong các kỳ thi tin học, lập trình, hoặc ứng dụng trong thực tế.

Trong quá trình học, người học được khuyến khích thử sức với các biến thể của bài tập, tự viết code và kiểm tra kết quả. Sự kết hợp giữa lý thuyết, thực hành và tự đánh giá sẽ giúp nâng cao kỹ năng lập trình một cách bền vững. Đây cũng là cơ hội để rèn luyện tư duy logic, khả năng phân tích và sáng tạo, những yếu tố quan trọng trong nghề lập trình.

Hy vọng tài liệu này sẽ là người bạn đồng hành hữu ích, giúp các bạn tự tin giải quyết các bài toán lập trình C++, từ cơ bản đến nâng cao, và mở rộng khả năng ứng dụng kiến thức trong học tập, thi cử và dự án thực tế. Chúc các bạn học tập hiệu quả, yêu thích lập trình và gặt hái nhiều thành công trong năm học 2025-2026 và các chặng đường lập trình tiếp theo.

Lần cuối cùng xin chúc các bạn thành công trong bài học này

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

 

Miễn phí 10% khóa học lập trình Python online “Hãy đăng ký ngay để được khuyến mãi !” 

  • Qua đường dây nóng hỏi: 093.717.9278 ( Gặp Thầy Tấn Dân Cử Nhân Công Nghệ Thông Tin)
  • Thầy Dân chuyên bồi dưỡng môn tin học thi học sinh giỏi cấp huyện, cấp tỉnh, ôn luyện thi vào Trường Chuyên Tin.

Khóa học Python online từ cơ bản đến nâng cao

Khóa học Python online từ cơ bản đến nâng cao

Trung tâm tin học Tấn Dân

Thông tin Khuyến mãi giảm giá học phí!

  • Giảm giá ưu đãi 100.000 đ khi đăng ký 2 bạn sinh viên học sinh trở lên !
  • Giảm 15% khi  tham gia 3 bạn sinh viên học sinh trở lên
  • Lưu ý :
    • Để nhận Ưu đãi học viên vui lòng đăng ký qua số điện thoại gặp Thầy Dân qua số điện thoại & Zalo: 0937.179.278
    • Học phí tham gia khóa học Online 1.600.000 trong 7 tháng.
    • Học từ cơ bản đến nâng cao và đến giải đề thi cấp Huyện.
    • Trong nhiều chính sách ưu đãi học viên chỉ áp dụng chính sách ưu đãi cao nhất!
    • Có nhận học viên thường xuyên
    • Thời gian học từ thứ 3 và thứ 5;  từ 2 giờ đến 4 giờ hàng tuần.
  • Hãy đăng ký ngay để nhận ưu đãi đến hết ngày 10 tháng 10 năm 2024 !

 

2 Đề thi học sinh giỏi Tin học THCS cấp tỉnh Tiền Giang có đáp án

2 Đề thi học sinh giỏi Tin học THCS cấp tỉnh Tiền Giang có đáp án

SỞ GIÁO DỤC VÀ ĐÀO TẠO
TỈNH TIỀN GIANG
KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH

TrUnG học Cơ Sở

Năm học 2023-2024
Môn thi: TIN HỌC

Thời gian làm bài: 150 phút, không kể thời gian phát đề
Ngày thi: 27/3/2024

ĐỀ THI CHÍNH THỨC
(Đề thi có 04 trang, gồm 05 bài)

[trustindex no-registration=google]

Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!

  1. Giải đề 1 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  2. Giải đề 2 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  3. Giải đề 3 thi học sinh giỏi tin học lập trình Python có đáp án
  4. Giải đề 4 ôn thi học sinh giỏi Tin Học THCS lập trình Python có đáp án
  5. Giải đề 5 và đáp án thi HSG Tin Python có số Pell.
  6. Giải đề 6 và đáp án bồi dưỡng học sinh giỏi tin 10 có số Armstrong
  7. Giải đề 7 và đáp án  thi học sinh giỏi tin học 10 Python có số Collatz
  8. Giải đề 8 trong 20 đề Bồi dưỡng học sinh giỏi Tin học lớp 9 có số Kaprekar.
  9. Giải đề 9 thi HSG Tin học lớp 8 lập trình Python có số Happy
  10. Giải đề 10 thi tin học trẻ THPT có bài  In các xâu con trong xâu s.
TỔNG quan các bài thi

Thứ tựTên bàiFile chương trìnhFile dữ liệu vàoFile kết quả
1Tiền điệnELCOST.*ELCOST.INPELCOST.OUT
2Độ mạnh của xâuSTRONG.*STRONG.INPSTRONG.OUT
3Tổng dòng cộtSUM.*SUM.INPSUM.OUT
4Xâu lặpSUBSTR.*SUBSTR.INPSUBSTR.OUT
5Phần thưởngGIFT.*GIFT.INPGIFT.OUT

Dấu * được thay thế bởi PAS, CPP, PY của ngôn ngữ lập trình được sử dụng tương ứng là Free Pascal, C++, Python hoặc phần mở rộng tương ứng với NNLT khác.

 

 

 

Học sinh chỉ được chọn một trong các môi trường quy định ở trên lập trình để làm toàn bộ bài thi.

Bài 1: Tiền điện (4,0 điểm) Tên chương trình: ELCOST.*

Giá bán lẻ điện sinh hoạt được tính theo 3 bậc gồm:

  • Bậc 1: 100 Kwh đầu tiên, có giá là 2500 đồng/Kwh
  • Bậc 2: Từ Kwh 101 đến 200, có giá là 3000 đồng/Kwh
  • Bậc 3: Từ Kwh 201 trở lên, có giá là 3500 đồng/Kwh

Yêu cầu: Tính tổng tiền điện phải trả của một khu phố gồm n hộ gia đình.

Dữ liệu vào: Đọc từ file văn bản ELCOST.INP gồm hai dòng:

  • Dòng 1: Chứa số nguyên dương n (1 < n < 104) là số lượng hộ gia đình.
  • Dòng 2: Chứa n số nguyên dương ai (1 < i < n, 1 < ai < 104), với mỗi ai là số Kwh sử dụng của hộ gia đình thứ i. Giữa hai số liên tiếp được cách nhau bởi một dấu cách.

Kết quả: Ghi ra file văn bản ELCOST.OUT một số nguyên dương là tổng tiền điện của n hộ gia đình.

Ví dụ:

ELCOST.INPELCOST.OUT
3

15 165 205

1050000

 

 

Giải thích:

Có 3 hộ gia đình sử dụng số Kwh lần lượt là: 15, 165 và 205

Số tiền hộ thứ nhất: 15*2500 = 37500

Số tiền hộ thứ hai: 100*2500 + 65*3000 = 445000

Số tiền hộ thứ ba: 100*2500 + 100*3000 + 5*3500 = 567500

Nên tổng số tiền là: 37500 + 445000 + 567500 = 1050000

Bài 2: Độ mạnh của xâu (4,0 điểm) Tên chương trình: STRONG.*

Cho xâu s chỉ gồm các kí tự in thường trong bảng chữ cái Tiếng Anh và kí tự số từ ‘0’ đến ‘9’.

Yêu cầu: Tìm độ mạnh của xâu. Biết rằng độ mạnh của xâu là tích của số kí tự phân biệt xuất hiện trong xâu với số lần xuất hiện nhiều nhất của một kí tự trong xâu.

Dữ liệu vào: Đọc từ file văn bản STRONG.INP gồm một dòng chứa xâu s có chiều dài không quá 103 kí tự. Trong xâu không chứa khoảng trắng và kí tự đặc biệt.

Kết quả: ghi ra file văn bản STRONG.OUT một số nguyên dương là độ mạnh của xâu.

Ví dụ:

STRONG.INPSTRONG.OUT
xy11z2yyzxy0y30
ggggg__________________5

Giải thích:

Ở test 1: Xâu s = ‘xy11z2yyzxy0y’. Số kí tự phân biệt trong xâu s là 6 (gồm ‘x’, ‘y’, ‘1’, ‘z’, ‘2’, ‘0’) và số lần xuất hiện nhiều nhất của một kí tự là 5 (kí tự ‘y’). Nên độ mạnh của xâu là 6 * 5 = 30.

Ở test 2: Xâu s = ‘ggggg’. Số kí tự phân biệt trong xâu s là 1 (kí tự ‘g’) và số lần xuất hiện nhiều nhất là 5. Nên độ mạnh của xâu là 1 * 5 = 5.

Bài 3: Tổng dòng cột (4,0 điểm)  Tên chương trình: SUM.*

Cho ma trận a gồm m dòng và n cột. Ma trận b được tạo bằng cách: bij = (tổng dòng i trên ma trận a + tổng cột j trên ma trận a) – aij Yêu cầu: Tìm giá trị nhỏ nhất trong ma trận b.

Dữ liệu vào: Đọc từ file văn bản SUM.INP gồm nhiều dòng:

  • Dòng 1: Chứa hai số nguyên dương theo thứ tự là m, n (1 < m, n < 102). Giữa hai số cách nhau bởi một dấu cách.
  • m dòng tiếp theo, mỗi dòng chứa n số nguyên dương aij (0 < aij < 109). Giữa hai số liên tiếp được cách nhau bởi một dấu cách.

Kết quả: Ghi ra file văn bản SUM.OUT một số nguyên dương là giá trị nhỏ nhất tìm được trong ma trận b.

Ví dụ:

SUM.INPSUM.OUT
2 310
3 2 4
2 1 5

Giải thích: Ma trận b là 11 10 14 11 10 12

Nên giá trị nhỏ nhất trong ma trận b là 10.

Bài 4: Xâu lặp (4,0 điểm) Tên chương trình: SUBSTR.*

Xâu lặp là một xâu có đoạn đầu ngắn nhất của nó được lặp lại nhiều lần. Ví dụ ‘xyxyxyxy’ là một xâu lặp vì nó có đoạn đầu ngắn nhất là ‘xy’ được lặp lại nhiều lần. ‘xyxy’ cũng được lặp lại nhưng không được tính là đoạn đầu vì nó không ngắn nhất.

Yêu cầu: Cho n xâu. Hãy ghép đoạn đầu của mỗi xâu lặp theo thứ tự xuất hiện của xâu (nếu xâu đó là xâu lặp).

Dữ liệu vào: Đọc từ file văn bản SUBSTR.INP gồm nhiều dòng:

  • Dòng 1: Chứa số nguyên dương n (1 < n < 103) là số lượng xâu.
  • n dòng tiếp theo, mỗi dòng chứa một xâu có độ dài không quá 103 kí tự.

Lưu ý: Trong xâu chỉ chứa kí tự thường từ ‘a’ đến ‘z’ trong bảng chữ cái Tiếng Anh (không chứa khoảng trắng, kí tự số và các kí tự đặc biệt). Dữ liệu vào đảm bảo luôn có xâu lặp.

Kết quả: Ghi ra file văn bản SUBSTR.OUT là xâu ghép thu được.

Ví dụ:

SUBSTR.INPSUBSTR.OUT
4xyabach
xyxyxyxy
abcab
abacabac
hhh

 

 

Giải thích:

Trong 4 xâu, có 3 xâu lặp theo thứ tự là: ‘xyxyxyxy’, ‘abacabac’, ‘hhh’. Ba đoạn đầu tương ứng là ‘xy’, ‘abac’, ‘h’. Nên xâu ghép là: ‘xyabach’.

Bài 5: Phần thưởng (4,0 điểm)  Tên chương trình: GIFT.*

An được mẹ cho một số phần thưởng. Có nhiều phần thưởng được xếp thành một hàng, mỗi phần thưởng có giá trị trong khoảng từ 1 đến 109. An muốn chọn những phần thưởng có giá trị tăng dần liên tiếp nhiều nhất.

Yêu cầu: Cho biết số lượng phần thưởng mà An chọn được như mong muốn.

Dữ liệu vào: Đọc từ file văn bản GIFT.INP gồm một dòng chứa các số nguyên dương là giá trị của các phần thưởng. Giữa hai số liên tiếp nhau cách nhau bởi một dấu cách.

Kết quả: Ghi ra file văn bản GIFT.OUT một số nguyên dương là số lượng phần thưởng An chọn được.

Ví dụ:

GIFT.INPGIFT.OUT
2 4 3 5 7 8 64
1 5 4 3 5 6 6 5 8 63

 

 

Giải thích:

Ở test 1: Độ dài phần thưởng liên tiếp tăng dần nhiều nhất là 4 (2 4 3 5 7 8 6)

Ở test 2: Độ dài phần thưởng liên tiếp tăng dần nhiều nhất là 3 (1 5 4 3 5 6 6 58 6) ……. -…………… ……………….. HET……… –

Thí sinh không được sử dụng tài liệu. Giám thị không giải thích gì thêm.

Họ và tên thí sinh:     Số báo danh:

PDF Loading...

Đáp án bài 1: Tiền điện (ELCOST)

Ý tưởng tối ưu

  • Tính tiền theo từng mức giá:
    • 100 Kwh đầu tiên: 2500 đ/Kwh
    • 101 → 200 Kwh: 3000 đ/Kwh
    • 201 Kwh trở lên: 3500 đ/Kwh
  • Duyệt qua từng hộ gia đình, tính tổng tiền.

Code Python

import sys

sys.stdin = open("ELCOST.INP", "r")
sys.stdout = open("ELCOST.OUT", "w")

n = int(input().strip())
ds_kwh = list(map(int, input().split()))

tong_tien = 0
for so_kwh in ds_kwh:
    if so_kwh <= 100:
        tong_tien += so_kwh * 2500
    elif so_kwh <= 200:
        tong_tien += 100 * 2500 + (so_kwh - 100) * 3000
    else:
        tong_tien += 100 * 2500 + 100 * 3000 + (so_kwh - 200) * 3500

print(tong_tien)

Độ phức tạp: O(n).


Đáp án bài 2: Độ mạnh của xâu (STRONG)

Ý tưởng tối ưu

  • Sử dụng dictionary (hash map) để đếm số lần xuất hiện của từng ký tự.
  • Tìm số ký tự phân biệt (O(1) mỗi ký tự).
  • Tìm số lần xuất hiện nhiều nhất (O(1) mỗi lần cập nhật).

Code Python

 

import sys
from collections import Counter

sys.stdin = open("STRONG.INP", "r")
sys.stdout = open("STRONG.OUT", "w")

s = input().strip()
tan_suat = Counter(s)

so_ky_tu_phan_biet = len(tan_suat)
tan_suat_max = max(tan_suat.values())

print(so_ky_tu_phan_biet * tan_suat_max)

 

Độ phức tạp: O(n).


Đáp án bài 3: Tổng dòng cột (SUM)

Ý tưởng tối ưu

  • Tiền xử lý tổng hàng và tổng cột để tính giá trị của ma trận B trong O(1).
  • Duyệt nhanh để tìm giá trị nhỏ nhất.

Code Python

 

import sys

sys.stdin = open("SUM.INP", "r")
sys.stdout = open("SUM.OUT", "w")

m, n = map(int, input().split())
ma_tran = [list(map(int, input().split())) for _ in range(m)]

tong_dong = [sum(hang) for hang in ma_tran]
tong_cot = [sum(ma_tran[i][j] for i in range(m)) for j in range(n)]

gia_tri_nho_nhat = float('inf')
for i in range(m):
    for j in range(n):
        b_ij = tong_dong[i] + tong_cot[j] - ma_tran[i][j]
        gia_tri_nho_nhat = min(gia_tri_nho_nhat, b_ij)

print(gia_tri_nho_nhat)

 

Độ phức tạp: O(m × n).


Đáp án bài 4: Xâu lặp (SUBSTR)

Ý tưởng tối ưu

  • Duyệt từ 1 → len(s)//2 để tìm đoạn lặp ngắn nhất.
  • Kiểm tra nhanh bằng cách ghép đoạn lặp nhiều lần.

Code Python

import sys

sys.stdin = open("SUBSTR.INP", "r")
sys.stdout = open("SUBSTR.OUT", "w")

def tim_doan_dau(xau):
    n = len(xau)
    for do_dai in range(1, n + 1):
        if n % do_dai == 0 and xau == xau[:do_dai] * (n // do_dai):
            return xau[:do_dai]
    return xau

n = int(input().strip())
ket_qua = []
for _ in range(n):
    xau = input().strip()
    ket_qua.append(tim_doan_dau(xau))

print("".join(ket_qua))

Độ phức tạp: O(n²) trong trường hợp xấu nhất, nhưng thường nhanh hơn.


Đáp án bài 5: Phần thưởng (GIFT)

Ý tưởng tối ưu

  • Duyệt 1 lần qua danh sách để tìm dãy tăng dần dài nhất (O(n)).

Code Python

 

import sys

sys.stdin = open("GIFT.INP", "r")
sys.stdout = open("GIFT.OUT", "w")

phan_thuong = list(map(int, input().split()))

max_do_dai = 1
do_dai_hien_tai = 1

for i in range(1, len(phan_thuong)):
    if phan_thuong[i] > phan_thuong[i - 1]:
        do_dai_hien_tai += 1
    else:
        max_do_dai = max(max_do_dai, do_dai_hien_tai)
        do_dai_hien_tai = 1  

print(max(max_do_dai, do_dai_hien_tai))

 

Độ phức tạp: O(n).


Tóm tắt độ phức tạp

Bài toánTối ưu chínhĐộ phức tạp
ELCOSTDuyệt danh sách tính tiền nhanhO(n)
STRONGHash map để đếm tần suấtO(n)
SUMTiền xử lý tổng hàng/cộtO(m × n)
SUBSTRKiểm tra xâu lặp nhanhO(n²) (trường hợp xấu nhất)
GIFTDuyệt 1 lần để tìm dãy tăng dài nhấtO(n)

Tất cả các bài toán đều chạy tối ưu và có thể xử lý nhanh dữ liệu lớn!

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao

1 Đề Thi Học Sinh Giỏi Tin học THCS cấp Tỉnh có đáp án mới nhất

1 Đề Thi Học Sinh Giỏi Tin học THCS cấp Tỉnh Tiền Giang có đáp án mới nhất

KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
TRUnG học Cơ Sở

Năm học 2022-2023 Môn: TIN HỌC

Thời gian: 150 phút (không kể thời gian giao đề) Ngày thi: 21/3/2023 ^

(Đề thi có 5 trang, gồm 5 bài)

Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!

  1. Giải đề 1 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  2. Giải đề 2 và đáp án thi Học sinh giỏi tin học Python C++ THCS có tài liệu ôn thi
  3. Giải đề 3 thi học sinh giỏi tin học lập trình Python có đáp án
  4. Giải đề 4 ôn thi học sinh giỏi Tin Học THCS lập trình Python có đáp án
  5. Giải đề 5 và đáp án thi HSG Tin Python có số Pell.
  6. Giải đề 6 và đáp án bồi dưỡng học sinh giỏi tin 10 có số Armstrong
  7. Giải đề 7 và đáp án  thi học sinh giỏi tin học 10 Python có số Collatz
  8. Giải đề 8 trong 20 đề Bồi dưỡng học sinh giỏi Tin học lớp 9 có số Kaprekar.
  9. Giải đề 9 thi HSG Tin học lớp 8 lập trình Python có số Happy
  10. Giải đề 10 thi tin học trẻ THPT có bài  In các xâu con trong xâu s.

TỔNG quan các BÀi thi

Thứ tự 

Tên bài

File chương trìnhFile dữ liệu vàoFile kết quả
Bài 1Tương đồngSAME.*SAME.INPSAME.OUT
Bài 2Tách xâuSTRING.*STRING.INPSTRING.OUT
Bài 3May mắnLUCKY.*LUCKY.INPLUCKY.OUT
Bài 4Tam giácTRIANGLE.*TRIANGLE.INPTRIANGLE.OUT
Bài 5Chở hàngGOOD.*GOOD.INPGOOD.OUT
Dấu * được thay thế bởi PAS, CPP, PY của ngôn ngữ lập trình được sử dụng tương ứng là Free Pascal, C++, Python hoặc phần mở rộng tương ứng với NNLT khác.

 

 

Bài 1: (4 điểm) Tương đồng? Tên chương trình: SAME.*

Vườn bưởi nhà Alice có n cây. Để theo dõi sự phát triển của các cây bưởi của mình, Alice thường xuyên đo và ghi lại chiều cao của chúng. Trong tuần này, Alice có được bảng chiều cao của các cây bưởi là một dãy số nguyên a[1], a[2],…, a[n], trong đó a[i] là chiều cao của cây bưởi thứ i. Nhìn vào dãy số, Alice biết có những cây có chiều cao trùng nhau và Alice gọi mỗi tần số trùng nhau là tần số “tương đồng”.

Do số lượng cây bưởi nhiều nên Alice muốn nhờ các bạn lập trình tìm tần số tương đồng lớn nhất của các cây bưởi là bao nhiêu?

Dữ liệu vào: Đọc từ file SAME. INP gồm 2 dòng:

  • Dòng 1: gồm một số nguyên dương n (0 < n <106).
  • Dòng 2: gồm n số nguyên dương a[i] (0 < ai <106), mỗi số ứng với chiều cao của một cây bưởi, giữa các số được cách nhau bởi một khoảng trắng.

Kết quả: Ghi ra file SAME.OUT gồm duy nhất một số nguyên dương là tần số tương đồng lớn nhất.

Ví dụ:

SAME.INPsame.out
7

9 8 6 8 5 6 10

2
2

3 10

1

 

 

Giải thích bộ test 1:

Có 1 chiều cao: 5;

Có 2 chiều cao: 6;

Có 2 chiều cao: 8;

Có 1 chiều cao: 9;

Có 1 chiều cao: 10

->Tần số tương đồng lớn nhất là: 2

Bài 2: (4 điểm) Tách xâu?  Tên chương trình: STRING.*

Hôm nay, mẹ và Cám đi dự dạ hội. Tấm cũng rất muốn được đi. Nhưng trước khi đi, mẹ Cám giao cho Tấm một công việc để làm khó Tấm như sau:

Cho một xâu s gồm các ký tự là các chữ cái in hoa hoặc in thường (trong bảng chữ cái Tiếng Anh) và các kí tự số. Mẹ kế yêu cầu Tấm hãy tách các ký tự trong xâu s thành hai phần như sau:

Phần 1: gồm các chữ cái có mặt trong s nhưng viết theo thứ tự ngược lại.

Phần 2: gồm các chữ số có mặt trong xâu s nhưng phải được sắp xếp theo thứ tự từ nhỏ đến lớn.

Nếu Tấm thực hiện xong công việc thì mới được đi dự tiệc. Nhưng Tấm có thời gian rất ít nên chưa giải được bài toán. Các bạn đội tuyển Tin học hãy giúp đỡ Tấm giải bài toán để Tấm còn được đi dự tiệc nhé!

Dữ liệu vào: Đọc từ file STRING.INP gồm 1 dòng chứa xâu s có độ dài không quá 103 ký tự. Dữ liệu vào đảm trong xâu s luôn có kí tự chữ cái và kí tự chữ số. Kết quả: Ghi ra fíle STRING.OUT gồm 2 dòng:

  • Dòng 1: gồm các chữ cái trong xâu s nhưng được viết theo thứ tự ngược lại.
  • Dòng 2: gồm các chữ số trong xâu s, nhưng phải được sắp xếp theo thứ tự từ nhỏ đến lớn.

Ví dụ:

STRING.INPSTRING.OUT
m2aC0ma2T3TamCam

0223

Bài 3: (4 điểm) May mắn?  Tên chương trình: LUCKY.*

Trong buổi tiệc liên hoan cuối năm của công ty cung cấp điện thoại Thế Giới Trẻ, ghế ngồi trong hội trường của khách mời được bố trí thành một ma trận hình chữ nhật gồm m hàng và n cột. Để buổi liên hoan thêm vui vẻ, ban tổ chức cho mỗi khách mời rút ngẫu nhiên một phiếu, trên phiếu có ghi một số nguyên dương trong phạm vi từ 1 đến 109.

Ban tổ chức sẽ trao cho những người may mắn mỗi người một phần quà là một chiếc điện thoại. Biết rằng người may mắn là người có số ghi trong phiếu của

mình lớn hơn trung bình cộng của số trong phiếu của những người ngồi xung quanh người đó.

Xung quanh một người được định nghĩa như sau:

Trường hợp 1: Người ngồi ở vị trí góc (trên trái, dưới trái, trên phải, dưới

phải) của hình chữ nhật thì chỉ có 2 người ngồi xung quanh.

Trường hợp 2: Người ngồi ở vị trí bìa (trừ góc) thì có 3 người xung quanh. Trường hợp 3: Người ngồi ở các vị trí còn lại có 4 người xung quanh.

Trường hợp 1                                   Trường hợp 2                                                          Trường hợp 3

Ô gạch sọc chỉ vị trí xung quanh của vị trí được tô đen.

Bạn hãy giúp ban tổ chức xác định số lượng điện thoại cần phải chuẩn bị để trao cho những người may mắn.

Dữ liệu vào: Đọc từ file LUCKY.INP gồm:

  • Dòng 1: gồm hai số nguyên dương theo thứ tự m, n (0 < m, n <103), giữa m và n được cách nhau bởi dấu cách.
  • m dòng tiếp theo, mỗi dòng gồm n số nguyên dương có giá trị không quá 109, giữa hai số cách nhau bởi một dấu cách.

Kết quả: Ghi ra file LUCKY.OUT gồm một số nguyên là số điện thoại ban tổ chức cần chuẩn bị.

Ví dụ:

LUCKY.INPLUCKY.OUT
3 43
1 4 3 1
1 1 5 2
2 1 2 1

Giải thích:

Số lượng điện thoại cần chuẩn bị là 3, vì có ba người may mắn:

+ Người thứ nhất ngồi ở hàng 1, cột 2, có số phiếu là 4 (có 3 người xung quanh) + Người thứ hai ngồi ở hàng 2, cột 3, có số phiếu là 5 (có 4 người xung quanh) + Người thứ ba ngồi ở hàng 3, cột 1, có số phiếu là 2 (có 2 người xung quanh)

Bài 4: (4 điểm) Tam giác   Tên chương trình: TRIANGLE.*

Alice có n que tính, mỗi que có độ dài là một số nguyên dương. Alice muốn tạo ra các tam giác bằng cách ghép ba que tính lại với nhau, độ dài mỗi cạnh là một que tính.

Em hãy giúp Alice đếm xem có bao nhiêu tam giác được tạo thành từ các que tính này và cho biết diện tích lớn nhất trong các diện tích của các tam giác ghép được là bao nhiêu?

Biết rằng:

+ Hai tam giác được gọi là khác nhau nếu có ít nhất một que tính khác nhau.

+ Ta có thể tính diện tích tam giác theo công thức sau :

s=Vp * (p — à) * (p — b) * (p — c)

Trong đó a,b,c là độ dài 3 cạnh của tam giác, và p là nửa chu vi của tam giác.

Dữ liệu vào: Đọc từ file TRIANGLE.INP gồm:

  • Dòng 1: gồm một số nguyên dương n (3 < n < 100)
  • Dòng 2: gồm n số nguyên dương a[1], a[2], …, a[n] là độ dài của n que tính (1 < a[i] < 106 1<i<n). Giữa các số được cách nhau bởi một khoảng trắng.

Kết quả: Ghi ra file TRIANGLE.OUT gồm:

  • Dòng 1: Ghi số lượng tam giác có thể ghép được.
  • Dòng 2: Ghi một số thực là diện tích lớn nhất của tam giác, kết quả làm tròn đến 2 chữ số ở phần thập phân. Trường hợp không có tam giác nào thì dòng này ghi -1.
TRIANGLE.INPTRIANGLE.OUTGiải thích
53Có 3 tam giác được tạo từ 5 que tính trên:
1 4 5 2 36.00Tam giác 1: Que thứ 2, 3, 4 Tam giác 2: Que thứ 2, 3, 5 Tam giác 3: Que thứ 2, 4, 5 Trong đó tam giác thứ 2 có 3 độ dài là 4 5 3 có có diện tích lớn nhất là 6.00
44Có 4 tam giác được tạo từ 4 que tính trên:
2 2 2 21.73Tam giác 1: Que thứ 1, 2, 3

Tam giác 2: Que thứ 1, 2, 4

Tam giác 3: Que thứ 1, 3, 4

Tam giác 4: Que thứ 2, 3, 4

Trong đó 4 tam giác đều có cùng diện

tích là: 1.73

30Không ghép được tam giác nào
1 2 3-1

Bài 5: (4 điểm) Hàng hóa Tên chương trình: GOOD.*

Cửa hàng tạp hóa XYZ cần chở n kiện hàng giao cho khách. Kiện hàng thứ i có trọng lượng là a[i] tấn. Cửa hàng có một xe tải có trọng tải là m tấn. Trong

chuyến hàng đầu tiên, cửa hàng muốn chở những kiện hàng đi giao thỏa mãn các yêu cầu sau:

  • Yêu cầu 1: Ưu tiên kiện hàng có trọng lượng lớn hơn sẽ được chở đi.
  • Yêu cầu 2: Xe còn đủ trọng tải chở được thì chọn tiếp kiện hàng khác thỏa mãn yêu cầu 1.

Em hãy lập trình giúp cửa hàng xác định trọng lượng các kiện hàng của chuyến xe đầu tiên.

Dữ liệu vào: Đọc từ file GOOD.INP gồm hai dòng:

  • Dòng 1: gồm số nguyên dương n (1 <n<103) là số kiện hàng và số nguyên dương m (0 < m < 109) là trọng lượng của xe tải. Giữa n và m được cách nhau bởi dấu cách.
  • Dòng 2: gồm n số nguyên dương a[i] (0 < a[i] <109, a[i] < m, 1<i<n) thể hiện trọng lượng của kiện hàng thứ i. Giữa các số được cách nhau bởi dấu cách.

Kết quả: Ghi ra file GOOD.OUT các số nguyên dương là trọng lượng của các kiện hàng trong chuyến xe đầu tiên theo trọng lượng giảm dần.

GOOD.INPGOOD.OUT
5 10

7 5 1 3 8

8 1
5 12

2 8 2 4 1

8 4

 

 

Giải thích bộ test 1:

Có n = 5 kiện hàng và xe có trọng tải m = 10 tấn Các kiện hàng có trọng lượng lần lượt là: 7 5 1 3 8 Vậy các kiện hàng được chở đi trong chuyến đầu tiên có trọng lượng lần lượt là 8 và 1.

Vì kiện hàng có trọng lượng là 8 lớn hơn trọng lượng các kiện hàng còn lại và 8 < m=10 nên được ưu tiên chọn. Trọng tải xe còn có thể chứa được là 10 – 8 = 2, nên chọn tiếp kiện hàng có trọng lượng là 1.

………………………………………………….. HẾT…………………………………………………..

Thí sinh không được sử dụng tài liệu. Giám thị không giải thích gì thêm.

Họ và tên thí sinh: ……………………………………………………………………………….. Số báo danh:……………………………………………………………………..

PDF Loading...

Đáp Án 5 bài Đề Thi Học Sinh Giỏi Tin học THCS cấp Tỉnh Tiền Giang

Đáp án bài 1: Tương đồng (SAME)

Ý tưởng tối ưu

  • Sử dụng dictionary (hash map) để đếm số lần xuất hiện của mỗi số (O(n)).
  • Duyệt qua dictionary để tìm giá trị xuất hiện nhiều nhất (O(n)).

Code Python

 

def tim_so_pho_bien_nhat(n, danh_sach):
    tan_suat = {}  # Tạo một dictionary để đếm số lần xuất hiện
    for so in danh_sach:
        tan_suat[so] = tan_suat.get(so, 0) + 1  # Tăng đếm số lần xuất hiện
    
    return max(tan_suat, key=tan_suat.get)  # Trả về số xuất hiện nhiều nhất

# Đọc input
n = int(input())  
danh_sach = list(map(int, input().split()))

# Xuất kết quả
print(tim_so_pho_bien_nhat(n, danh_sach))

 

Tối ưu: Sử dụng dictionary giúp truy xuất nhanh (O(1) mỗi lần cập nhật).
Độ phức tạp: O(n).


Đáp án bài 2: Tách xâu (STRING)

Ý tưởng tối ưu

  • Duyệt chuỗi để tách chữ và số (O(n)).
  • Đảo ngược danh sách chữ (O(n)).
  • Sắp xếp danh sách số (O(n log n)).
  • Ghép lại thành chuỗi (O(n)).

Code Python

 

def tach_xau(s):
    chu = []
    so = []
    
    for c in s:
        if c.isdigit():
            so.append(int(c))  # Thêm vào danh sách số
        else:
            chu.append(c)  # Thêm vào danh sách chữ
    
    chu.reverse()  # Đảo ngược chữ
    so.sort()  # Sắp xếp số
    
    return ''.join(chu) + ''.join(map(str, so))

# Đọc input
s = input()
print(tach_xau(s))

 

Tối ưu: Tách chữ và số trong 1 lần duyệt giúp tiết kiệm thời gian.
Độ phức tạp: O(n log n) do sắp xếp số.


Đáp án bài 3: May mắn (LUCKY)

Ý tưởng tối ưu

  • Duyệt từng phần tử của ma trận (O(m × n)).
  • Kiểm tra 8 ô xung quanh bằng danh sách dx, dy (O(1) mỗi lần kiểm tra).

Code Python

def dem_so_may_man(m, n, ma_tran):
    dx = [-1, -1, -1, 0, 0, 1, 1, 1]
    dy = [-1, 0, 1, -1, 1, -1, 0, 1]
    
    dem = 0
    for i in range(m):
        for j in range(n):
            tong = 0
            dem_lan_can = 0
            
            for k in range(8):  # Kiểm tra 8 ô xung quanh
                x, y = i + dx[k], j + dy[k]
                if 0 <= x < m and 0 <= y < n:
                    tong += ma_tran[x][y]
                    dem_lan_can += 1
            
            if dem_lan_can > 0 and ma_tran[i][j] > tong / dem_lan_can:
                dem += 1
    
    return dem

# Đọc input
m, n = map(int, input().split())
ma_tran = [list(map(int, input().split())) for _ in range(m)]

# Xuất kết quả
print(dem_so_may_man(m, n, ma_tran))

Tối ưu: Sử dụng dx, dy để kiểm tra 8 hướng nhanh chóng.
Độ phức tạp: O(m × n).


Đáp án bài 4: Tam giác lớn nhất (TRIANGLE)

Ý tưởng tối ưu

  • Sắp xếp trước (O(n log n)).
  • Dùng hai con trỏ để tìm bộ ba thỏa mãn (O(n²)).

Code Python

import math

def dien_tich_heron(a, b, c):
    s = (a + b + c) / 2
    return math.sqrt(s * (s - a) * (s - b) * (s - c))

def tam_giac_lon_nhat(n, canh):
    canh.sort(reverse=True)  # Sắp xếp giảm dần
    for i in range(n - 2):
        if canh[i] < canh[i + 1] + canh[i + 2]:  # Điều kiện tam giác
            return dien_tich_heron(canh[i], canh[i + 1], canh[i + 2])
    
    return 0  # Không tìm được tam giác hợp lệ

# Đọc input
n = int(input())
canh = list(map(int, input().split()))

# Xuất kết quả
print(f"{tam_giac_lon_nhat(n, canh):.2f}")

 
Độ phức tạp: O(n²).


Đáp án bài 5: Chở hàng (GOOD)

Ý tưởng tối ưu

  • Sắp xếp kiện hàng (O(n log n)).
  • Duyệt danh sách để chọn kiện hàng (O(n)).

Code Python

 

import sys
sys.stdin = open("GOOD.INP", "r")
sys.stdout = open("GOOD.OUT", "w")

# Doc so kien hang n va tai trong m
n, m = map(int, sys.stdin.readline().split())

# Doc danh sach trong luong cac kien hang
trong_luong = list(map(int, sys.stdin.readline().split()))

# Sap xep danh sach kien hang theo thu tu tang dan
trong_luong.sort()
trong_luong=trong_luong[::-1]

chon = []  # Danh sach cac kien hang duoc chon
tong_trong_luong = 0  # Tong trong luong cac kien hang duoc chon

# Duyet qua tung kien hang theo thu tu tang dan
for w in trong_luong:
    if tong_trong_luong + w <= m:  # Neu them kien hang vao van khong vuot tai trong
        chon.append(w)
        tong_trong_luong += w
    elif tong_trong_luong>m:
        break  # Neu qua tai thi dung

# Ghi ket qua ra file theo thu tu giam dan
print(*chon)

 

Tối ưu: Dùng sắp xếp + duyệt tuyến tính, tránh thử mọi khả năng (O(2ⁿ)).
Độ phức tạp: O(n log n).


Tóm tắt tối ưu

Bài toánTối ưu chínhĐộ phức tạp
SAMEHash map (dictionary)O(n)
STRINGDuyệt + sắp xếpO(n log n)
LUCKYDuyệt + kiểm tra nhanhO(m × n)
TRIANGLESắp xếp + hai con trỏO(n²)
GOODSắp xếp + duyệt tuyến tínhO(n log n)

Nhận xét:

  • Các bài O(n log n) chạy tốt cho n ≤ 10⁶.
  • Bài tam giác O(n²) cần tối ưu hơn nếu n > 10⁵.
  • Tránh thuật toán O(n³) nếu có thể.

Tất cả bài đều chạy tốt với dữ liệu lớn, trừ bài tam giác có thể cần cải tiến hơn nữa.

Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !

Khóa học Python online từ cơ bản đến nâng cao

 

Khóa học Python online từ cơ bản đến nâng cao