Danh mục: Khoá học lập trình Python

20 đề và đáp án thi HSG tin Python C++ THPT có tài liệu ôn thi

Thầy mến chào các em đang trong giai đoạn nước rút ôn luyện thi học sinh giỏi tin học lập trình Python cấp huyện hoặc cấp tỉnh, hoặc các em đang thi vào các trường Chuyên Tin. Thầy sẽ tổng hợp được 20 đề và đáp án thi HSG tin Python C++ THPT có tài liệu ôn luyện thi pdf. từ dễ đến nâng cao. Hy vọng 20 đề  này sẽ giúp ích cho các em ôn lại kiến thức trước khi thi bước vào kỳ thi cam go sắp tới và Thầy chúc các em đạt được kết quả cao nhé!

Nếu bạn nào mà mới bắt đầu thì nên vào bài để học nhé! còn các đề thi này dành cho các bạn chuẩn bị ôn thi học sinh giỏi lập trình Python rồi nhé!

Tự học Python từ cơ bản đến nâng cao giải đề Miễn Phí tài liệu pdf

Khóa học Python từ cơ bản đến nâng cao miễn phí

Khóa học Python từ cơ bản đến nâng cao miễn phí

Rồi còn chờ gì nữa mà không vào giải thử 20 đề hay và hấp dẫn nào!

Đề 1: Dành cho các bạn thuộc Cấp Độ 10:

NĂM HỌC 2022-2023

Môn: TIN HỌC

Thời gian: 90 phút (Không kể thời gian giao đề)

Ngày thi: 14/07/2024

Thứ tự

Tên bài File

chương

trình

File dữ liệu

vào

File kết quả

Bài 1 Tính loại bão D011.* D011.INP D051.OUT
Bài 2 Tính trung bình cộng những số nguyên chia hết cho 2 và 3 từ m đến n D012.* D012.INP D012.OUT
Bài 3 Tìm số lớn nhất trong mâng và vị tri D013. * D013.INP D013.OUT
Bài 4 In các từ viết hoa trong xâu s D014.* D014.INP D014.OUT
Bài 5  Tính trung bình cộng các số chính phương đầu tiên D015 * D015.INP D015.OUT

Dấu * được thay thế bởi PY, CPP của ngôn ngữ lập trình được sử dụng tương ứng là Python hoặc C++.

Bài 1: (4 điểm) Tính loại bão?

  • Diễn giải: Nhập vào tốc độ gió (đơn vị km/h) của một com bào ớ ba địa điểm khác nhau, tính tốc độ gió trung bình. Cho biết cơn bão đó thuộc loại nào sau đây:
    • Nếu tốc độ gió trung bình dưới 89: Gió
    • Nếu tốc độ gió trung bình từ 89 đến 183: Bão
    • Nếu tốc độ gió trung bình trên 183 đến 220: Siêu bão
    • Nếu tốc độ gió trung bình trên 220 đến 465: Siêu cuồng phong
    • Nếu tốc độ gió trung bình >=466: Siêu bão hủy diệt
  • Input: Ba số nguyên a, b, c trên một dòng, cách nhau bờ dấu cách cho biết tốc độ gió của ở 3 địa điểm khác nhau (0<a, b, c<500).
  • Output: Tốc độ gió trung bình (một chữ số thập phân), dấu “-“, loại bão

Ví dụ:

Input Output
100 120 114 111.3-Bao
189 178 195 187.3-Sieu bao

Bài 2: (4 điểm) Tính trung bình cộng những số nguyên chia hết cho 2 và 3 từ m đến n?

  • Diễn giải:
    • Nhập vào hai số nguyên m và n (m<=n).
    • Tính tổng các số nguyên chia hết cho 5 từ m đến n;
    • Tính trung bình cộng các số nguyên chia hết cho 2 và 3 từ m đến n.
  • Input: Hai số nguyên dương m và n (0<m, n<106), trên một dòng, cách nhau bởi dấu cách.
  • Output:
    • Số thứ nhất là tổng các số chia hết cho 5 từ m đến n, dấu cách, số thứ hai là trung bình cộng các số nguyên chia hết cho 2 và 3 từ m đến n.
    • Làm tròn đến một chữ số thập phân.
    • Nếu không có số nguyên nào chia hết cho 2 và 3 thì số thứ hai là “0.0”

Ví dụ:

Input Output
4 15 30 9.0
2 11 15 6.0

Bài 3: (4 điểm) Tìm số lớn nhất trong mảng và vị trí của nó?

Diễn giải:

  • Nhập vào một mảng a có n số nguyên: a0, a1, a2,…… an-1
  • Tìm số lớn nhất trong mảng a và vị trí của số lớn nhất đó

Input: Dòng một là số nguyên n (0<n<106), n dòng tiếp theo là n số nguyên có giá trị tuyệt đối không vượt quá 105.

Output: Số lớn nhất và vị trí của nó trong mảng trên cùng một dòng, cách nhau bởi dấu cách

Input

Output

7 10 4
9
6
3
8
10
7
-2

 

5 20 0
20
7
6
8
0

Bài 4: (4 điểm) In các từ viết hoa trong xâu s

Diễn giải: Nhập vào một xâu s. In các từ viết hoa trong xâu s

Input: Xâu s trên một dòng, cỏ độ dài không vượt quá 105, chứa các ký tự là chữ cái, chữ số, ký hiệu và các dấu cách.

Output: Các từ viết hoa trong xâu theo thứ tự xuất hiện, trên một dòng, cách nhau bởi dấu cách.

 

Input

Output

Toi hoc LAP TRINH Python tu nam 2024 LAP TRINH
Thi HOC SINH GIOI mon Tin Hoc HOC SINH GIOI

Bài 5: (4 điểm) Tính trung bình cộng n số chính phương đầu tiên?

  • Diễn giải:
    • Nhập vào số nguyên dương n.
    • Tính trung bình cộng của n số chính phương đầu tiên.
    • Số nguyên n được gọi là số chính phương khi n>=0 và căn bậc 2 của n là một số nguyên.
  • Ví dụ:
    • n=9 là số chính phương, căn bậc 2 của 3 là 3
    • n=15 không phải số chính phương vì căn bậc 2 của 5 là 3.872
    • Số chính phương thứ nhất là 0
    • Dãy số chính phương: 0, 1,4, 9, 16, 25, 36, 49,….
  • Input: Một số nguyên n (0<n<103)
  • Output: Trung bình cộng của n số chính phương đầu tiên, làm tròn đến 2 chữ số thập phân
Input Output
4 3.50
7 13.00

Đáp án giải đề thi HSG Python bài 1: Tính loại bão?

import sys
sys.stdin=open('D011.INP','r')
sys.stdout=open('D011.OUT','w')
a,b,c=map(int,input().split())
TBC=(a+b+c)/3
print('%0.1f'%TBC,'-',sep='',end='')
if TBC<89:
    print('Gio')
elif 89<=TBC<=183:
    print('Bao')
elif 183<TBC<=220:
    print('Sieu bao')
elif 220<TBC<=465:
    print('Sieu cuong phong')
elif TBC>465:
    print('Sieu bao huy diet')

Đáp án bài 2: tính trung bình cộng những số nguyên chia hết cho 2 và 3 từ m đến n

import sys
sys.stdin=open('D012.INP','r')
sys.stdout=open('D012.OUT','w')
m,n=map(int,input().split())
tong=0
dem=0
tong5=0
for i in range(m,n+1):
    if i%5==0:
        tong5+=i
print(tong5,end=' ')
for i in range(m,n+1):
    if i%2==0 and i%3==0:
        dem+=1
        tong+=i
tbc=0
if dem>0:
    tbc=tong/dem
    print('%0.1f'%tbc)

Đáp án bài 3: Tìm số lớn nhất trong mảng và vị trí của nó?

import sys
sys.stdin=open('D013.INP','r')
sys.stdout=open('D013.OUT','w')
n=int(input())
a=[]
for i in range(n):
    a.append(int(input()))
M=max(a)
vt=a.index(M)
print(M,vt)

Đáp án bài 4: In các từ viết hoa trong xâu s

import sys
sys.stdin=open('D054.INP','r')
sys.stdout=open('D054.OUT','w')
n=input()
n=n.split()
for i in n:
    if i.isupper():
        print(i,end=' ')

Đáp án bài 5: Tính trung bình cộng n số chính phương đầu tiên?

