Thẻ: De thi HSG Python

100 đề và đáp án thi HSG Tin Python mới nhất năm 2024

Thầy mến chào các em yêu thích môn tin học mà đặc biệt là các em yêu thích môn lập trình Python. Để chuẩn bị tốt cho kỳ thi học sinh giỏi cấp huyện, cấp tỉnh hoặc thi vào các trường Chuyên Tin vào lớp 10. Thầy sẽ làm tới 100 đề và đáp án thi HSG Tin Python mới nhất năm 2024 để các em có thể tham khảo và tập làm quen với các dạng đề để chuẩn bị thi cho tốt! Thầy chúc các em đạt được kết quả cao nhất trong kỳ thi sắp tới nhé !

Đây đã là đề thi số 5 đề và đáp án thi HSG Tin Python cấp huyện và cấp tỉnh

  • 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 

Nguồn: 300bàicode.vn

Đề 5 và đáp án thi HSG Tin Python cấp huyện:

Thứ tự Tên bài File

chương

trình

File dữ liệu

vào

File kết quả
Bài 1 Phân loại “ Buổi ” trong ngày D051* D051.INP D051.OUT
Bài 2 Tính trung bình cộng những số nguyên chia hết cho 2 hoặc 3 từ m đến n D052.* D052.INP D052.OUT
Bài 3 Tìm số nhỏ nhất trong mảng và vị trí D053.* D053.INP D053.OUT
Bài 4 In các từ viết thường trong xâu D054.* D054.INP D054.OUT
Bài 5 Kiểm tra xem số nguyên n có trong dãy số Pell D055.* D055.INP D055.OUT
Dấu * được thay thế bởi PY, CPP của ngôn ngữ lập trình được sử dụng  chương trình tương ứng là Python hoặc C++

 

Bài 1: (4 điểm) Phân loại ” Buổi ” trong ngày

  • Diễn Giải: 
    1. Buổi khuya: Từ 0 giờ đến trước 5 giờ
    2. Buổi sáng: Từ 5 giờ đến trước 11 giờ.
    3. Buổi trưa: Từ 11 giờ đến trước 13 giờ.
    4. Chính ngọ: 12 giờ.
    5. Buổi chiều: Từ 13 giờ đến 18 giờ
    6. Buổi tối: Từ sau 18 giờ đến trước 0 giờ.
  • Input: Số nguyên n cho biết giờ hiện tại (0<=n<24)
  • Output: “ Buổi ” theo mô tả trên
  • Ví dụ: 
Input Output
7 Buoi sang
12 Chinh ngo

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

  • Diễn Giải:
    • Nhập vào hai số nguyên m và n (m<=n).
    • Có bao nhiêu số chia hết cho 7 từ m đến n;
    • tính trung bình cộng các số nguyên chia hết cho 2 hoặc 3 từ m đến n.
  • Input: Hai số nguyên dương m và n (0<m, n<106), mỗi số trên một dòng.
  • Output:
    • Số thứ nhất là số lượng các số chia hết cho 7 từ m đến n, dấu cách,
    • số thứ 2 là trung bình cộng các số nguyên chia hết cho 2 hoặc 3 từ m đến n (làm tròn đến một chữ số thập phân),
    • Nếu không có số nào chia hết cho 2 hoặc 3 thi in “0.0”.
  • Ví dụ:
Input Output
4

15

2 9.8
2

11

1 6.0

Bài 3: (4 điểm) Tìm số nhỏ nhất trong mảng và vị trí

  • 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ố nhỏ nhất trong mảng a và vị trí của số nhỏ nhất đó
  • Input: Dòng một là số nguyên n (0<n<10A), n dòng tiếp theo là n số nguyên có giá trị tuyệt đối không vượt quá 105.
  • Output: Dòng một là số nhỏ nhất, dòng hai là vị trí của số nhỏ nhất trong mảng
  • Ví dụ:
Input Output
7 -2
9 6
6
3
8
10
7
2
5 0
20 4
7
6
8
0

Bài 4: (4 điểm) In các từ viết thường trong xâu

  • Diễn giải:
    • Nhập vào một xâu s. In các từ viết thường trong xâu
  • 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 thường 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
  • Ví dụ:
Input Output
Toi hoc LAp TRINH C++ tu nam 2024 hoc tu nam
Thi HOC SINH GIOI mon Tin Hoc mon

Bài 5: (4 điểm) Kiểm tra xem số nguyên n có trong dãy số Pell

  • Diễn giải:
    • Nhập vào số nguyên dương n. Kiểm tra xem số nguyên n có trong dãy số Pell không?
    • Dãy số Pell là một dãy số vô hạn, trong đó mỗi số trong dãy được tính theo công thức: Pn*2‘Pn—1+Pn—2 với P0=0 và P1=1
    • Dậy số Pell: 0, 1,2, 5, 12, 29, 70, 169, 408, 985,…
    • Số 0 là số Pell thứ 0
  • Input: Một số nguyên n (0<=n<109)
  • Output: Nếu n là số Pell thì dòng một in “Yes”, dòng 2 in vị trí của số n trong dãy so Pell; ngược lại in “No”
  • Ví Dụ:
Input Output
12 Yes
4
7 No

Đáp án bài 1:  Phân loại ” Buổi ” trong ngày

 

import sys
sys.stdin=open('D051.INP','r')
sys.stdout=open('D051.OUT','w')
n=int(input())
if 0<=n<5:
    print('Buoi khuya')
elif 5<=n<11:
    print('Buoi sang')
elif 11<=n<13 and n!=12:
    print('Buoi trua')
elif n==12:
    print('Chinh ngo')
elif 13<=n<=18:
    print('Buoi chieu')
elif 18<n<24:
    print('Buoi toi')

 

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

 

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

 

Đáp án bài 3:  Tìm số nhỏ nhất trong mảng và vị trí

 

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

 

Đáp án bài 4:  In các từ viết thường trong xâu

 

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.islower():
        print(i,end=' ')

 

Đáp án bài 5:  Kiểm tra xem số nguyên n có trong dãy số Pell

import sys
sys.stdin=open('D055.INP','r')
sys.stdout=open('D055.OUT','w')
def Pell(n):
    pell1=[0,1]
    while pell1[-1]<=n:
        pell2=2*pell1[-1]+pell1[-2]
        pell1.append(pell2)
    return pell1
n=int(input())
a=Pell(n)
if n in a:
    print('Yes')
    print(a.index(n))
else:
    print('No')

 

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 !