Đề thi học sinh giỏi Tin Học THCS và THPT có đáp án giải đề 4
khóa học online giải đề 4 thi học sinh giỏi tin học THCS
5/5 - (2 bình chọn)
Thầy rất vui được gặp lại các em đam mê lập trình python nhé! Đây là đã qua đề 4 trong 20 Đề thi học sinh giỏi Tin Học THCS và THPT có đáp án kèm theo cho các em thuận tiện cho việc học ôn thi để các em chuẩn bị thi học sinh giỏi Tin Học cấp huyện sắp tới! Thầy chúc các em đạt điểm cao và đạt được thành tích tốt nhé!
Các em có thể xem lạ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é!
Tính trung bình cộng những số nguyên chẵn từ m đến n
D042*
D042.1NP
D042.OUT
Bài 3
Tính trung bình cộng các số không chia hết cho 3 trong mảng
D043 *
D043.1NP
D043.OUT
Bài 4
In các từ có chiều dài là số nguyên tố trong xâu s
D044.*
D044.INP
D044.OUT
Bài 5
In số Harshad thứ n
D045 *
D045.INP
D045.OUT
Bài 1: (4 điểm) Tính cấp độ bão
Diễn Giải : Nhập vào tốc độ gió (đơn vị km/h) của một cơn 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 cấp nào sau đây:
Nếu tốc độ gió trung bình dưới 89: Không phải bão
Nếu tốc độ gió trung bình từ 89 đến dưới 102: cấp 10
Nếu tốc độ gió trung bình từ 102 đến dưới 117: cấp 11
Nếu tốc độ gió trung bình từ 117 đến dưới 133: cấp 12
Nếu tốc độ gió trung bình từ 133 đến dưới 149: cấp 13
Nếu tốc độ gió trung bình lừ 149 đến dưới 166: cấp 14
Nếu tốc độ gió trung bình từ 166 đến dưới 183: cấp 15
Nếu tốc độ gió trung bình trên 183: Siêu bão
Input: Nhập vào 3 số nguyên a, b, c; mỗi số một dòng cho biết tốc độ gió của ở 3 địa điểm khác nhau (0<a, b, c<500).
Output: Hai dòng:
Dòng 1: Tốc độ gió trung bình (một chữ số thập phân)
Dòng 2: cấp bão
Ví dụ về input và output:
Input
Output
100
111.3
120
Cap 11
114
130
95.0
70
Cap 10
Bài 2: (4 điểm) Tính trung bình cộng những số nguyên chẵn từ m đến n
Diễn giải: Nhập vào hai số nguyên m và n (m<=n). Tính trung bình cộng các số nguyên chẵn từ m đcn n.
Input: Hai số nguycn dương m và n (0<m, n<106), mồi số trcn một dỏng.
Output: Là trung bình cộng các số nguyên chẵn từ m đến n, làm tròn đến một chữ số thập phân. Nếu không có số chẵn nào từ m đến n thì in “0.0”
Ví dụ:
Input
Output
11
15
13.0
2
13
7.0
Bài 3: (4 điểm) Tính trung bình cộng các số không chia hết cho 3 trong mảng
Diễn giải: Nhập vào một mảng a có n số nguyên: ao, ai, a2,an-i, tính trung bình cộng các số không chia hết cho 3 trong mảng
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: Trung bình cộng các số không chia hết cho 3 trong mảng, làm tròn đến ba chữ số thập phân. Nếu không có số nào thỏa điều kiện thì in “0.000”
Ví Dụ:
Input
Output
7
9
6
3
8
10
7
-2
5.750
5
20
7
6
8
0
11.667
Bài 4: (4 điểm) In các từ có chiều dài là số nguyên tố trong xâu s
Diễn giải: Nhập vào một xâu s. In các từ có chiều dài là số nguyên tố 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ừ có chiều dài là số nguyên tố trong xâu theo thứ tự xuất hiện, các từ 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 2023
Toi hoc LAP TRINH C++ tu nam
Thi HOC SINH GIOI mon Tin Hoc
Thi HOC mon Tin Hoc
Bài 5: (4 điểm) In sổ Harshad thứ n
Diễn Giải:
Nhập vào số nguyên dương n. In số Harshad thứ n
Số Harshad là một số tự nhiên n mà n chia hết cho tổng các chữ số của nó
Ví dụ:
n=18; tổng các chữ số của 18 là 1+8=9 và 18 chia hết cho 9 n=24; tổng các chữ số của 24 là 2+4=6 và 24 chia hết cho 6 Dãy số Harshad: 1, 2, 3,4, 5, 6, 7, 8, 9, 10, 12, 18, 20, 21, 24,27,…
Đáp án bài 2: Tính trung bình cộng những số nguyên chẵn từ m đến n
import sys
sys.stdin=open('D042.INP','r')
sys.stdout=open('D042.OUT','w')
m=int(input())
n=int(input())
tong=0
dem=0
tbc=0
for i in range(m,n+1):
if i%2==0:
tong+=i
dem+=1
if dem>0:
tbc=tong/dem
print('%0.1f'%tbc)
Đáp án bài 3: Tính trung bình cộng các số không chia hết cho 3 trong mảng
import sys
sys.stdin=open('D043.INP','r')
sys.stdout=open('D043.OUT','w')
n=int(input())
a=[]
while True:
try:
line=input()
try:
x=int(line)
a.append(x)
except ValueError:
break
except EOFError:
break
dem=0
tong=0
tbc=0
for i in range(len(a)):
if a[i]%3!=0:
dem+=1
tong+=a[i]
if dem>0:
tbc=tong/dem
print('%0.3f'%tbc)
else:
print('0.000')
Đáp án bài 4: In các từ có chiều dài là số nguyên tố trong xâu s
import sys
sys.stdin=open('D044.INP','r')
sys.stdout=open('D044.OUT','w')
def ktnt(n):
i=2
while i*i<=n and n%i!=0:
i+=1
return i*i>n and n>1
s=input()
dem=0
i=0
a=[]
while dem<len(s):
if ktnt(i):
dem+=1
a.append(i)
i+=1
s=s.split()
for i in s:
for j in range(len(a)):
if len(i)==a[j]:
print(i,end=' ')
Đáp án bài 5: In sổ Harshad thứ n
import sys
sys.stdin=open('D045.INP','r')
sys.stdout=open('D045.OUT','w')
def Harshad(n):
a=str(n)
tong=0
for i in range(len(a)):
tong+=int(a[i])
if n%tong==0:
return True
else:
return False
n=int(input())
a=[]
dem=0
i=1
while dem<=n:
if Harshad(i):
dem+=1
a.append(i)
i+=1
print(a[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é !
Mình rất đam mê về máy vi tính và máy in. Và mình đã đeo đuổi ước mơ và làm việc về máy vi tính mới đây mà đã 15 năm. Mình thích chia sẻ mọi kiến thức và kinh nghiệm mà mình có được cho tất cả các bạn ! Trong khi mình viết nếu có điều gì thiếu sót mong các bạn thông cảm cho mình nhé ! Mình Cám ơn trước !
View Comments