import sys,math
sys.stdin=open('D015.INP','r')
sys.stdout=open('D015.OUT','w')
def ktcp(n):
    if n<0:
        return -1
    x=int(math.sqrt(n))
    return x*x==n
n=int(input())
i=0
dem=0
tong=0
Tbc=0
while dem<n:
    if ktcp(i):
        tong+=i
        dem+=1
    i+=1
if dem>0:
    Tbc=tong/dem
    print('%0.2f'%Tbc)

Thầy có giải đề thi vào lớp 10 Chuyên Tin Tiền Giang năm 2024 – 2025:

Giải bài tập 1: thi vào lớp 10 Chuyên Tin Tiền Giang

 

Giải bài tập 2: thi vào lớp 10 Chuyên Tin Tiền Giang

 

Giải bài tập 3: thi vào lớp 10 Chuyên Tin Tiền Giang

 

Giải bài tập 4: thi vào lớp 10 Chuyên Tin Tiền Giang

 

Giải bài tập 5: thi vào lớp 10 Chuyên Tin Tiền Giang

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)
  • Website: vitinhtandan.com
  • Email: vitinhtandan@gmail.com

5 đề thi Python học sinh giỏi tin học THCS có đáp án tài liệu ôn thi

Chào các em yêu thích tin học lập trình Python, để chuẩn bị cho kỳ thi tốt sắp tới thầy có soạn ra 5 đề thi Python học sinh giỏi tin học THCS có đáp án và tài liệu ôn thi  để các em thi cho tốt nhé!

Đầu tiên các em cần ôn tập lại tất cả kiến thức về các hàm, vòng lập for, while, cách tạo các hàm def cho tốt nhé ! Các em vào đường dẫn phía dưới nhé!

Tự học Python từ cơ bản đến nâng cao đến giải đề Miễn Phí tài liệu pdf.

Khóa học Python từ cơ bản đến nâng cao miễn phí

Khóa học Python từ cơ bản đến nâng cao miễn phí

  • Rồi sau khi ôn lại kiến thức đã học các em vào tự giải đề trước rồi xem đáp án sau nhé!
  • Hôm nay thầy sẽ giải đề thi học sinh giỏi tin học lập trình Python huyện Gò Công Đông, Tiền Giang.

PHÒNG GIÁO DỤC VÀ ĐÀO TẠO HUYỆN GÒ CÔNG ĐÔNG

KỲ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN 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: 14/02/2023

(Đề thi có 03 trang, 05 câu)

TỔNG QUAN CÁC BÀI THI:

Tên bài

File chương trình File dữ liệu vào

File kết quả

Câu 1. Công nhân CONGNHAN.* TT.INP KQ.OUT
Câu 2. Thăm bạn THAMBAN.* KANGAROO.INP KANGAROO.OUT
Câu 3. xếp hàng XEPHANG * XEPHANG.INP XEPHANG.OUT
Câu 4. Dãy nhị phân DAYNHIPHAN. * DAYNHIPHAN.INP DAYNHIPHAN.OUT
Câu 5.

 

Đổi tiền DOITIEN.*

 

DOITIEN.INP DOITIEN.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à Pascal, C++, Python hoặc phần mở rộng tương ứng với NNLT khác

Câu 1:  Công nhân (4.0 điểm) – Tên chương trình: CONGNHAN.*

  • Diễn Giải:
    • Công ty A đưa rước cho N nhóm công nhân đi làm, nhóm thứ i cách công ty di km (i—1, 2, 3, …, N).
    • Công ty có M xe được đánh số từ 1 đến M (M>N) để phục vụ cho việc đưa rước các nhóm công nhân.
    • Xe thứ j có mức tiêu thụ xăng là vj đơn vị thể tích/km (j=l, 2, 3, . ., M).                                                                                    .
  • Yêu cầu: Hãy chọn N xe để phục vụ cho việc đưa các nhóm công nhân đi làm, mỗi xe chỉ phục vụ cho một nhóm, sao cho tổng chi phí xăng cần sử dụng là ít nhất.     •
  • Dữ liệu: Vào file văn bản TT.INP:                                                        Ị
    • Dòng đầu tiên chứa hai số nguyên dương N, M (N<M<200);
    • Dòng thứ hai chứa các sô nguyên dương dl, d2,…, dN;
    • Dòng thứ ba chứa các số nguyên dương vl, v2, …, vM;
    • Các số trên cùng một dòng được ghi cách nhau bởi dấu cách. I
  • Kết quả: Ghi ra file văn bản KQ.OUT:
    • Dòng đầu tiên chứa tổng lượng xăng cần dùng cho việc đưa rước công nhân (không tính lượt về);
    • Dòng thứ 2 trở đi ghi chỉ số xe đã sử dụng để chở công nhân.
  • Ví dụ: 
TT.INP KQ.OUT
47 454
6 1115 12 2
15 13 19 10 11 20 9 4
5
7

Câu 2: Thăm bạn (4.0 điểm) – Tên chương trình: THAMBAN.*

  • Diễn Giải:
    • Một chú Kangaroo muốn đi thăm một người bạn cách đó một khoảng n (đơn vị dm). Kangaroo chỉ có hai cách di chuyển, một là nhảy ngắn a (đơn vị dm), hai là nhảy dài b (đon vị dm).
    • Hỏi chú Kangaroo cần nhảy ít nhât bao nhiêu bước nhảy để đến được nhà người bạn (phải nhảy vừa đủ, không nhảy quá nhà bạn).
  • Dữ liệu vào từ file: INP gồm ba số nguyên dương n, a, b cách nhau một khoảng trắng (l<n<109, l<a< b<50).
  • Kết quả ra file: KANGAROO.OUT
    • Dòng 1 ghi tổng số bước nhảy ít nhất của chú
    • Dòng 2 cho biết số bước ngắn, số bước dài.
KANGAROO.INP KANGAROO.OƯT
21 25

 

6

3 ngan, 3 dai

Câu 3: Xếp hàng ( 4.0 điểm ) – Tên chương trình: XEPHANG.*

  • Diễn giải:
    • Trong giờ sinh hoạt tập thể, lớp 9A có n học sinh (n<45) xếp thành hàng dọc.
    • Mỗi học sinh có chiều cao a[i] (i=l, 2, 3,….n).
    • Em hãy viết chương trình đếm số bạn có chiều cao bằng nhau nhiều nhất.
  • Dữ liệu vào từ file:  XEPHANG.INP
    • Dòng thứ nhất chứa số tự nhiên n.
    • Dòng thứ hai gồm n số tự nhiên a[i], mỗi số ứng với chiều cao của từng bạn (đơn vị cm), các số cách nhau một khoảng trắng.
  • Kết quả ra file: XEPHANG.OUT
    • Dòng thứ nhất: Ghi tổng số bạn có chiều cao bằng nhau nhiều nhất.
    • Dòng số 2: Ghi các chiều cao tương ứng.
  • Ví dụ:
XEPHANG.INP XEPHANG.OUT
10 3
160 156 158 160 159 158 159 160 158 161 158
160

Câu 4: Dãy nhị phân (4.0 điểm) Tên chương trình :DAYNHIPHAN.*

Diễn giải: Cho dãy nhị phân có độ dài là n. Hãy kiểm tra dãy nhị phân này có chứa các sô 0 và 1 xen kẽ nhau không?

Dữ liệu: Vào từ file văn bản DAYNHIPHAN.INP gồm :

  • Dòng đầu chứa số nguyên n (l<n<106)
  • Dòng thứ 2 chứa dãy nhị phân có độ dài n

Kết quả:

  • Ghi ra file văn ban DAYNHIPHAN.OUT chữa chữ “YES” nếu đó là dãy chứa các số 0 và 1 xen kẽ nhau, ngược lại ghi “NO”.
  • Dòng thứ 2 là số thập phân tương ứng được đổi từ hệ nhị phân sang hệ thập phân.
  • Lưu ý cách đổi số từ hệ nhị phân (ví dụ 1101) sang hệ thập phân:
  • 1×23 + 1×22 + 0x21 +1×2° = 8+4+0+1=13
DAYNHIPHAN.INP DAYNHIPHAN.OUT
5 YES
10101 21

Câu 5: Đổi tiền(4 0 điềm) Tên chương trình: DOITIEN *

  • Diễn giải: Em hãy viết chương trình đổi số tiền N ( N là số nguyên và 0<=N<1000000) sang chuỗi tương ứng?
  • Dữ liệu vào từ file: DOITIEN.INP
    • Gồm một dòng chứa số tự nhiên n.                                                                    I
  • Kết quả ra file: DOITIEN.OUT
    • Gồm một dòng ghi số tiền bằng chữ tương ứng
  • Ví dụ:
DOITIEN.INP DOITIEN.OUT
0 Khong dong
98 Chin muoi tam dong
809 Tam tram le chin dong
605305 Sau tram le nam nghin ba tram le nam dong
999999 Chin tram chin muoi chin nghin chin tramf chin muoi chin dong

………………………………………………………Hết……………………………………………….

Thí sinh không được sử dụng tài liệu. Cán bộ coi thi không giải thích gì thêm.

Đáp án tin học lập trình python câu 2 thăm bạn:

 

import sys
sys.stdin=open('KANGAROO.INP','r')
sys.stdout=open('KANGAROO.OUT','w')
n,a,b=map(int,input().split())
tong=0
k=[]
for i in range(1,n):
    for j in range(1,n):
        if i*a+j*b==n:
            tong=i+j
            k.append(tong)
Min=min(k)
for i in range(1,n):
    for j in range(1,n):
        if i*a+j*b==n and i+j==Min:
            print(Min)
            print(i,' ngan,',j,' dai',sep='')
            break

Đáp án tin học lập trình python câu 3 xếp hàng:

import sys
sys.stdin=open('XEPHANG.INP','r')
sys.stdout=open('XEPHANG.OUT','w')
n=int(input())
a=list(map(int,input().split()))
b=a.copy()
i=0
while i<len(b)-1:
    j=i+1
    while j<len(b):
        if b[i]==b[j]:
            b.pop(j)
        else:
            j+=1
    i+=1
c=[]
for i in range(len(b)):
    c.append(a.count(b[i]))
Max=max(c)
dem=0
e=[]
for i in range(len(b)):
    if a.count(b[i])==Max:
        e.append(b[i])
        dem+=1

if dem>0:
    print(Max)
    for i in sorted(e):
        print(i)

Đáp án tin học lập trình python câu 4 dãy nhị phân:

 

import sys
sys.stdin=open('DAYNHIPHAN.INP','r')
sys.stdout=open('DAYNHIPHAN.OUT','w')
n=int(input())
s=input()
s=list(s)
dk=1
for i in range(len(s)-1):
    if (s[i]=="1" and s[i+1]=='1') or (s[i]=="0" and s[i+1]=='0'):
        dk=0
if dk==1:
    print('Yes')
else:
    print('No')
tong=0
for i in range(len(s)):
    tong+=int(s[i])*(2**(len(s)-1-i))
print(tong)

Đáp án tin học lập trình python câu 5 đổi tiền:

 

import sys
sys.stdin=open('DOITIEN.INP','r')
sys.stdout=open('DOITIEN.OUT','w')
def chuadauhoa(s):
    s=list(s)
    a=[]
    a.append(s[0].uper())
    for i in range(1,len(s)):
        a.append(s[i])
    return a
s=input()
s=list(s)
print(s)
b=[]
for i in range(len(s)):
    b.append(int(s[i]))
print(b)
a=['khong','mot','hai','ba','bon','nam','sau','bay','tam','chin']
c=[]
for i in b:
    c.append(a[i])
print(c)
if len(c)>=3:
    for i in range(len(c)):
        if c[i]=='khong':
            c[i]='le'
if len(c)==1:
    print(c[0],end='')
elif len(c)==2:
    if c[0]=='le':
        print(c[0],c[1],end='')
    else:
        print(c[0],'muoi',c[1],end='')
elif len(c)==3:
    if c[1]=='le':
        print(c[0],'tram',c[1],c[2],end='')
    else:
        print(c[0],'tram',c[1],'muoi',c[2],end='')
elif len(c)==4:
    if c[2]=='le':
        print(c[0],'nghin',c[1],'tram',c[2],c[3],end='')
    else:
        print(c[0],'nghin',c[1],'tram',c[2],'muoi',c[3],end='')
elif len(c)==5:
    if c[3]=='le':
        print(c[0],'muoi',c[1],'nghin',c[2],'tram',c[3],c[4],end='')
    else:
        print(c[0],'muoi',c[1],'nghin',c[2],'tram',c[3],'muoi',c[4],end='')
elif len(c)==6:
    if c[4]=='le' and c[1]=='khong':
        print(c[0],'tram',c[1],'muoi',c[2],'nghin',c[3],'tram',c[4],c[5],end='')
    elif c[1]=='le' and c[4]=='le':
        print(c[0],'tram',c[1],c[2],'nghin',c[3],'tram',c[4],c[5],end='')
    else:
        print(c[0],'tram',c[1],'muoi',c[2],'nghin',c[3],'tram',c[4],'muoi',c[5],end='')
print(' dong')

Chú ý: bài đáp án chỉ có tính chất tham khảo bạn nào có cách giải hay hơn, hoặc có cách giải khác hãy đăng ký và để lại bình luận mình sẽ giải thích cho nhé !

Giải đề 2 có đáp án thi HSG tin học python chuyên tin Tiền Giang năm 2024 – 2025

Đề thi HSG chuyên tin tiền giang 2024 - 2025

10 đề thi đáp án thi Python

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)
  • Website: vitinhtandan.com
  • Email: vitinhtandan@gmail.com

 

10 đề thi đáp án thi Python HSG tin học lớp 10 THCS cấp Huyện

Thầy Tấn Dân sẽ giải cho các em 10 đề thi và đáp án thi HSG ( học sinh giỏi )  tin học python lớp 10 THCS ( Trung học cơ sở ) cấp Huyện ở Tiền Giang cho các bạn tham khảo thêm nhé!

Khóa học Python từ cơ bản đến nâng cao miễn phí

Khóa học Python từ cơ bản đến nâng cao miễn phí

 

Tải bằng google driver

KỲ THI HỌC SINH GIỎI CẤP THÀNH PHỐ MỸ THO

TRUNG HỌC CƠ SỞ NĂM 2022 – 2023

Môn: TIN HỌC

Thời gian: 150 phút (không kể thời gian giao đề)

Ngày thi: 14/02/2023

(Để thi có 03 trang, gồm 05 bài)

TỔNG QUAN CÁC BÀI THI GỒM:

Tên bài File chưong trình File dữ liệu vào File kết quả
Bài 1. APERTURE.* APERTURE.INP APERTURE. OUT
Bài 2. STEP.* STEP.INP STEP. OUT
Bài 3. SUMSQDIGIT.* SUMSQDIGIT.INP SUMSQDIGIT.OUT
Bài 4. SYNSTRING.* SYNSTRING.INP SYNSTRING.OUT
Bài 5. PERIJPOLYGON.* PERIPOLYGON.INP PERIPOLY GON.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) LỖ HỎNG CHỮ SỐ- Tên chương trình APERTURE.*

  • Khái niệm:
    • Cho các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lô hông,
    • Chữ số có hai đường khép kín thì ta gọi chữ số đó có 2 lỗ hổng và chữ số không có đường khép kín nào thì ta gọi chư số đo có 0 lỗ hổng.
    • Ví dụ: Chữ số 0; 4; 6; 9 có 1 lỗ hổng.
    • Chữ số 8 có 2 lỗ hổng.Chữ số 1; 2; 3; 5; 7 có 0 lỗ hổng.
  • Yêu cầu: Cho số n (n <= 1O100), đếm xem số đó có bao nhiêu lỗ hổng.
  • Dữ liệu đầu vào: Nhập vào từ file APERTURE.INP giá trị số n.
  • Dữ liệu xuất ra : Xuất ra file OUT số các lỗ hổng.
  • Ví dụ:
APERTURE.INP APERTURE.OUT
2456878989 10
11111222223333355555577777777777777 0

Bài 2: ( 4 điểm ) SỐ BẬC THANG – Tên chương trình STEP.*

  • Khái niệm: Biết một số được gọi là số bậc thang nếu biểu diễn thập phân của nó có nhiều hơn một chữ số,
  • Theo thứ tự từ trái qua phải và chữ số đứng sau (bên phải) lớn hon chữ số đứng trước (bên trái) 1 hoặc 2 đơn vị.
  • Số thỏa điều kiện trên được gọi là số bậc thang.
  • Yêu cầu: Cho số nguyên dương n là số lượng các số cần kiểm tra (n<=1010) và một dãy các số cần kiểm tra bậc thang ai (ai <= 1010 ), dãy các sô cần kiểm tra ai được cách nhau 1 khoảng cách. Kiểm tra có bao nhiêu số ai trong dãy số trên thỏa điều kiện là số bật thang. Đặc biệt, nếu ai <=9 thì số bậc thang bằng 0.* Dữ liệu đầu vào: Nhập vào từ file STEP.INP, dòng thứ 1 chứa số nguyên dương n, dòng thứ 2 chứa dãy các số cần kiểm tra số bộc thang,- Dừ liệu đầu ra: Xuất ra file STEP.OUT số lượng các số bậc thang.
  • Ví dụ:
STEP.INP STEP.OUT
4

123 13468 1244 13579

3
12

12 24 35 22 100 5689 34567 25678 43567 1234679 2 1456

6

Bài 3. (4 điểm) TỔNG BÌNH PHƯƠNG CHỮ SỐ – Tên chương trình SUM_SQDIGIT.*

  • Khái niệm: Cho một số có dạng n= 9…78 trong đó có k chữ số (n<10250). Cho sổ n=998, số x được thành lập từ số n bằng cách ghép bình phương từng chữ số từ trái sang phải của số n, ta được số x=818164. tổng các chữ số của số x là 28.
  • Yêu cầu: Hãy tính tổng các chữ số của số x, x được tạo bằng cách ghi từng chữ số của n ở dạng bình phương theo thứ tự ghi số từ trái sang phải.
  • Dữ liệu đầu vào: Nhập vào từ file văn bản SUM_SQDIGIT.INP số k (2< k< 250)
SUM_SQDIGIT.INP SUM_SQDIGIT.OUT
998 28
8967999999997432222 140

Hãy hỏi đáp thắc mắc tại nhóm đam mê lập trình python Việt Nam !

10 đề thi đáp án thi Python HSG tin học lớp 10 THCS cấp Huyện

cộng đồng python việt nam

Bài 4: (4 điểm) XÂU ĐỒNG BỘ DÀI NHẤT – Tên chương trình SYNSTRING.*

  • Khái niệm: Một xâu gọi là xâu đồng bộ, nếu xâu đó có tất cả ký tự giống nhau.
  • Yêu cầu: Cho xâu s, hãy đưa ra xâu con đồng bộ dài nhất ( nếu có nhiều xâu con đồng bộ dài nhất, ta đưa ra xâu con đồng bộ dài nhất đầu tiên tính từ bên trái).
  • Dữ liệu đầu vào: Nhập từ file văn bản SYNSTRING.INP xâu S ( 1<= độ dài xâu s <=105
  • Dữ liệu đầu ra: Xuất ra file văn bàn SYNSTRING.OUT, xâu con dài nhất là xâu đồng bộ trong s.
  • Ví dụ:
SYNSTRING.INP SYNSTRING.OUT
02203 22
jhfgkjgflkhgeeehhkkkkkaaaaakkkk kkkkk

Bài 5. (4 điểm) CHU VI VÀ DIỆN TÍCH ĐA GIÁC LỒI- Tên chương trình PERI_POLYGON. *

  • Khái niệm: Đa giác lồi là đa giác thuộc về một phía của đường thẳng chứa cạnh bất kì của da giác.
  • Yêu cầu: Lập trình giải quyết bài toán tính chu vi và diện tích da giác lồi bất kỳ với số cạnh n>=3 và được cho bởi tọa độ đỉnh Ai, A2j A3,An.
    • Tọa độ các đỉnh của đa giác lồi tương ứng là Ai(xl,yl); A2(x2,y2); A3(x3,y3); …;An(xn,yn), (với n là số đỉnh).
    • Chu vi da giác lồi là tổng các cạnh=A1A2+A2A3+A3A(+…+A n.]An+AnAi
    • Diện tích da giác lồi bằng tổng diện tích các tam giác A1A2A3, A1A3A4,A1A4A5…A1An-1An
    • Độ dài AiA2=V(xl – xiy + (y 1 – y2Ỵ\ các cạnh còn lại tương tự.
    • Cả chu vi và diên tích được làm tròn đến hàng đơn vị. Lưu ý chi làm tròn chu vi và diện tích không làm tròn độ dài cạnh; khi xuất kết quà chu vi, diện tích vào file mới được phép làm tròn và thống nhất làm tròn đến hàng đơn vị theo quy tắc làm Ưòn toán học.
  • Dữ liệu đầu vào: Dòng đầu của tệp PERI_POLYGON.INP là số đỉnh, các dòng còn lại là tọa độ (xi,yi) của các đỉnh đa giác lồi.
  • Dữ liệu đầu ra: Dòng đầu của tệp PERI_POLYGON.OUT là chu vi, dòng thứ hai là diện tích.
  • Ví dụ:

 

PERI_POLYGON.INP PERI_POLYGON.OUT
3 184
30 30 1462
75 15
90 75

4 87
9 16 348
24 11
42 14
42 31

HẾT

Thí sinh được sử dụng các loại máy tính theo quy định của Bộ Giáo dục và Đào tạo cho phép, thí sinh không được sứ dụng tài liệu. Cán bộ coi thi không được giải thích gì thêm.

Hướng dẫn đáp án thi python bài 1 APERTURE.py:

 

import sys
sys.stdin=open('APERTURE.INP','r')
sys.stdout=open('APERTURE.OUT','w')
s=list(input())
tong=0
for i in range(len(s)):
    if s[i]=='0' or s[i]=='4' or s[i]=='6'or s[i]=='9':
        tong+=1
    elif s[i]=='8':
        tong+=2
print(tong)

Hướng dẫn đáp án thi python bài 2  STEP.py:

 

import sys
sys.stdin=open('STEP.INP','r')
sys.stdout=open('STEP.OUT','w')
def ktbatthang(n):
    s=str(n)
    if len(s)>1:
        dem=0
        for i in range(len(s)-1):
            if int(s[i+1])-int(s[i])==1 or int(s[i+1])-int(s[i])==2:
                dem+=1
        if dem==len(s)-1:
            return True
        else:
            return False
    else:
        return False
n=int(input())
a=list(map(int,input().split()))
dem=0
for i in range(len(a)):
    if ktbatthang(a[i]):
        dem+=1
print(dem)

Hướng dẫn đáp án thi python bài 3  SUMSQDIGIT.py:

 

import sys
sys.stdin=open('SUMSQDIGIT.INP','r')
sys.stdout=open('SUMSQDIGIT.OUT','w')
def binhphuong(s):
    n=int(s)
    n=n**2
    n=str(n)
    tong=0
    for i in range(len(n)):
        tong+=int(n[i])
    return tong

s=input()
s=list(s)
tong=0
for i in range(len(s)):
    tong+=binhphuong(s[i])
print(tong)

Hướng dẫn đáp án thi python bài 4   SYNSTRING.py:

 

import sys
sys.stdin=open('SYNSTRING.INP','r')
sys.stdout=open('SYNSTRING.OUT','w')
def ktgiong(a,b):
    if a==b:
        return True
    else:
        return False
s=input()
s=list(s)
print(s)
a=[]
for i in range(len(s)-1):
    if s[i]==s[i+1]:
        a.append(s[i])
    elif s[i+1]==s[i+2]:
        a.append(s[i+1])
print(a)
b=a.copy()
i=0
while i<len(b)-1:
    j=i+1
    while j<len(b):
        if b[i]==b[j]:
            b.pop(j)
        else:
            j+=1
    i+=1
print(b)
c=[]
for i in range(len(a)):
    while not a[i] in c:
        c.append(a[i])
print(c)

Hướng dẫn đáp án thi python bài 5 PERIJPOLYGON.py:

 

import sys,math
sys.stdin=open('PERIJPOLYGON.INP','r')
sys.stdout=open('PERIJPOLYGON.OUT','w')
def tinhcanh(x1,y1,x2,y2):
    canh=(x1-x2)**2+(y1-y2)**2
    canh=math.sqrt(canh)
    return canh
def dientich(a,b,c):
    if a+b>c and a+c>b and c+b>a and a>0 and b>0 and c>0:
        p=(a+b+c)/2
        k=math.sqrt(p*(p-a)*(p-b)*(p-c))
        return k
    else:
        return 0
n=int(input())
a=[]
for i in range(n):
    b=list(map(int,input().split()))
    a.append(b)
tong=0
c=[]

for i in range(len(a)-1):
    for j in range(len(a[0])-1):
        c.append(tinhcanh(a[i][j],a[i][j+1],a[i+1][j],a[i+1][j+1]))
c.append(tinhcanh(a[0][0],a[0][1],a[len(a)-1][len(a[0])-2],a[len(a)-1][len(a[0])-1]))
print('%0.0f'%sum(c))
tongdt=0
for i in range(1,len(c)-1):
    tongdt+=dientich(c[0],c[i],c[i+1])
print('%0.0f'%tongdt)

Chú ý: bài tập chỉ mang tính chất tham khảo nhen các bạn! bạn nào có cách giải hay hơn hoặc có thắc mắc xin hãy để lại bình luận phía dưới mình sẽ giải đáp ạ ! xin chân thành cảm ơn !

 

Giải đề 2 có đáp án thi HSG tin học python chuyên tin Tiền Giang năm 2024 – 2025

Đề thi HSG chuyên tin tiền giang 2024 - 2025

10 đề thi đáp án thi Python

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)
  • Website: vitinhtandan.com
  • Email: vitinhtandan@gmail.com

Tự học Python từ cơ bản đến nâng cao giải đề Miễn Phí tài liệu pdf

Thật là thiếu sót nếu các bạn không ” Tự học ngôn ngữ lập trình Python từ cơ bản đến nâng cao !” ngay bây giờ. Hiện tại kỹ thuật viên lập trình đang là nghề ” HÓT NHẤT “ thường có mức lương khá cao từ trung bình có thể 20 triệu, thậm chí kỹ thuật lập trình giỏi xuất sắc lên tới hơn 100 triệu là chuyện bình thường! Vậy còn chờ gì nữa mà không học ngôn ngữ lập trình Python ” NGAY VÀ LUÔN NÀO ANH EM!”

Ngôn ngữ lập trình Python là gì?

  1. Ứng dụng trong ngôn ngữ lập trình tạo ra các con robot, điều khiển các thiết bị:

  • Ví dụ như một câu chuyện hay là để sửa chữa 1 con robot ở trên mặt trăng
  • Con robot đó đang bị lỗi nghiêm trọng không chạy được cách trái đất khoảng sắp xỉ 400.000 km,
  • kỹ thuật viên lập trình của cơ quan hàng không và vũ trụ Hoa Kỳ ( NASA ) đã chỉ sử dụng sửa chữa 1 câu lệnh code từ trái đất rồi tải lên con robot đó trên một nơi xa xôi như mặt trăng.
  • Và cuối cùng mà đã phục hồi thành công con robot chạy ngon lành và bình thường đúng là ” Điều Phi Thường! “  ( hay ghê ghê chưa!  nào bạn hãy đọc ngay ở các phần bên dưới còn nhiều điều hay nữa! )
Khóa học Python cho người mới bắt đầu

Con Robot của NaSa trên mặt trăng

2) Trong xây dựng xe robot xây tự động 500 khối gạch mỗi giờ nguồn từ báo vnexpress.net

  • Công việc đồi hỏi phải hơn 3 – 4 chưa chắc xây được trong 1 ngày.
  • Đó các em thấy tầm quang trọng của của công nghệ phần mềm không nào?
  • Ban đầu có ý tưởng sau đó lập trình theo yêu cầu của công việc:
    • Khi các em lập trình theo nhu cầu của làm việc giống như giải một bài toán,
    • sau đó các em chép phần mình lập trình vào các con chíp,
    • Các con chíp nhớ đó sẽ điều khiển các thiết bị của các thiết bị như là: cần cẩu, quậy hồ, xây gạch, vân vân,…..
    • sau đó thành chiếc xe tự động xây dựng mà không cần nhiều sức người làm

3) Lập trình đang đi rất gần đến các học sinh Việt Nam:

4) Ứng dụng tạo ra các phần mềm để phục vụ cho công việc, giải trí, mua bán,…. vân vân

  • Ngôn ngữ lập trình Python giúp các bạn có thể tự do sáng tạo ra các chương trình như:
  • Làm các trang website như mình,quản lý sinh viên, quản lý kho hàng, kế toán, tính tiền lương của công ty,
  • Làm các trang website chuyên nghiệp như thương mại điện tử Shopee,Lazada,TiKi, các phần mềm Game như: Liên Minh Huyền Thoại, FiFa Online, Gta 5 … và nhiều chương trình hay khác nữa.
Lập trình Python cơ bản PDF

Lập trình Python tạo ra các phần mềm Game như Liên Minh Huyền Thoại

5) Ứng dụng trong công nghiệp, trong tự động hóa dây chuyền hàng hóa,…:

  • Ngoài ra ngôn ngữ lập trình Python còn lập trình các bước điều khiển ra để chép vào các con chip nhớ nó cho phép điều khiển các thiết bị điện tử hoạt động một cách tự động
  • Ví dụ như là làm loại robot phục vụ, dây chuyền tự động sản xuất sữa Vinamilk, tự động lựa chọn hàng hóa giao hàng như Shoppee, Lazada,tự động hóa trong công nghiệp chế tạo ô tô… và còn nhiều nhiều hơn thế nữa!
Học Python từ A đến Z

Lập trình python chế tạo các robot tự động tự lắp ráp các ô tô

Dây chuyền tự động hóa hàn khung vỏ ô tô tự động đã có ở Việt Nam, mà đặc biệt là do Việt Nam sản xuất!

  • Do đó ở tương lai ngôn ngữ lập trình Python rất cần so với đời sống hằng ngày của chúng ta. Mình nói lên đây để cho các bạn biết tầm quan trọng của lập trình Python là vô cùng lớn!
  • Vậy còn chờ gì nữa mà không ” Bay vô học liền “ ngôn ngữ lập trình Python anh em nhỉ?

Hãy hỏi đáp thắc mắc tại nhóm đam mê lập trình python Việt Nam !

cộng đồng python việt nam

cộng đồng python việt nam

 

Top ngôn ngữ lập trình có mức lương cao nhất thế giới?

  • Hiện tại Python là ngôn ngữ lập trình đời mới bởi vì ngôn ngữ lập trình Python dễ học hơn nhiều so với lập trình Pascal và lập trình C++
  • Cho nên ngôn ngữ lập trình Python đã và đang chiếm lĩnh mức lương cao hàng đầu thế giới.
  • Mặc dù Python là đứa con sinh sau đẻ muộn nhưng ngôn ngữ lập trình Python đang không ngừng phát triển đã và đang vực mặt các đàn anh ra đời trước đứng xếp thứ top 1 trên thế giới về sự lựa chọn.
Python từ cơ bản đến nâng cao PDF

Python là ngôn ngữ lập trình đang đứng top 1 thế giới năm 2023

  • Để nói lên Python đang là ngôn ngữ lập trình được các chuyên gia lựa chọn hàng đầu thế giới.
  • Mình sẽ cố gắng viết cho các bạn thật dễ hiểu nhất có thể nhé!
  • Vì đây là mình viết bằng ngôn ngữ bằng Tiếng Việt cho các bạn dễ hiểu.

Châu Á trong đó có Việt Nam đang chuyển mình hướng tới xã hội 5.0 là gì?

Thế mạnh đặc biệt của Python so với các ngôn ngữ lập trình khác là gì?

  1. Cú pháp rất trong sáng, dễ đọc, dễ hiểu và dễ thực hành các câu lệnh code dễ dàng.
  2. Chuyên lập trình hướng đối tượng rất hay là nguyên một chương trình lớn hàng triệu dòng lệnh nhưng đã được chia nhỏ ra thành từ hàm con (def ) để có thể dễ dàng chỉnh sửa một phần nhỏ mà không phải thể thay đổi cả một chương trình!
  3. Xử lý lỗi dựa theo ngoại lệ
  4. Kiểu dữ liệu động ở mức rất cao
  5. Các thư viện chuẩn và các mô-đun ngoài bao quát hầu như mọi việc: Desktop, Web, Mobile, IoT, …
  6. Machine learning (AI) lập trình máy học, lập trình trí tuệ nhân tạo.

Các phần mềm lập trình Python bao gồm:

  • PyCharm EDU là phần mềm lập trình dễ sử dụng nhất mà ở Việt Nam mình đang sử dụng trong thi cấp huyện và cấp tỉnh các bạn có thể tải phần mềm ở phần bên dưới! Tải đường dẫn tốc độ cao Google Driver ! Các bạn nào không biết có thể liên hệ mình ngay qua số điện thoại 093.717.9278 ( gặp Tấn Dân cử nhân công nghệ thông tin)
  • Phiên bản dành cho Windows 10 và Windows 11:

Tải bằng google driver

  • Phiên bản dành cho Windows 7:

Tải bằng google driver

 

  • Notepad
  • IDLE (Python…)
  • Eclipse
  • onlineGDB.com
  • Online-python.com
  • Thonny

Bài 1: các kiểu dữ liệu trong python là gì?

  • Kiểu int: Kiểu số nguyên
  •   Ví dụ: 123, -104
  • Kiểu float: Kiểu số thực
  •   Ví dụ: 5.2, -7.3
  • Kiểu str: Kiểu chuỗi, để trong nháy đôi hoặc nháy đơn
  •   Ví dụ: “Tin học”, ‘ABc’
  • Kiểu bool: Kiểu luận lý, để lưu True hoặc False
  •   Ví dụ 1: t1=True
  •   Ví dụ 2: t2=False

Bài 2: cách sử dụng biến trong python:

  • Trong Python một biến không cần khai báo kiểu dữ liệu,
  • khi ta gán giá trị thì tự động Python sẽ nội suy ra kiểu dữ liệu của biến. Như vậy một biến có thể có nhiều kiểu dữ liệu tùy thuộc vào giá trị mà ta gán.
  • Ví dụ như:
    • x=30
    • name = “Lê Tèo“
    • a = b = c = 1996
    • name, age, male = “Lê Tèo”, 22 , True
  • Các biến được cho dễ dàng như:
  • Ví dụ 1:
    • x=5
    • print(x+2)
  • Ví dụ 2:
    • x=Teo
    • print( +x)
  • Ví dụ 3:
    • x=True
    • print(x)
  • Ví dụ 4:
    • x=5.5
    • print(x+1)

Bài 3: cách nào để ghi chú lệnh trong Python?

  • Cách 1: Trong Python dùng dấu # để cho phép ta ghi chú 1 dòng:
Python từ cơ bản đến giải đề

Cách ghi chú trong python là dấu #

  • Cách 2: Để ghi chú nhiều dòng lệnh, ta dùng “”” “”” (3 cặp nháy đôi)  hoặc ”’ ”'(3 cặp nháy đơn)
Cách viết chương trình Python lớp 10

Cách ghi chú dòng lệnh trong python

Bài 4: cách nào để sử dụng toán tử thường dùng trong Python?

  • Trong ngôn ngữ lập trình python luôn sử dụng các toán tử ví dụ như: cộng, trừ, nhân, chia, chia lấy phần hết, chia lấy phần dư,… để nói lên tóm tắt cho dễ sử dụng trong quá trình lập trình
  1. Toán tử số học cơ bản trong python:

Lập trình Python la gì?

các loại toán tử số học trong python

2. Toán tử gán trong python:

Ngôn ngữ lập trình Python

Toán tử gán trong lập trình Python phần 1

Tài liệu học Python

Tài liệu học Python toán tử gán phần 2

3. Toán tử trong so sánh của python:

Toán tử Mô tả Ví dụ
== So sánh bằng 5 == 5 => kết quả True
!= So sánh không bằng 5 != 5  => kết quả False
< So sánh nhỏ hơn 5 < 5  => kết quả False
<= So sánh nhỏ hơn hoặc bằng 5 <= 5 => kết quả True
> So sánh lớn hơn 5 > 5.5 => kết quả False
>= So sánh lớn hơn hoặc bằng 113>= 5 => kết quả True
is Trả về true nếu các biến ở hai bên toán tử cùng trỏ tới một đối tượng(hoặc cùng giá trị), nếu không là false x=5
y=5
print(x is y)
=>kết quả là True
is not Trả về false nếu các biến ở hai bên toán tử cùng trỏ tới một đối tượng(hoặc cùng giá trị), nếu không là true x=5
y=5
print(x is not y)
=>kết quả là False

4. Toán tử logic trong python:

Toán tử Mô tả Ví dụ
 and Toán tử Và: Nếu cả hai điều kiện là True thì kết quả sẽ là True  x=2016
print(x%4==0 and x%100!=0)
=>True
 or Toán tử Hoặc: Chỉ cần một điều kiện True thì nó True, tất cả điều kiện False thì nó False x=2016
print((x%4==0 and x%100!=0) or x%400==0)
=>True
 not Toán tử Phủ định. Thông thường nó được dùng để đảo ngược trạng thái logic của toán hạng x=4

if (not x>=5):

print(“Hỏng”)
else:

print(“Đậu”) ==> Hỏng

Bài 5: cách nhập dữ liệu từ bàn phím vào python như thế nào?

1) Hàm input() nhập và xuất ra print():

  • Trong Python để nhập liệu từ bàn phím ta dùng hàm input().
  • Giá trị nhập vào của hàm input() thường là kiểu chuỗi, do đó ta cần chuyển kiểu nếu như muốn lưu trữ giá trị nhập vào không phải kiểu chuỗi.
    • print(“Nhập họ tên:”)
    • s=input()
      print(“Xin chào:”,s)

2) Hàm kiểu số nguyên int() và kiểu số thực float():

  1. Muốn đưa về số int

  • print(“Nhập vào một số nguyên:”)
    x=int(input())
    print(“x+2:”,x+2)

    2. Muốn đưa về số float

  • x=float(input(“Nhập vào một số thực:”))
    print(“x+3:”,x+3)

3. Nhập 1 số nguyên

  • print(“Nhập vào một số nguyên:”)
    x=int(input())
    print(“x+2:”,x+2)

4. Nhập 2 số nguyên trên 1 dòng

  • print(“Nhập vào hai số nguyên trên 1 dòng:”)
    x, y=map(int,input().split())
    print(“x+2:”,x+2)
  • print(“y*2:”,y*3)

Bài 6: cách xuất dữ liệu ra màn hình trong python là sao?

  1. Xuất ra nhiều nội dung cho nhiều biến:

  • Thông thường, hàm print(“Nội dung 1”, “nội dung 2”) sẽ in các chuỗi, biến bên trong cặp dấu ngoặc trên 1 dòng (giống như lệnh writeln trong pascal)
  • s=input(“Nhập họ tên:”)
    print(“Xin chào:”,s)
  • Nếu ta muốn in ra màn hình như lệnh write trong pascal thì thêm tham số end=“” ở  cuối.
    • Vd: print(“Xin chào:”, s, end=“”)
  • Lệnh print(‘a’*10) sẽ in 10 chữ a ra màn hình

2. Dùng lệnh sep=”” để xuất ra giá trị sát vô không khoảng cách:

  • Phân cách giữa các giá trị trong print()Vd:x,y,z=1,2,3print(x,y,z) # sau khi in ra có 1 khoảng cách là:  1  2  3x,y,z=1,2,3print(x,y,z, sep=“”) # sau khi in ra sát vô không có khoảng cách là: 123

3. Xuất ra có định dạng bao nhiêu số thập phân ( xuất ra số dư ):

  • Định dạng số thập phân
  • x=123.426
  • print(“%0.2f”%x) à 123.43  # nếu mình nhập số 2 thì ra 2 số dư
  • print(“%0.1f”%x) à 123.4  # nếu mình nhập số 1 thì ra 1 số dư

Bài 7: cách dùng câu lệnh if  ( nếu ) trong python như thế nào?

  • if ( điều kiện đúng hoặc sai):
    • chạy tiếp điều kiện đúng theo yêu cầu của bài

Chú ý: nếu điều kiện đúng sẽ chạy thực thi lệnh câu trong if, còn nếu điều kiện sai sẽ không chạy

Ví dụ 1:

Web học Python tiếng Việt

Web học Python tiếng Việt

  • dòng 1 nhập điểm trung bình kiểu số thực:
  • dòng 2 nếu điểm trung bình lớn hơn bằng 5
    • nếu điều kiện đúng thì in ra:
      • Bạn đã đậu!
      • Hú hồn!
    • nếu điều kiện sai ( ví dụ: dtb mình nhập là 3) sẽ không làm 2 câu lệnh bên dưới.

Ví dụ 2:

  1. x = int(input(“Nhập một số: “))
  2. if x> 0:
  3.     print(x, “là số dương.”)
  4. print(“Cám ơn bạn đã sử dụng app!”)

Bài 8: dùng câu lệnh if else ( nếu thì ) trong python cách nào?

  • dtb=float(input(“Nhập điểm trung bình:”))
  • if dtb>=5:
    • print(“Bạn đã Đậu”)
    • print(“Hú hồn!”)
  • else:
    • print(“Chúc bạn may mắn lần sau”)
    • print(“Đi phụ hồ nhé!”)
    • print(“Hẹn gặp lại!”)
  • Giải thích:   nếu ta nhập điểm trung bình >=5 thì in 2 câu lệnh “bạn đã đậu ” và ” Hú hồn!” còn ngược lại <5 thì in 3 câu lệnh bên dưới.

