Chào mừng các bạn đến với Rcom Dăm Yi blog - Kho tài liệu bổ ích!, Chúng tôi sẽ từng bước hoàn thiện để bạn đọc cảm thấy hài lòng, hữu ích!
Hiển thị các bài đăng có nhãn Tin học 10. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Tin học 10. Hiển thị tất cả bài đăng

Thứ Bảy, 31 tháng 1, 2026

Xâu kí tự trong Python – Tin học 10

BÀI 24. XÂU KÍ TỰ TRONG PYTHON

Giáo viên: Rcom Dăm Yi - Tin học 10 – Kết nối tri thức với cuộc sống

Năng lực số: NC 2.2.d Xử lí dữ liệu văn bản

Khởi động

Quan sát đoạn lệnh:

s = "Tin hoc 12"
print(s[0])
  • s[0] in ra gì?
  • "Tin hoc 12" là số hay chữ?

Hình thành kiến thức

1. Xâu là một dãy kí tự

  • Xâu (string) là dãy các kí tự Unicode
  • Đặt trong ' ' hoặc " "
  • Mỗi kí tự là xâu độ dài 1
  • Xâu rỗng: empty = ""

Nhấn mạnh: Xâu rỗng ≠ không có biến

2. Truy cập kí tự của xâu

s = "Python"
print(s[0]) # P
print(s[3]) # h
print(len(s)) # 6
  • Chỉ số bắt đầu từ 0
  • Kí tự cuối: len(s) - 1
  • Truy cập: s[i]

3. Đặc điểm của xâu – So sánh với danh sách

s = "abc"
s[0] = "A" # Báo lỗi
lst = ["a","b","c"]
lst[0] = "A" # Hợp lệ

Kết luận: Xâu là kiểu bất biến, danh sách là kiểu khả biến

4. Duyệt kí tự của xâu (NỘI DUNG TRỌNG TÂM)

Duyệt xâu là thao tác lần lượt xử lí từng kí tự trong xâu. Trong Python có hai cách duyệt xâu, mỗi cách phù hợp với những tình huống khác nhau.


a) Duyệt xâu bằng chỉ số (index)

s = "Python"
for i in range(len(s)):
  print(i, s[i])

Ý nghĩa:

  • Biến i chạy qua các chỉ số: 0 → len(s) - 1
  • Truy cập kí tự tại vị trí i bằng s[i]

Dùng khi:

  • Cần biết vị trí của kí tự
  • Cần so sánh s[i] với s[i+1]
  • Các bài toán phát hiện mẫu như "10", "ab"

Ví dụ 1: Kiểm tra xâu có chứa "10" hay không

S = "21034"
for i in range(len(S)-1):
  if S[i]=="1" and S[i+1]=="0":
    print("Có chứa 10")

b) Duyệt xâu theo từng kí tự

s = "Python"
for ch in s:
  print(ch)

Ý nghĩa:

  • Biến ch lần lượt nhận từng kí tự của xâu
  • Không quan tâm đến chỉ số

Dùng khi:

  • Chỉ cần giá trị kí tự
  • Đếm, kiểm tra, lọc kí tự
  • Code ngắn, dễ đọc

Ví dụ 2: Đếm số chữ số trong xâu

dem = 0
for ch in s:
  if ch.isdigit():
    dem += 1

c) Toán tử in trong xử lí xâu

"a" in "abcd" # True
"abc" in "abcd" # True
"ab1" in "abcd" # False
  • s1 in s2: kiểm tra xâu con
  • Kết quả trả về: True / False

Ví dụ 3: Kiểm tra học sinh tên "Hương"

if "Hương" in ho_ten:
  dem += 1

KẾT LUẬN GHI NHỚ:

  • 2 cách duyệt xâu
  • Duyệt theo chỉ số → khi cần vị trí
  • Duyệt theo kí tự → khi cần giá trị
  • Toán tử in rất quan trọng trong xử lí chuỗi

Thực hành

Bài 1: Ba kí tự đầu

S = input("Nhập xâu: ")
print(S[0:3])

Bài 2: Kiểm tra chữ số

co = False
for ch in S:
  if ch.isdigit():
    co = True

Vận dụng

Chèn xâu

k = len(s2)//2
kq = s2[:k] + s1 + s2[k:]

Đếm tên “Hương”