Bài 9: dùng câu lệnh if else lòng nhau trong python cách nào?

  • num = float(input(“Nhập một số: “))
  • if num >= 0:
    • if num == 0:
      • print(“Số Không”)
    • else:
      • print(“Số dương”)
  • else:
    • print(“Số âm”)
  • Giải thích:  nhập một số vô, nếu số đó >=0 thì chạy câu lệnh đúng trong if là nếu số =0 thì in ra ” Số Không” còn ngược lại in ra ” Số dương”. Còn ngược lại nếu số <0 thì in ra “Số âm”.

Bài 10: cách dùng if – elif (nếu – ngược lại ) trong python làm thế nào?

  • dtb=float(input(“Nhập điểm trung bình:”))
  • if dtb>=8:
    • print(“Bạn đạt loại Giỏi”)
  • elif dtb>=6.5:
    • print(“Bạn đạt loại Khá”)
  • elif dtb>=5:
    • print(“Bạn đạt loại Trung bình”)
    • print(“Hú hồn!”)
  • else:
    • print(“Cố gắng ở lần sau nhé!”)
  • Giải thích: nhập điểm trung bình kiểu số thực, nếu điểm trung bình >=8 thì in ” Bạn đạt loại Giỏi”, nếu dtb>=6.5 thì in ra ““Bạn đạt loại Khá”, nếu dtb>=5 thì in ra “Bạn đạt loại Trung bình” “Hú hồn!”, ngược lại tất cả các ý trên thì in ra “Cố gắng ở lần sau nhé!”

Bài 11: Câu lệnh lặp for… range ra sao?

1) Câu lệnh lặp for và cú pháp hàm range:

  • Hàm for sử dụng range để định nghĩa vùng dữ liệu lặp và bước lặp
  • Cú pháp hàm range(giá trị bắt đầu, giá trị kết thúc, bước chạy)
  • Ví dụ 1: cách hoạt động của range:
    • range(10)  0; 1; 2; 3; 4; 5; 6; 7; 8; 9
    • range(1, 10)  1; 2; 3; 4; 5; 6; 7; 8; 9
    • range(1, 10, 2)  1; 3; 5; 7; 9
    • range(10, 0, -1)  10; 9; 8; 7; 6; 5; 4; 3; 2; 1
    • range(10, 0, -2)  10; 8; 6; 4; 2
    • range(2, 11, 2)  2; 4; 6; 8; 10
  • Ví dụ 2: Cách thức chạy của hàm for… range:
    • for n in range(10):
      •     print(n)     –> 0 1 2 3 4 5 6 7 8 9
    • for n in range(1,10):
      •     print(n)    –> 1 2 3 4 5 6 7 8 9
    • for n in range(1,10,2):
      •     print(n)    –>1 3 5 7 9
    • for n in range(10,0,-1):
      •     print(n)    –> 10 9 8 7 6 5 4 3 2 1
    • for n in range(10,0,-2):
      •     print(n)    –> 10 8 6 4 2
    • for n in range(2,11,2):
      •     print(n)    –> 2 4 6 8 10
  • Ví dụ 3:  Tính tổng các 2 số từ m đến n
m,n=map(int,input().split())
tong=0
for i in range(m,n+1):
    tong+=i
print('tổng=',tong)

Bài 12: Cách dùng câu lệnh while (trong khi) làm sao?

  • Cú pháp cách dùng hàm while:
    • while (điều kiện của bài):
      • Chạy tiếp tục  khi đúng điều kiện của bài
  • Ta có thể kết thúc vòng while bằng cách đưa đưa điều kiện về sai hoặc dùng lệnh break để thoát
  • Ví dụ : câu lệnh lặp while
  • Viết chương trình yêu cầu nhập vào một số nguyên dương [1..10], nếu nhập sai yêu cầu nhập lại. Khi nhập đúng thì xuất ra bình phương của giá trị mới nhập vào.
  • Cách làm 1:
x=0
while x<1 or x>10:
       x=int(input("Nhập một số nguyên x từ 1 đến 10"))
print(pow(x,2))
  • Cách làm 2:

 

x=0
while not (1<=x<=10):
    x=int(input("Nhập một số nguyên x từ 1 đến 10"))
print(x**2)

Ví dụ: 3 tổng các số từ 1 đến số thứ n

 

n=int(input())
s=0
i=1
while i<=n:
    s+=i
    i+=1
print('tổng=',s)

Bài 13: Hàm sử dụng câu lệnh break (phá vỡ) là gì?

  • Hàm break là lệnh đặc biệt dùng để thoát khỏi vòng lặp trực tiếp chứa nó khi đạt được mức yêu cầu nào đó.
  • Gặp lệnh break, chương trình sẽ không thực hiện bất cứ lệnh nào bên dưới nó, mà thoát luôn khỏi vòng lặp.
  • Ví dụ: Viết chương trình vòng lặp vĩnh cửu cho phép phần mềm chạy liên tục, khi nào hỏi thoát mới thoát phần mềm:

 

while True:
    a=int(input('nhập giá trị:'))
    print('Giá trị a bạn nhập là=',a)
    s=input('Muốn tiếp tục phần mềm không? nếu nhấn k thoát, nhấn t tiếp tục=')
    if s=='k':
        break
print('hẹn gặp lại nhé!')

Bài 14: Cách dùng câu lệnh continue (tiếp tục) như thế nào?

  • Câu lệnh continue là từ khóa đặc biệt dùng để nhảy sớm tới lần lặp kế tiếp,
  • Các lệnh bên dưới continue sẽ không được thực thi.
  • Lưu ý khác với break, gặp break thì ngừng luôn vòng lặp,
  • Gặp continue chỉ dừng lần lặp hiện tại đang dở dang để chuyển qua lần lặp tiếp theo.
  • dụ: Tính tổng các số lẻ từ 1->15, ngoại trừ số 3 và số 11

 

tong=0
for i in range(1,16,2):
    if i is 3 or i is 11:
        continue
    tong+=i
print(tong)

Bài 15: Cách dùng vòng lặp for và else (ngược lại) ra sao?

  • khi ta chạy vòng lặp for , nếu không có điều kiện trong vòng lặp for thì ta dùng else ( ngược lại )
  • Ví dụ: Cho dãy số nguyên, nhập thêm số nguyên x. Tìm xem trong dãy số đã cho có x hay không?

 

a=[2,5,1,3,4]
x=int(input("Nhập số cần tìm"))
for i in range(len(a)):
    if x ==a[i]:
        print ("Có ", x, " ở vị trí ",i)
        break
else:
    print ("Không tìm thấy")

Bài 16: Cách dùng câu lệnh while ( trong khi) và else ( ngược lại) như thế nào?

  • Ví dụ: Nhập số nguyên x. Kiểm tra xem x có phải là số nguyên tố không ?

 

x=int(input("Nhập số nguyên"))
i=2
while i<x:
    if x%i==0:
        break
    i+=1
else:
    print(x, " là số nguyên tố")
if i<x:
    print(x, " Không là số nguyên tố")

Bài 17: Cách sử dụng list ( mảng ) trong python như thế nào?

1)Ta có 4 loại kiểu dữ liệu thường dùng:

  • Hàm list( mảng ) trong Python không giới hạn bao nhiêu phần tử.
  • Hàm list có thể chứa bất kỳ kiểu dữ liệu nào.
    1. khai báo mảng rỗng:
      • a=[]
    2. Khai báo mảng có các giá trị:
      • a=[2,-3,0,5,1]
    3. Khai báo mảng có 10 phần tử với giá trị  mặc định là 2:
      • a=[2]*10 ( thì trong mảng a có 10 phần tử số 2)
    4. Khai báo mảng có 5 phần tử có giá trị mặc định là k:
      • a=[‘k’]*5 ( thì trong mảng a có chữ k)

2)Cách truy cập các phần tử trong mảng a[index]:

  • Ví dụ: a=[2,-3,0,4,-1]
    • print(a[0]) (sẽ in ra số 2)
    • print(a[3]) (sẽ in ra số 4)