if "Hương" in ho_ten:
  dem += 1

Tổng kết

  • Xâu là dãy kí tự Unicode
  • Chỉ số từ 0 → len(s)-1
  • Xâu không thay đổi từng kí tự
  • Hai cách duyệt xâu
  • Toán tử in rất quan trọng

Thứ Hai, 26 tháng 1, 2026

📘 Tin học 10 – Danh sách (List): in + các lệnh cơ bản

GDPT 2018 – Bộ sách Kết nối tri thức với cuộc sống

1. Danh sách (list) là gì?
Danh sách (list) là kiểu dữ liệu dùng để lưu nhiều giá trị theo một thứ tự. Mỗi phần tử có vị trí (chỉ số) bắt đầu từ 0.
Có thứ tự Có chỉ số Có thể thay đổi
2. Toán tử in với danh sách
x in ds trả về True nếu x có trong danh sách ds, ngược lại là False.
ds = ["AMG", "DOM", "Karaoke"]
print("AMG" in ds)   # True
print("Bar" in ds)   # False
Lưu ý: "5" (chuỗi) khác 5 (số).
3. Duyệt danh sách với for ... in ...
Dùng để lấy lần lượt từng phần tử trong danh sách và xử lí.
diem = [7, 8, 6, 9]
for d in diem:
    print(d)
Trong vòng lặp, biến d nhận lần lượt từng phần tử của danh sách.
4. Một số lệnh/phương thức list thường dùng
  • Độ dài: len(ds)
  • Thêm: append(x), extend(ds2), insert(i, x)
  • Xoá: remove(x), pop() / pop(i), clear()
  • Sắp xếp/đảo: sort(), sort(reverse=True), reverse()
  • Tìm/đếm: index(x), count(x)
Cách làm 1: Kiểm tra phần tử có trong danh sách
  1. Xác định giá trị cần kiểm tra (x)
  2. Dùng x in ds hoặc x not in ds
  3. Dùng if để xử lí theo 2 trường hợp
ds = ["Trà", "Cà phê", "Nước suối"]
if "Trà" in ds:
    print("Có Trà")
else:
    print("Không có Trà")
Cách làm 2: Duyệt danh sách để xử lí dữ liệu
  1. Xác định mục tiêu: in ra / đếm / tính tổng / lọc
  2. Duyệt: for x in ds:
  3. Đặt điều kiện if nếu cần
  4. Cập nhật biến đếm/tổng/danh sách kết quả
a = [2, 5, 2, 7, 2]
dem = 0
for x in a:
    if x == 2:
        dem += 1
print(dem)
Lỗi thường gặp (và cách tránh)
  • Nhầm kiểu dữ liệu: "5" khác 5
  • Dùng remove(x) khi x không có trong list → nên kiểm tra if x in ds trước
  • Quên thụt lề trong vòng lặp for
Ví dụ 1: Kiểm tra phần tử với in
ds = ["An", "Bình", "Chi"]
print("Bình" in ds)        # True
print("Dũng" not in ds)    # True
Ví dụ 2: Tính tổng danh sách điểm
diem = [7, 8, 6, 9]
tong = 0
for d in diem:
    tong += d
print("Tổng =", tong)
Ví dụ 3: Lọc các số chẵn
a = [1, 2, 3, 4, 5, 6]
for x in a:
    if x % 2 == 0:
        print(x)
Ví dụ 4: Thực hành các lệnh list (menu đồ uống)
nuoc = ["Trà", "Cà phê", "Nước suối"]

nuoc.append("Soda")
nuoc.insert(1, "Sinh tố")

if "Trà" in nuoc:
    nuoc.remove("Trà")

nuoc.sort()
print(nuoc)
print("Số lượng =", len(nuoc))
Gợi ý mở rộng: dùng pop() để lấy món cuối, dùng count() để đếm món trùng.
Ví dụ 5: Dùng countindex
a = [2, 5, 2, 7, 2]
print(a.count(2))     # 3
print(a.index(7))     # 3 (vị trí của 7)
Lưu ý: index(x) sẽ báo lỗi nếu x không có trong danh sách.
Bài 1 (Cơ bản)
Cho ds = [3, 7, 2, 9]. Hãy:
  • Kiểm tra 7 có trong ds không.
  • In lần lượt các phần tử của ds (mỗi phần tử một dòng).