3) Cách thay đổi giá trị của một phần tử trong mảng a[vị trí]=số:

  • Ví dụ: a=[2,-3,0,4,-1]
    • a[2]=5 ( thì mảng a lúc này trở thành a=[2,-3,5,4,-1]

4) Cách lấy tổng số phần tử của mảng a ta dùng hàm len(a)

  • Ví dụ mảng a=[2,-3,0,4,-1,9]
    • print(len(a)) ( thì tổng các phần tử của mảng a  là 6)

5) Cách kiểm tra 1 giá trị nào đó có tồn tại trong mảng a hay không?

  • Ví dụ: tìm phần tử x có trong mảng a hay không? Nếu có thì in ra vị trí, nếu không có thì in ” không tồn tại x trong mảng a”

 

a = ["apple","banana","cherry"]
if "apple" in a:
   print("Yes, 'apple' is in the fruits a")
a = [1,5,4, 7, 6]
x=7
if x in a:
   print('Co', x, 'o vi tri',a.index(x))
else:
   print('Khong ton tai x trong mang a')

6) Cách dùng hàm insert ( chèn thêm )  trong mảng a.

  • Muốn chèn thêm một giá trị mới vào vị trí thích hợp ta sử dụng cú pháp
  • insert(vị trí muốn chèn, giá trị muốn chèn):
  • Ví dụ:
    • a=[1,2,3]
      • print(a)  ( mảng a đang có các giá trị [1,2,3] )
    • a.insert(2,9)  ( chèn thêm giá trị số 9 ở vị trí thứ 2)
      • print(a)  ( mảng a bây giờ sẽ trở thành [1,2,9,3] )
    • a.insert(0,17)
      • print(a)  (vậy mảng a trở thành [17,1,2,9,3])

7) Cách sử dụng phương thức append ( nối thêm)  trong mảng a

  • Nghĩa là ta thêm giá trị mới ở cuối danh sách:
  • Ví dụ:
    • a=[1,2,3]
    • a.append(-113)
    • print(a)  ( thì trong mảng a trở thành [1,2,3,-113])

8) Cách sử dụng phương thức pop trong mảng a

  • Nghĩa là xóa giá trị có trong thứ tự index trong danh sách
  • Ví dụ:
    • a=[1,3,2,5]
    • a.pop(1)
    • print(a)  ( mảng a giờ trở thành [1,2,5])

9) Cách sử dụng phương thức remove( xóa giá trị ) trong mảng:

  • Nghĩa là remove( xóa ) giá trị trong danh sách
  • Ví dụ:
    • a=[1,3,2,5,7]
    • a.remove(5)
    • print(a) ( thì mảng a giờ trở thành [1,3,2,7])

10) Cách chạy trong mảng:

 

print("*"*20)
a=[5,7,2,9,6,3,10,17,16]
for x in a:
    print(x,end=' ')
print()
print('*'*20)
for i in range(len(a)):
    x=a[i]
    print(x,end=' ')
print()
print('*'*20)
for i in range(len(a)-1,-1,-1):
    x=a[i]
    print(x,end=' ')
********************
5 7 2 9 6 3 10 17 16 
********************
5 7 2 9 6 3 10 17 16 
********************
16 17 10 3 6 9 2 7 5

Bài 18:  cách sử dụng chuỗi trong python như thế nào?

 

  • Ví dụ:
    • s1=’Tin học’
    • s2=””” Chào mừng các bạn
        • đến với môn học
      • Lập trình Python hay và làm cho mình thông minh hơn”””

1 ) Cách truy cập từng giá trị trong chuỗi ví dụ:

truy cập vị trí của các phần tử trong chuỗi

truy cập vị trí của các phần tử trong chuỗi

  • print(s[2]) ( sẽ in ra chữ n)
  • print(s[-2]) ( sẽ in ra chữ o)

2 ) Cách dùng hàm len để biết có bao nhiêu ký tự trong chuỗi:

  • Ví dụ:
    • s=”Tin hoc”
    • print(len(s)) (trong chuỗi s có 7 phần tử )

3) Cách tìm vị trí chuỗi s1 trong chuỗi s2:

  • Hàm find trả về vị trí đầu tiên tìm thấy.
  • hàm rfind trả về vị trí cuối cùng tìm thấy.
  • Nếu không thấy sẽ trả về -1
  • Ví dụ:

 

s='hello hello hello'
x1=s.find('o')
print(x1)
x2=s.rfind('o')
print(x2)
x3=s.find('x')
print(x3)
4
16
-1

4) Cách tách chuỗi con trong python :

  • x = Hello World!“
  •      01234567891011
  • print(x[2:]) llo World!
  • print(x[:2]) He
  • print(x[:-2]) Hello Worl
  • print(x[-2:]) d!
  • print(x[2:-2]) llo Worl
  • print(x[6:11]) World
  • x[begin:end]

5) Cách nối chuỗi con trong Python:

  • x = “Hello World!“
  • y = “123!“
  • x =x+y à “Hello World!123“
  • Tách chuỗi thành mảng
  • Hàm split dùng để tách chuỗi thành mảng các chuỗi con

6) Cách tách chuỗi vào trong mảng:

  • Ví dụ: Cho một chuỗi ta tách chuỗi thành mảng
s='sv007;Đèo Thị Đẹt;1/1/1999'
a=s.split(';')
for i in a:
    print(i)
  • Kết quả in ra trở thành:
sv007
Đèo Thị Đẹt
1/1/1999

7) Cách duyệt chuỗi trong python:

  • Có 3 cách duyệt chuỗi thường dùng nhen các bạn!
x = "Hello World!"
for i in x:
print(i,end='')
print()
for i in range(len(x)):
print(x[i],end='')
print()
for i in range(0,len(x)):
print(x[i],end='')
  • kết quả trở thành:
Hello World!
Hello World!
Hello World!

8) Cách chuyển chuỗi sang list và ngược lại:

  • x = “Hello World!”
  • a=list(x)
  • print(a) ( Chương trình in ra là  [‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ‘ ‘, ‘W’, ‘o’, ‘r’, ‘l’, ‘d’, ‘!’] )
  • b=””.join(a)
  • print(b) ( chương trình in ra Hello World!)

Bài 19: Cách sử dụng hàm con trong python (lập trình hướng đối tượng)

  • Viết chương trình hàm con tổng cộng các số nguyên từ số m đến số n
def tongcong(m,n):
    tong=0
    for i in range(m,n+1):
        tong+=i
    return tong
m,n=map(int,input().split())
tong=tongcong(m,n)
print(tong)
  • Kết quả ra là:
5 8
26

 Bài 20: Cách sử dụng nhập từ tập tin têntậptin.inp và xuất từ tập tin têntậptin.out

 

import sys
fo="0000.out"
sys.stdin=open(“Tênfile.inp","r")
sys.stdout=open(“Tênfile.out","w")
....
sys.stdin.close()
sys.stdout.close()

Bài 21: bắt lỗi try trong python bằng cách nào?

  • Ví dụ: Nhập vào một số nguyên nếu không đúng số nguyên thì nhập lại ( nhập khi nào đúng số nguyên mới được nếu không thôi chương trình kêu nhập hoài tới cháy máy tính mới ngưng)
while True:
try:
x = int(input('Nhập một số nguyên: '))
break
except ValueError:
print(" Đó không phải số nguyên. Làm lại...")

Kết quả:

Nhập một số nguyên: 5.6
 Đó không phải số nguyên.  Làm lại...
Nhập một số nguyên: 5

Vậy là xong 21 bài viết mỏi cả 2 tay quá rồi ! các anh em nào muốn học Python online nhớ “LIÊN HỆ MÌNH NGAY ” 0937.179.278 (gặp Tấn Dân ) ủng hộ mình nhé !

Tải Ngay Giáo trình tài liệu tự học Python tiếng việt từ cơ bản đến nâng cao tập tin PDF :

  • Các bạn có thể tải ngay giáo trình tài liệu tự học Python bằng tiếng việt để các bạn có thể tự học tại nhà tập tin PDF
Tải bằng google driver

Tài liệu Python PDF

  • Hoặc bạn cũng có thể sử dụng tập tin PowerPoint cho dễ xem nhé !
Tải bằng google driver

Tài liệu Python PowerPoint

  • Nếu có vấn đề gì không hiểu hãy liên hệ ngay mình, mình sẽ hướng dẫn tận tình cho bạn nhé!

Miễn phí 10% khóa học online “Hãy đăng ký ngay !” còn lại chỉ 3 bạn

  • 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 chuyên bồi dưỡng môn tin học thi học sinh giỏi cấp huyện và cấp tỉ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

Trung tâm tin học Tấn Dân

 

  • 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