Bài 2 (Thông hiểu)
Nhập một danh sách số (tự gán sẵn). Hãy đếm có bao nhiêu số chẵn.
Gợi ý: dùng for ... in ... và điều kiện x % 2 == 0.
Bài 3 (Vận dụng)
Cho danh sách a. Nếu có phần tử x trong a thì xoá x đi.
Yêu cầu: bắt buộc kiểm tra if x in a trước khi remove.
Bài 4 (Vận dụng cao)
Cho danh sách điểm diem. Hãy:
  • Tính điểm trung bình
  • In ra các điểm ≥ 8
  • Sắp xếp điểm giảm dần
Gợi ý: dùng sum (nếu biết), hoặc tự cộng bằng for, và sort(reverse=True).

📘 Tin học 10 – Lệnh lặp for trong Python

GDPT 2018 – Bộ sách Kết nối tri thức với cuộc sống

1. Lệnh lặp là gì?
Lệnh lặp dùng để thực hiện một khối lệnh nhiều lần theo một quy luật xác định.
2. Lệnh lặp for
Lệnh for dùng khi biết trước số lần lặp hoặc cần duyệt lần lượt các phần tử.
3. Cú pháp
for biến_lặp in dãy_giá_trị:
    khối_lệnh
Biến lặp nhận lần lượt từng giá trị trong dãy.
4. Hàm range()
  • range(n): từ 0 đến n−1
  • range(a, b): từ a đến b−1
  • range(a, b, k): bước nhảy k
Cách viết chương trình với for
  1. Xác định số lần lặp hoặc dãy cần duyệt
  2. Chọn biến lặp phù hợp
  3. Viết khối lệnh bên trong vòng lặp
Lỗi thường gặp
  • Quên dấu :
  • Thụt lề sai
  • Hiểu sai phạm vi của range()
Ví dụ 1: In các số từ 1 đến 5
for i in range(1, 6):
    print(i)
Ví dụ 2: Tính tổng các số từ 1 đến n
n = int(input("Nhập n: "))
tong = 0
for i in range(1, n + 1):
    tong += i
print(tong)
Ví dụ 3: Duyệt danh sách
ds = [3, 7, 2, 9]
for x in ds:
    print(x)
for rất phù hợp khi làm việc với danh sách.
Bài 1 (Cơ bản)
Dùng for in các số từ 1 đến 10.
Bài 2 (Thông hiểu)
Nhập n, tính tổng các số chia hết cho 3 từ 1 đến n.
Bài 3 (Vận dụng)
Nhập một danh sách số, đếm bao nhiêu số chẵn.
Bài 4 (Vận dụng cao)
In bảng nhân từ 2 đến 9 bằng for.

📘 Tin học 10 – Lệnh lặp while trong Python

GDPT 2018 – Bộ sách Kết nối tri thức với cuộc sống

1. Lệnh lặp là gì?
Lệnh lặp dùng để thực hiện một khối lệnh nhiều lần khi điều kiện còn đúng.
2. Lệnh lặp while
Lệnh while lặp khi điều kiện còn đúng. Khi điều kiện sai, vòng lặp kết thúc.
3. Cú pháp
while điều_kiện:
    khối_lệnh
Lưu ý: điều kiện phải thay đổi trong vòng lặp để tránh lặp vô hạn.
4. Sơ đồ hoạt động
Kiểm tra điều kiện → Đúng: thực hiện lệnh → quay lại kiểm tra → Sai: thoát vòng lặp.
Cách viết chương trình với while
  1. Khởi tạo biến điều khiển
  2. Viết điều kiện lặp
  3. Cập nhật biến điều khiển trong vòng lặp
Lỗi thường gặp
  • Quên cập nhật biến → lặp vô hạn
  • Điều kiện sai ngay từ đầu → không chạy lần nào
Ví dụ 1: In các số từ 1 đến 5
i = 1
while i <= 5:
    print(i)
    i += 1
Giải thích: biến i tăng dần, khi i > 5 thì dừng.
Ví dụ 2: Tính tổng các số từ 1 đến n
n = int(input("Nhập n: "))
tong = 0
i = 1
while i <= n:
    tong += i
    i += 1
print(tong)
Ví dụ 3: Nhập số đến khi gặp 0 thì dừng
x = int(input("Nhập số: "))
while x != 0:
    print("Bạn vừa nhập:", x)
    x = int(input("Nhập số: "))
Ứng dụng phổ biến của while khi chưa biết trước số lần lặp.
Bài 1 (Cơ bản)
Dùng while in các số từ 1 đến 10.
Bài 2 (Thông hiểu)
Nhập n, tính tổng các số chẵn từ 1 đến n.
Bài 3 (Vận dụng)
Nhập các số cho đến khi gặp số âm thì dừng. Đếm bao nhiêu số đã nhập.
Bài 4 (Vận dụng cao)
Nhập mật khẩu. Nếu sai thì nhập lại cho đến khi đúng.

📘 Tin học 10 – Danh sách (List) trong Python

GDPT 2018 – Kết nối tri thức với cuộc sống | Mục tiêu: hiểu List, truy cập phần tử, duyệt & thêm phần tử, luyện tập nhập danh sách

🎯 Phần 1. Kiểu dữ liệu danh sách trong Python

Kiểu dữ liệu: List Có thứ tự Chỉ số từ 0 Có thể chứa nhiều kiểu
Khái niệm: Danh sách (List) là kiểu dữ liệu dùng để lưu nhiều giá trị trong một biến. Các phần tử có thứ tự, được đánh chỉ số (index) bắt đầu từ 0.

1.1 Cú pháp tạo danh sách

Cách 1: Dùng dấu [ ]
ds_so = [1, 3, 5, 7]
ds_ten = ["An", "Bình", "Chi"]
ds_rong = []
Cách 2: Dùng hàm list()
ds = list()          # danh sách rỗng
ds2 = list("ABC")    # ['A','B','C']
Lưu ý: List có thể chứa nhiều kiểu dữ liệu khác nhau (số nguyên, số thực, xâu, ...).

1.2 Truy cập phần tử trong danh sách

Cú pháp: ds[i] (i là chỉ số)
ds = [10, 20, 30, 40]
print(ds[0])   # 10
print(ds[2])   # 30
Chỉ số âm (truy cập từ cuối danh sách):
ds = ["An", "Bình", "Chi"]
print(ds[-1])  # Chi (phần tử cuối)
print(ds[-2])  # Bình
Lỗi thường gặp: Nếu i vượt phạm vi (ví dụ ds có 3 phần tử mà truy cập ds[3]) sẽ gây lỗi “out of range”.

1.3 Ví dụ minh hoạ (đúng theo yêu cầu)

Ví dụ A (list số nguyên):
ds = [2, 4, 6, 8]
print("Độ dài:", len(ds))
print("Phần tử đầu:", ds[0])
print("Phần tử cuối:", ds[-1])
Ví dụ B (list số thực):
ds = [1.5, 2.0, 3.25]
print(ds[0] + ds[2])   # 4.75
Ví dụ C (list xâu):
ten = ["An", "Bình", "Chi"]
print(ten[1])          # Bình
Ví dụ D (list hỗn hợp):
ds = [10, 2.5, "Hello", True]
print(ds)

1.4 Một số lưu ý quan trọng

  • Kiểu phần tử: List có thể chứa số nguyên, số thực, xâu, ... thậm chí nhiều kiểu cùng lúc.
  • len(ds): trả về số phần tử của danh sách.
  • Nhập dữ liệu: nếu nhập từ bàn phím, cần chú ý kiểu dữ liệu:
    • Nhập số nguyên: int(input())
    • Nhập số thực: float(input())
    • Nhập xâu: input()
  • Tách xâu thành list (hay dùng với danh sách tên):
    s = "An Bình Chi"
    ds = s.split()        # ['An','Bình','Chi']

✅ Trắc nghiệm củng cố (Phần 1)

Câu 1. Danh sách (list) trong Python là:
Câu 2. Với ds = [10, 20, 30], biểu thức ds[1] cho kết quả:
Câu 3. Với ds = ["An","Bình","Chi"], biểu thức ds[-1] là:

🎯 Phần 2. Các lệnh cơ bản với danh sách

Duyệt list append() len() range()
Trọng tâm phần này: biết duyệt danh sáchthêm phần tử vào danh sách để phục vụ nhập liệu thực tế.

2.1 Duyệt danh sách

Cách 1: Duyệt trực tiếp từng phần tử
ds = [2, 5, 7, 4]
for x in ds:
    print(x)
Cách 2: Duyệt theo chỉ số
ds = [2, 5, 7, 4]
for i in range(len(ds)):
    print("Vị trí", i, "=", ds[i])
Mẹo: Duyệt trực tiếp (for x in ds) đơn giản hơn; duyệt theo chỉ số dùng khi cần biết vị trí.

2.2 Thêm phần tử vào danh sách (append)

Cú pháp: ds.append(x)
ds = []
ds.append("An")
ds.append("Bình")
print(ds)   # ['An', 'Bình']
Ví dụ nhập n phần tử và thêm vào list
n = int(input("Nhập n: "))
ds = []
for i in range(n):
    x = input("Nhập phần tử: ")
    ds.append(x)
print("Danh sách:", ds)
Lưu ý kiểu dữ liệu: Nếu nhập số, hãy đổi kiểu bằng int() hoặc float() trước khi append.

2.3 Ví dụ minh hoạ (đúng yêu cầu)

Ví dụ 1: Duyệt và đếm số chẵn
ds = [1, 4, 6, 3, 8]
dem = 0
for x in ds:
    if x % 2 == 0:
        dem += 1
print("Số phần tử chẵn:", dem)
Ví dụ 2: Thêm phần tử và in từng dòng
n = int(input("Nhập n: "))
ds = []
for i in range(n):
    ten = input("Nhập tên: ")
    ds.append(ten)

for ten in ds:
    print(ten)

✅ Trắc nghiệm củng cố (Phần 2)

Câu 1. Lệnh nào dùng để thêm phần tử x vào cuối danh sách ds?
Câu 2. Với ds = [3, 6, 9], đoạn lệnh for x in ds: print(x) sẽ:
Câu 3. Để duyệt theo chỉ số từ 0 đến len(ds)-1, ta thường dùng:

🧩 Phần 3. Luyện tập (thực hành nhập – thêm – in danh sách)

Yêu cầu kỹ năng: khởi tạo list rỗng → nhập n → lặp n lần → append() → duyệt/in kết quả.

Câu 1.

Đề: Nhập số n, sau đó nhập danh sách n tên các bạn lớp em và in danh sách (mỗi tên 1 dòng).
# Câu 1
n = int(input("Nhập n: "))
ds = []

for i in range(n):
    ten = input("Nhập tên: ")
    ds.append(ten)

print("Danh sách tên:")
for ten in ds:
    print(ten)
Gợi ý nâng cao: Nếu muốn bỏ khoảng trắng thừa ở đầu/cuối tên: dùng ten = input(...).strip().

Câu 2. (Gợi ý để bạn hoàn thiện theo lớp)

Gợi ý bài phù hợp GDPT: Nhập n số thực, tính tổnggiá trị lớn nhất.
# Câu 2 (gợi ý)
n = int(input("Nhập n: "))
ds = []
for i in range(n):
    x = float(input("Nhập số thực: "))
    ds.append(x)

tong = 0
for x in ds:
    tong += x

max_val = ds[0]
for x in ds:
    if x > max_val:
        max_val = x

print("Tổng =", tong)
print("Lớn nhất =", max_val)

Câu 3. (Gợi ý theo hướng vận dụng)

Gợi ý bài phù hợp: Nhập danh sách tên, đếm số tên bắt đầu bằng chữ A (không phân biệt hoa/thường).
# Câu 3 (gợi ý)
n = int(input("Nhập n: "))
ds = []
for i in range(n):
    ten = input("Nhập tên: ").strip()
    ds.append(ten)

dem = 0
for ten in ds:
    if len(ten) > 0 and ten[0].upper() == "A":
        dem += 1

print("Số tên bắt đầu bằng A =", dem)
Lưu ý: Dùng upper() để so sánh không phân biệt hoa/thường.

📌 Checklist tự đánh giá (HS tự kiểm tra)

  • Em tạo được danh sách rỗng: ds = []
  • Em nhập được n và lặp đúng n lần
  • Em dùng append() để thêm phần tử
  • Em in được mỗi phần tử 1 dòng bằng vòng lặp for
  • Em phân biệt được khi nào dùng int, float, input

Chủ Nhật, 25 tháng 1, 2026

Bài 22 – Kiểu dữ liệu danh sách (Tin 10 – KNTT)

Bài 22. Kiểu dữ liệu danh sách

Môn Tin học 10 – Kết nối tri thức với cuộc sống

Thời lượng: 90 phút Chủ đề: List – truy cập – duyệt danh sách – append()

Hoạt động 1: Khởi động

Trong thực tế, ta thường làm việc với một tập hợp dữ liệu: danh sách học sinh, danh sách điểm, danh sách môn học…

Câu hỏi gợi mở

Câu hỏi: Nếu chỉ dùng biến đơn lẻ, có bất tiện gì khi lưu trữ nhiều dữ liệu?

Hoạt động 2: Hình thành kiến thức mới

2.1. Danh sách (List) trong Python

Khái niệm: Danh sách (list) là kiểu dữ liệu dùng để lưu trữ nhiều giá trị trong cùng một biến.

A = [1, 2, 3, 4]
names = ["An", "Bình", "Chi"]
  • Các phần tử được sắp xếp theo thứ tự và có chỉ số (index).
  • Chỉ số bắt đầu từ 0.

2.2. Khởi tạo danh sách

Danh sách được tạo bằng cặp dấu ngoặc vuông [].

A = []              # danh sách rỗng
B = [10, 20, 30]     # danh sách có sẵn phần tử

Ghi nhớ: Danh sách có thể chứa nhiều kiểu dữ liệu (số, xâu, logic...), nhưng trong bài này ta ưu tiên danh sách số để thực hành.

2.3. Truy cập, thay đổi và xoá phần tử

A = [10, 20, 30]
print(A[0])   # 10

A[1] = 50     # thay đổi phần tử
del A[2]      # xoá phần tử
  • A[i]: truy cập phần tử thứ i.
  • Dùng lệnh gán để thay đổi: A[i] = ...
  • Dùng del để xoá: del A[i]

2.4. Duyệt danh sách bằng vòng lặp for

Duyệt theo chỉ số (phù hợp khi cần xử lí từng vị trí):

for i in range(len(A)):
    print(A[i])

len(A): số phần tử của danh sách
i: chỉ số chạy từ 0 đến len(A) - 1

2.5. Thêm phần tử bằng append()

A = [1, 2, 3]
A.append(10)  # thêm 10 vào cuối
  • Thêm 1 phần tử vào cuối danh sách.
  • Sau khi thêm, độ dài danh sách tăng thêm 1.

Hoạt động 3: Luyện tập

Bài tập 1: Duyệt và tính tổng

Cho danh sách A = [3, 5, 7, 9].

  • a) In ra các phần tử của danh sách.
  • b) Tính và in tổng các phần tử.
A = [3, 5, 7, 9]
S = 0
for i in range(len(A)):
    print(A[i])
    S += A[i]
print("Tổng =", S)

Bài tập 2: Thêm phần tử bằng append()

Nhập n số nguyên và lưu vào danh sách A, sau đó in danh sách.

A = []
n = int(input("Nhập n: "))
for i in range(n):
    x = int(input("Nhập phần tử: "))
    A.append(x)
print("Danh sách:", A)

Hoạt động 4: Vận dụng

Nhiệm vụ: Tìm max/min và vị trí

Cho danh sách các số nguyên A. Hãy:

  • Tìm giá trị lớn nhất và chỉ số của phần tử đó
  • Tìm giá trị nhỏ nhất và chỉ số của phần tử đó
A = [5, 2, 9, 1, 7]
max_val = A[0]
max_idx = 0
min_val = A[0]
min_idx = 0

for i in range(len(A)):
    if A[i] > max_val:
        max_val = A[i]
        max_idx = i
    if A[i] < min_val:
        min_val = A[i]
        min_idx = i

print("Max =", max_val, "tại chỉ số", max_idx)
print("Min =", min_val, "tại chỉ số", min_idx)

Tổng kết bài học

Em cần ghi nhớ

  • Danh sách (list) dùng để lưu nhiều dữ liệu trong một biến.
  • Chỉ số phần tử bắt đầu từ 0.
  • Duyệt theo chỉ số: for i in range(len(A)).
  • Thêm phần tử: A.append(x) (thêm vào cuối).
  • Có thể thay đổi: A[i] = ... và xoá: del A[i].

Tự kiểm tra nhanh (3 câu)

1) Câu lệnh nào tạo danh sách rỗng?

2) append(x) có tác dụng gì?

3) Chỉ số đầu tiên của danh sách là:

Chủ Nhật, 23 tháng 11, 2025

Tin học 10 – Bài 13: Bổ sung các đối tượng đồ họa
Tin học 10 – Bài 13

Bổ sung các đối tượng đồ họa – Hình khối, màu sắc và ghép hình sáng tạo

Từ miếng dưa hấu, logo, hình cây đến chùm bóng bay – tất cả đều được tạo nên từ các đối tượng đồ họa, lớp (layer), màu tô, màu viền và các phép ghép hình.

🎨
Tình huống mở đầu: Quan sát hình miếng dưa hấu trong SGK: phần vỏ, phần ruột, hạt dưa… Nếu đảo lớp (layer) của hạt xuống dưới, điều gì xảy ra?
Đối tượng đồ họa Lớp (layer) Hình khối – màu sắc Ghép hình (Union, Subtract, Intersect)
1. Khởi động: Miếng dưa hấu & khái niệm lớp (layer)

Nhiệm vụ: Quan sát hình miếng dưa hấu (Hình 13.1 SGK) và hoàn thành bảng sau:

Đối tượng Mô tả Lớp
Hình tam giác đỏ Phần thịt dưa Lớp trên (trên nền trắng)
Hình cung màu xanh Vỏ dưa Lớp giữa
Các chấm đen Hạt dưa Lớp trên tam giác
Nền trắng Nền ảnh Lớp dưới cùng
Câu hỏi gợi ý: Nếu lớp hạt dưa bị kéo xuống dưới lớp thịt dưa thì hạt còn nhìn thấy không? Từ đó kết luận: thứ tự lớp rất quan trọng khi thiết kế.
2. Các đối tượng hình khối cơ bản
2.1. Các loại hình khối thường dùng

Các phần mềm đồ họa (Inkscape, phần mềm trong SGK,…) thường có:

  • Hình tròn, hình ellipse.
  • Hình chữ nhật, hình chữ nhật bo góc.
  • Đa giác (tam giác, ngũ giác,…).
  • Hình sao, hình 3D, hình cây, quả cầu,…
Lưu ý thao tác: Giữ phím Shift khi vẽ để tạo hình tròn đều hoặc hình vuông đều.
2.2. Bài tập nhỏ

Hãy tạo 3 hình trên phần mềm đồ họa:

  • 1 hình tròn: màu đỏ, không viền, bán kính khoảng 40px.
  • 1 hình chữ nhật bo góc: bo góc 20px, nền xanh nhạt, viền đen 2px.
  • 1 hình sao 5 cánh: nền vàng, viền nâu, xoay 15°.
Kết quả mong đợi: HS gửi ảnh chụp màn hình hoặc file sản phẩm cho GV (qua nhóm lớp).
3. Màu tô – màu viền – độ trong suốt

3.1. Các thuộc tính cơ bản:

  • Màu tô (Fill): màu bên trong hình.
  • Màu viền (Stroke): màu đường bao quanh hình.
  • Độ dày viền: độ “mỏng – dày” của stroke.
  • Độ trong suốt (Opacity): cho phép nhìn thấy lớp dưới.
  • Mã màu (Hex, RGB,…): ví dụ #FFCC00.

3.2. Bài tập: bảng thuộc tính cho 1 hình chữ nhật

Thuộc tính Giá trị HS chọn Giải thích
Màu tô #FFCC00 Màu vàng cho nổi bật
Độ trong suốt 80% Nhìn mềm hơn, thấy nền dưới
Màu viền #000000 Đường bao rõ ràng
Độ dày viền 3px Cân đối so với kích thước hình
Nhiệm vụ: Chọn bất kỳ hình nào em đã vẽ, thử thay đổi các thuộc tính trên → ghi lại bảng thuộc tính riêng của mình.
4. Các phép ghép đối tượng: Union – Subtract – Intersect
4.1. Ý nghĩa các phép ghép
  • Union: Ghép các hình chồng nhau thành một hình duy nhất (dùng để tạo cánh hoa, tán cây,…).
  • Subtract: Lấy phần còn lại của hình thứ nhất sau khi trừ đi vùng giao nhau với hình thứ hai (tạo hình mặt trăng).
  • Intersect: Lấy phần giao giữa các hình (tạo hình thoi, lá,…).
4.2. Bài tập minh họa
  • Union: 2 hình tròn ghép lại thành 1 cánh hoa.
  • Subtract: 2 hình tròn tạo thành hình mặt trăng.
  • Intersect: 2 ellipse giao nhau tạo thành hình thoi.
Gợi ý: Hãy thử thay đổi vị trí chồng lên nhau của 2 hình trước khi thực hiện phép ghép, em sẽ được nhiều hình thú vị khác nhau.
5. Luyện tập: Vẽ logo, hình cây, hình cầu

Nhiệm vụ 1 – Vẽ logo (Hình 13.8):

  • Dùng các hình tròn, hình chữ nhật, có thể kết hợp Union/Subtract.
  • Tô màu theo gợi ý SGK, bố cục cân đối, có viền rõ.

Nhiệm vụ 2 – Vẽ hình cây (Hình 13.10):

  • Thân cây: hình chữ nhật dọc màu nâu #8B4513.
  • Tán cây: 3 hình tròn ghép Union, màu xanh #22AA33.
  • Các hình ghép thành một đối tượng duy nhất.

Nhiệm vụ 3 – Vẽ hình cầu (Hình 13.12):

  • Tạo 1 hình tròn làm thân cầu.
  • Thêm 1 ellipse bán trong suốt (Opacity ~ 40%) làm vệt sáng.
  • Có thể thêm bóng đổ để tạo cảm giác 3D.
Tiêu chí đánh giá: Đúng hình dạng, màu sắc hài hòa, bố cục rõ ràng, biết sử dụng lớp (layer) và các phép ghép khi cần.
6. Vận dụng: Sao, bông hoa và chùm bóng bay

Nhiệm vụ 1 – Ngôi sao biến dạng:

  • Vẽ 3 ngôi sao với Rounded lần lượt là 0%, 30%, 60%.
  • Ghi nhận xét: “Rounded càng lớn → cánh sao càng cong/mềm”.

Nhiệm vụ 2 – Bông hoa (Hình 13.14):

  • Tâm hoa: hình tròn màu vàng.
  • Cánh hoa: 6–8 hình sao, Rounded ≈ 40%, xếp quanh tâm.
  • Chọn màu hài hòa, có thể dùng Union để ghép các cánh.

Nhiệm vụ 3 – Chùm bóng bay (Hình 13.16):

  • Vẽ 3–5 quả bóng bằng ellipse, thêm highlight bán trong suốt.
  • Sợi dây: đường cong mảnh màu đen hoặc xám.
  • Sắp xếp lớp: bóng phía trước – bóng phía sau để tạo chiều sâu.
Hãy tưởng tượng sản phẩm của em được in thành poster treo lớp – em sẽ phối màu và bố cục thế nào để bắt mắt nhất?
7. Quiz nhanh: Em hiểu gì về đối tượng đồ họa?

1. “Layer” trong bản vẽ đồ họa có ý nghĩa là gì?

2. Phép ghép nào dùng để tạo hình mặt trăng từ hai hình tròn?

3. Thuộc tính nào quy định độ trong suốt của hình?

Nội dung được biên soạn lại dưới dạng bài giảng học sinh từ giáo án Tin học 10 – Bài 13: Bổ sung các đối tượng đồ họa.

Thứ Bảy, 1 tháng 11, 2025

Luyện tập – Bài 12 Thiết kế đồ họa | Rcom Dăm DYi eLearning

🧠 Luyện tập – Bài 12. Phần mềm thiết kế đồ họa (Inkscape)

Rcom Dăm Dyi eLearning – phiên bản luyện tập tương tác • Lưu điểm vào LocalStorage

Nhập tên học sinh:
Thời gian 12:00
⏱️ Gợi ý: 12 phút cho toàn bộ 10 câu • Có gợi ý & lời giải chi tiết sau mỗi câu.

Dạng 1. Trắc nghiệm nhiều lựa chọn (6 câu)

Dạng 2. Đúng – Sai (2 câu)

Dạng 3. Trả lời ngắn (2 câu)

© Rcom Dăm Dyi Studio • Màu thương hiệu: #0078D7 · #FFA726 · #28a745 · #dc3545

Bài đăng phổ biến

💬 Bình luận

💬 Bình luận

📌 Danh sách bình luận